bin/166842: bsdgrep(1) inconsistently handles ^ in non-anchoring
positions
Jim Pryor
dubiousjim at gmail.com
Thu Apr 12 15:37:05 UTC 2012
On Thu, Apr 12, 2012, at 11:14 AM, John D. Hendrickson and Sara Darnell
wrote:
> Your problem is incorrect so there is no sol'n.
>
> printf 'abc def' | grep -o '^[a-z]'
>
> is only supposed to match against abc.
>
> see grep(1) about pattern matching - there is plenty of online writeups,
> esp posix ieee std. see
> also "ant / antlr" for more about patterns and matching.
>
> Jim Pryor wrote:
> > The following reply was made to PR bin/166842; it has been noted by GNATS.
> > From: Jim Pryor <dubiousjim at gmail.com>
> > $ printf 'abc def' | grep -o '^[a-z]'
> > will match against each of the letters in 'abc', but not against any of
> > the letters in 'def'.
> > dubiousjim at gmail.com
Hi John, I'm sorry I didn't describe the problem adequately to prevent
this misunderstanding.
$ printf 'abc def' | grep -o '^[a-z]'
Expected output: a
That is in fact the output I get from Gnu grep.
Actual output on FreeBSD:
a
b
c
The matches against "b" and "c" are incorrect.
--
dubiousjim at gmail.com
More information about the freebsd-bugs
mailing list