NAME
Perl::Critic::Policy::RegularExpressions::RequireDotMatchAnything - Always use the /s
modifier with regular expressions.
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
When asked what .
in a regular expression means, most people will say that it matches any character, which isn't true. It's actually shorthand for [^\n]
. Using the s
modifier makes .
act like people expect it to.
my $match = m< foo.bar >xm; # not ok
my $match = m< foo.bar >xms; # ok
CONFIGURATION
This Policy is not configurable except for the standard options.
NOTES
Be cautious about slapping modifier flags onto existing regular expressions, as they can drastically alter their meaning. See http://www.perlmonks.org/?node_id=484238 for an interesting discussion on the effects of blindly modifying regular expression flags.
AUTHOR
Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>
COPYRIGHT
Copyright (c) 2005-2011 Imaginative Software Systems. 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.