btw, there is one site to play with RegExp http://erik.eae.net/playground/regexp/regexp.html. Have fun.

a brief introduction can be found from here http://en.wikipedia.org/wiki/Regular_expression.



On Wed, Jun 3, 2009 at 4:01 PM, Wu JIANG <albert.w.jiang@gmail.com> wrote:
actually, a+ means at least one 'a', b? means zero or one 'b'.


On Wed, Jun 3, 2009 at 10:56 AM, hugo rivera <uair00@gmail.com> wrote:
Hello,
I am experimenting with some regexp implementations (namely the one
from "the practice of programming") and I am a little disoriented by
the use of the '?' operator in plan 9's grep:
say I have the following input

aaaabbb
ab
aaaab
bb
b
aaabb
aaaa

which I feed into grep with

grep 'a+bb?'

which should match at least one 'a' followed by one or two 'b'. So,
grep's output is

aaaabbb
ab
aaaab
aaabb

which really surprised me at first, since I wasn't expecting the first
line. After some thought, I realized that the 'aaaab' and the 'aaaabb'
patterns, contained in the first line of input, match the regexp, so
grep prints the line.
But then, how exactly the '?' operator is useful for grep? I was
thinking that it was good to filter lines that contain more characters
that desired, but it is not.
Saludos
--
Hugo