Extended regular expression formatting allows you mix whitespace and comments into the pattern, thus making them much more readable.

    # Match a single-quoted string efficiently...
    m{'[^\\']*(?:\\.[^\\']*)*'};  #Huh?
    #Same thing with extended format...
    m{ '           #an opening single quote
       [^\\']      #any non-special chars (i.e. not backslash or single quote)
       (?:         #then all of...
          \\ .     #   any explicitly backslashed char
          [^\\']*  #   followed by an non-special chars
       )*          #...repeated zero or more times
       '           # a closing single quote


For common regular expressions like e-mail addresses, phone numbers, dates, etc., have a look at the the Regex::Common manpage module. Also, be cautions about slapping modifier flags onto existing regular expressions, as they can drastically alter their meaning. See http://www.perlmonks.org/ for an interesting discussion on the effects of blindly modifying regular expression flags.


Jeffrey Ryan Thalhammer <thaljef@cpan.org>


Copyright (c) 2005-2007 Jeffrey Ryan Thalhammer. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module.