Re: About a reg expression ?: On 5/13/07, Dr.Ruud  wrote:
snip
> or  /a (?:black|grey|white|) cat/;
snip

It is sad to say, but I had never thought of using a pipe at the end
to cause a submatch to be optional.  That is a nifty solution.  Too
much thinking inside the box for me, I guess.  I would have said

/a (?:black|grey|white)? cat/

Although, it might (and I stress might) be more correct to say

/a (?:(?:black|grey|white) )?cat/

since two spaces is odd (even though it is even).  Or, if they are
just tokens separated by whitespace:

/a\\s+(?:black|grey|white)\\s*cat

or the more readable (to me at least)

/a \\s+ (?: black | grey | white ) \\s* cat/x

-- 
To unsubscribe, e-mail: beginners-unsubscribe@perl.org
For additional commands, e-mail: beginners-help@perl.org
http://learn.perl.org/


