in reply to "Correct" program style questions
i have changed my regular expression style significantly as of late. my list of reasons includes training regex newbies and preparing for perl 6.
here are some of the changes
- never use a bare regex: // is always written as m//
- always use the x modifier, and put it up front (more like perl6): m/(?x) ((?:blah){3}) ## match w/ capture: blahblahblah /
- replace all ^ and $ anchors with the safer \A and \z. once bitten, twice shy ;)
if i read the apocalypses correctly, perl 6's ^ and $ anchors will DWIM better than the current implementation
my take on your regexes might go something like:
... =~ m/(?x) \A ## match w/ capture: one or more alpha, punct, or space posix charac +ters ( [[:alpha:][:punct:][:space:]]+ ) \z /; ## and ... =~ m/(?x) \A ## match w/capture: one or more alpha posix characters ( [[:alpha:]]+ ) \z /;
the comments are a little verbose. i'd consider them extraneous for this example, but neccessary in more complex patterns.
~Particle *accelerates*
|
---|
In Section
Seekers of Perl Wisdom