[clue-tech] Re: regex smarties - what am I doing wrong?

mike havlicek mhavlicek1 at yahoo.com
Wed Sep 3 14:45:42 MDT 2008




--- On Wed, 9/3/08, David L. Willson <DLWillson at TheGeek.NU> wrote:

> From: David L. Willson <DLWillson at TheGeek.NU>
> Subject: Re: [clue-tech] Re: regex smarties - what am I doing wrong?
> To: "CLUE tech" <clue-tech at cluedenver.org>
> Date: Wednesday, September 3, 2008, 12:34 PM
> I'm OK with what grep was doing.  I wasn't able to
> get sed to do what I wanted.  In
> short, find an IP address anywhere in a line and output it.
>  I was trying to use
> pattern-storage and recall pattern 1, and it wasn't
> working.  I can recall pattern 0
> (the whole line), but something in my storing and recall of
> pattern 1 wasn't right.
> 
> Your awk example will work, but I think it depends on the
> IP address appearing first in
> the line.  What if the file to search doesn't obey a
> hosts schema, and the IP appears
> after the hostname, rather than before?
> 
> On Wed, 03 Sep 2008 12:19:52 -0600, David Rudder wrote
> > Grep will print the whole line. You can see the
> pattern matched, because 
> > grep colorizes the match.
> > 
> > Try using awk instead. I simplified the Regexp, since
> awk was choking on 
> > it. This seems to work:
> > grep newwave hosts | awk
> '/[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+\./
> 
> > {print $1}'
> > 
> > This will also match some invalid IP addresses, like
> those with 4 digits 
> > numbers. A better awk person than I can probably fix
> this up.
> > 
> > -Dave
> > 
> > clue-tech-request at cluedenver.org wrote:
> > > Message: 6
> > > Date: Wed, 3 Sep 2008 10:16:56 -0600
> > > From: "David L. Willson"
> <DLWillson at TheGeek.NU>
> > > Subject: [clue-tech] regex smarties - what am I
> doing wrong?
> > > To: CLUE tech <clue-tech at cluedenver.org>
> > > Message-ID:
> <20080903161413.M5097 at TheGeek.NU>
> > > Content-Type: text/plain;	charset=utf-8
> > >
> > > I'm trying to capture and return only the IP
> address from a line of text.  I can match
> > > it, but something's wrong with the way
> I'm trying to capture it.  Any thoughts?
> > >
> > > dlwillson at aurora:~
> > > $ grep newwave hosts | grep -E --color
> '([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}'
> > > 69.88.86.210 newwaveenviro
> > >
> > > ^ That line does successfully color the IP
> address.
> > >
> > > dlwillson at aurora:~
> > > $ grep newwave hosts | sed -e
> 's/(([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3})/\1/p'
> > > sed: -e expression #1, char 48: invalid reference
> \1 on `s' command's RHS
> > > dlwillson at aurora:~
> > > $ grep newwave hosts | sed -e
> 's/(([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3})/\0/p'
> > > 69.88.86.210 newwaveenviro
> > > dlwillson at aurora:~
> > > $ grep newwave hosts | sed -e
> 's/(([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3})/\1/p'
> > > sed: -e expression #1, char 48: invalid reference
> \1 on `s' command's RHS
> > > dlwillson at aurora:~
> > >
> > > Huh...
> > >
> > > -- David
> > >
> > >
> > >
> > > ------------------------------
> > >
> > > _______________________________________________
> > > clue-tech mailing list
> > > clue-tech at cluedenver.org
> > >
> http://www.cluedenver.org/mailman/listinfo/clue-tech
> > >
> > > End of clue-tech Digest, Vol 30, Issue 3
> > > ****************************************
> > >
> > 
> > _______________________________________________
> > clue-tech mailing list
> > clue-tech at cluedenver.org
> > http://www.cluedenver.org/mailman/listinfo/clue-tech
> 
> 
> -- David
> 
> _______________________________________________
> clue-tech mailing list
> clue-tech at cluedenver.org
> http://www.cluedenver.org/mailman/listinfo/clue-tech

Does escaping the open and closed parenths help?


      


More information about the clue-tech mailing list