This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
re.pm: pod formatting nits, and clarifications
authorKarl Williamson <khw@cpan.org>
Tue, 10 Jan 2017 17:31:29 +0000 (10:31 -0700)
committerKarl Williamson <khw@cpan.org>
Fri, 13 Jan 2017 19:20:04 +0000 (12:20 -0700)
ext/re/re.pm

index 123408c..c416b94 100644 (file)
@@ -332,7 +332,7 @@ re - Perl pragma to alter regular expression behaviour
 
     use re qw(is_regexp regexp_pattern); # import utility functions
     my ($pat,$mods)=regexp_pattern(qr/foo/i);
-    if (is_regexp($obj)) { 
+    if (is_regexp($obj)) {
         print "Got regexp: ",
             scalar regexp_pattern($obj); # just as perl would stringify
     }                                    # it but no hassle with blessed
@@ -421,20 +421,34 @@ under non-strict.
 
 =head2 '/flags' mode
 
-When C<use re '/flags'> is specified, the given flags are automatically
+When C<use re '/I<flags>'> is specified, the given I<flags> are automatically
 added to every regular expression till the end of the lexical scope.
-
-C<no re '/flags'> will turn off the effect of C<use re '/flags'> for the
+I<flags> can be any combination of
+C<'a'>,
+C<'aa'>,
+C<'d'>,
+C<'i'>,
+C<'l'>,
+C<'m'>,
+C<'n'>,
+C<'p'>,
+C<'s'>,
+C<'u'>,
+C<'x'>,
+and/or
+C<'xx'>.
+
+C<no re '/I<flags>'> will turn off the effect of C<use re '/I<flags>'> for the
 given flags.
 
-For example, if you want all your regular expressions to have /msx on by
+For example, if you want all your regular expressions to have /msxx on by
 default, simply put
 
-    use re '/msx';
+    use re '/msxx';
 
 at the top of your code.
 
-The character set /adul flags cancel each other out. So, in this example,
+The character set C</adul> flags cancel each other out. So, in this example,
 
     use re "/u";
     "ss" =~ /\xdf/;
@@ -443,6 +457,13 @@ The character set /adul flags cancel each other out. So, in this example,
 
 the second C<use re> does an implicit C<no re '/u'>.
 
+Similarly,
+
+    use re "/xx";   # Doubled-x
+    ...
+    use re "/x";    # Single x from here on
+    ...
+
 Turning on one of the character set flags with C<use re> takes precedence over the
 C<locale> pragma and the 'unicode_strings' C<feature>, for regular
 expressions. Turning off one of these flags when it is active reverts to
@@ -468,7 +489,7 @@ strings on/off, pre-point part on/off.
 See L<perldebug/"Debugging Regular Expressions"> for additional info.
 
 As of 5.9.5 the directive C<use re 'debug'> and its equivalents are
-lexically scoped, as the other directives are.  However they have both 
+lexically scoped, as the other directives are.  However they have both
 compile-time and run-time effects.
 
 See L<perlmodlib/Pragmatic Modules>.