X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperlop.pod;h=40ea2c8e9ccdb2b15b3418b8a48fd1c9e38a50b5;hb=7360c6b444ea6e19b6583f9530f845bee19c7921;hp=23f62e09ab6729f7b675070fa6dad790e6709da1;hpb=678ae90b5bfdcb408a7a5c2767d230d736624a6c;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perlop.pod b/pod/perlop.pod index 23f62e0..40ea2c8 100644 --- a/pod/perlop.pod +++ b/pod/perlop.pod @@ -602,10 +602,10 @@ Examples: As a scalar operator: if (101 .. 200) { print; } # print 2nd hundred lines, short for - # if ($. == 101 .. $. == 200) ... + # if ($. == 101 .. $. == 200) { print; } next LINE if (1 .. /^$/); # skip header lines, short for - # ... if ($. == 1 .. /^$/); + # next LINE if ($. == 1 .. /^$/); # (typically in a loop labeled LINE) s/^/> / if (/^$/ .. eof()); # quote body @@ -615,9 +615,9 @@ As a scalar operator: $in_header = 1 .. /^$/; $in_body = /^$/ .. eof; if ($in_header) { - # ... + # do something } else { # in body - # ... + # do something else } } continue { close ARGV if eof; # reset $. each file @@ -1152,11 +1152,13 @@ process modifiers are available: c Do not reset search position on a failed match when /g is in effect. If "/" is the delimiter then the initial C is optional. With the C -you can use any pair of non-alphanumeric, non-whitespace characters +you can use any pair of non-whitespace characters as delimiters. This is particularly useful for matching path names that contain "/", to avoid LTS (leaning toothpick syndrome). If "?" is the delimiter, then the match-only-once rule of C applies. If "'" is the delimiter, no interpolation is performed on the PATTERN. +When using a character valid in an identifier, whitespace is required +after the C. PATTERN may contain variables, which will be interpolated (and the pattern recompiled) every time the pattern search is evaluated, except @@ -1294,7 +1296,7 @@ doing different actions depending on which regexp matched. Each regexp tries to match where the previous one leaves off. $_ = <<'EOL'; - $url = URI::URL->new( "http://www/" ); die if $url eq "xXx"; + $url = URI::URL->new( "http://example.com/" ); die if $url eq "xXx"; EOL LOOP: { @@ -1366,13 +1368,13 @@ specific options: e Evaluate the right side as an expression. ee Evaluate the right side as a string then eval the result -Any non-alphanumeric, non-whitespace delimiter may replace the -slashes. If single quotes are used, no interpretation is done on the -replacement string (the C modifier overrides this, however). Unlike -Perl 4, Perl 5 treats backticks as normal delimiters; the replacement -text is not evaluated as a command. If the -PATTERN is delimited by bracketing quotes, the REPLACEMENT has its own -pair of quotes, which may or may not be bracketing quotes, e.g., +Any non-whitespace delimiter may replace the slashes. Add space after +the C when using a character allowed in identifiers. If single quotes +are used, no interpretation is done on the replacement string (the C +modifier overrides this, however). Unlike Perl 4, Perl 5 treats backticks +as normal delimiters; the replacement text is not evaluated as a command. +If the PATTERN is delimited by bracketing quotes, the REPLACEMENT has +its own pair of quotes, which may or may not be bracketing quotes, e.g., C or C<< s/bar/ >>. A C will cause the replacement portion to be treated as a full-fledged Perl expression and evaluated right then and there. It is, however, syntax checked at @@ -2181,7 +2183,7 @@ to terminate the loop, they should be tested for explicitly: while (($_ = ) ne '0') { ... } while () { last unless $_; ... } -In other boolean contexts, C<< > >> without an +In other boolean contexts, IfilehandleE>> without an explicit C test or comparison elicit a warning if the C pragma or the B<-w> command-line switch (the C<$^W> variable) is in effect.