Regular Expression Trouble
Jonathan McKeown
jonathan at hst.org.za
Wed Aug 27 13:42:40 UTC 2008
On Wednesday 27 August 2008 15:25:02 Martin McCormick wrote:
> The sed pattern matching system is interesting because I
> can think of several similar situations in which the data are
> there but there is no guarantee where on a given line it sits
> and grep or sed usually will pull in the whole line containing
> the desired data which means that one must further parse things
> to get what is wanted.
Hi Martin
Look at grep -o which only outputs the bit that matched the regexp. Using
egrep, you can look for exactly two hex digits and a colon, repeated exactly
five times, and followed by exactly two hex digits:
egrep -o '([[:xdigit:]]{2}:){5}[[:xdigit:]]{2}' inputfile
will parse inputfile and output all the MAC addresses it finds, one per line
(if it finds more than one on an input line, it'll match them and print them
on separate output lines), and nothing else.
Jonathan
More information about the freebsd-questions
mailing list