Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:
I have two regular expressions (thanks to you guys explaining in great detail how this all works) that to my mind are logical equivalent (well excluding one case, but I think I want the extra case anyway).
The expression I would like is:
What I think it does is:/.*(\[*\w*\@*\-*\w*[$ #\%>~]\]|\\\[\\e\[0m\\\] \[0m)\s?/
- match as much as possible
possibly match [
possibly match some word characters
possibly match some @
possibly match some -
possibly match some word characters
match either $ ' ' # % > or ~
possibly match ]
or it matches weird escape sequence.
and maybe a whitespace
/.*([$ #\%>~]|\[*\w*\@*\-*\w*\%\]*|\[*\w*\@*\-*\w*#\]*|\[*\w*\@*\-*\w* +\$\]*|\[*\w*\@*\-*\w*>\]*|\\\[\\e\[0m\\\] \[0m)\s?/
Tomorrow I will probably convert most (if not all) of the * to ? because somewhere I heard greedyness is the root of all evil.
Thanks for your patients
Jack
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: regex logical equivalence?
by davido (Cardinal) on Feb 04, 2004 at 09:17 UTC | |
Re: regex logical equivalence?
by Roger (Parson) on Feb 04, 2004 at 10:38 UTC | |
Re: regex logical equivalence?
by MCS (Monk) on Feb 04, 2004 at 17:13 UTC | |
Re: regex logical equivalence?
by jarich (Curate) on Feb 05, 2004 at 06:14 UTC | |
Re: regex logical equivalence?
by mrpeabody (Friar) on Feb 05, 2004 at 05:50 UTC | |
Re: regex logical equivalence?
by Sol-Invictus (Scribe) on Feb 05, 2004 at 08:48 UTC |
Back to
Seekers of Perl Wisdom