/[pcre]/code/trunk/doc/pcrepattern.3
ViewVC logotype

Diff of /code/trunk/doc/pcrepattern.3

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 335 by ph10, Sat Apr 12 14:36:14 2008 UTC revision 394 by ph10, Wed Mar 18 16:38:23 2009 UTC
# Line 318  parenthesized subpatterns. Line 318  parenthesized subpatterns.
318  .SS "Absolute and relative subroutine calls"  .SS "Absolute and relative subroutine calls"
319  .rs  .rs
320  .sp  .sp
321  For compatibility with Oniguruma, the non-Perl syntax \eg followed by a name or  For compatibility with Oniguruma, the non-Perl syntax \eg followed by a name or
322  a number enclosed either in angle brackets or single quotes, is an alternative  a number enclosed either in angle brackets or single quotes, is an alternative
323  syntax for referencing a subpattern as a "subroutine". Details are discussed  syntax for referencing a subpattern as a "subroutine". Details are discussed
324  .\" HTML <a href="#onigurumasubroutines">  .\" HTML <a href="#onigurumasubroutines">
325  .\" </a>  .\" </a>
326  later.  later.
327  .\"  .\"
328  Note that \eg{...} (Perl syntax) and \eg<...> (Oniguruma syntax) are \fInot\fP  Note that \eg{...} (Perl syntax) and \eg<...> (Oniguruma syntax) are \fInot\fP
329  synonymous. The former is a back reference; the latter is a subroutine call.  synonymous. The former is a back reference; the latter is a subroutine call.
330  .  .
331  .  .
# Line 364  In UTF-8 mode, characters with values gr Line 364  In UTF-8 mode, characters with values gr
364  \ew, and always match \eD, \eS, and \eW. This is true even when Unicode  \ew, and always match \eD, \eS, and \eW. This is true even when Unicode
365  character property support is available. These sequences retain their original  character property support is available. These sequences retain their original
366  meanings from before UTF-8 support was available, mainly for efficiency  meanings from before UTF-8 support was available, mainly for efficiency
367  reasons.  reasons. Note that this also affects \eb, because it is defined in terms of \ew
368    and \eW.
369  .P  .P
370  The sequences \eh, \eH, \ev, and \eV are Perl 5.10 features. In contrast to the  The sequences \eh, \eH, \ev, and \eV are Perl 5.10 features. In contrast to the
371  other sequences, these do match certain high-valued codepoints in UTF-8 mode.  other sequences, these do match certain high-valued codepoints in UTF-8 mode.
# Line 1211  details of the interfaces for handling n Line 1212  details of the interfaces for handling n
1212  \fBpcreapi\fP  \fBpcreapi\fP
1213  .\"  .\"
1214  documentation.  documentation.
1215    .P
1216    \fBWarning:\fP You cannot use different names to distinguish between two
1217    subpatterns with the same number (see the previous section) because PCRE uses
1218    only the numbers when matching.
1219  .  .
1220  .  .
1221  .SH REPETITION  .SH REPETITION
# Line 1259  support is available, \eX{3} matches thr Line 1264  support is available, \eX{3} matches thr
1264  which may be several bytes long (and they may be of different lengths).  which may be several bytes long (and they may be of different lengths).
1265  .P  .P
1266  The quantifier {0} is permitted, causing the expression to behave as if the  The quantifier {0} is permitted, causing the expression to behave as if the
1267  previous item and the quantifier were not present. This may be useful for  previous item and the quantifier were not present. This may be useful for
1268  subpatterns that are referenced as  subpatterns that are referenced as
1269  .\" HTML <a href="#subpatternsassubroutines">  .\" HTML <a href="#subpatternsassubroutines">
1270  .\" </a>  .\" </a>
1271  subroutines  subroutines
1272  .\"  .\"
1273  from elsewhere in the pattern. Items other than subpatterns that have a {0}  from elsewhere in the pattern. Items other than subpatterns that have a {0}
1274  quantifier are omitted from the compiled pattern.  quantifier are omitted from the compiled pattern.
1275  .P  .P
1276  For convenience, the three most common quantifiers have single-character  For convenience, the three most common quantifiers have single-character
# Line 2053  processing option does not affect the ca Line 2058  processing option does not affect the ca
2058  .SH "ONIGURUMA SUBROUTINE SYNTAX"  .SH "ONIGURUMA SUBROUTINE SYNTAX"
2059  .rs  .rs
2060  .sp  .sp
2061  For compatibility with Oniguruma, the non-Perl syntax \eg followed by a name or  For compatibility with Oniguruma, the non-Perl syntax \eg followed by a name or
2062  a number enclosed either in angle brackets or single quotes, is an alternative  a number enclosed either in angle brackets or single quotes, is an alternative
2063  syntax for referencing a subpattern as a subroutine, possibly recursively. Here  syntax for referencing a subpattern as a subroutine, possibly recursively. Here
2064  are two of the examples used above, rewritten using this syntax:  are two of the examples used above, rewritten using this syntax:
2065  .sp  .sp
2066    (?<pn> \e( ( (?>[^()]+) | \eg<pn> )* \e) )    (?<pn> \e( ( (?>[^()]+) | \eg<pn> )* \e) )
2067    (sens|respons)e and \eg'1'ibility    (sens|respons)e and \eg'1'ibility
2068  .sp  .sp
2069  PCRE supports an extension to Oniguruma: if a number is preceded by a  PCRE supports an extension to Oniguruma: if a number is preceded by a
2070  plus or a minus sign it is taken as a relative reference. For example:  plus or a minus sign it is taken as a relative reference. For example:
2071  .sp  .sp
2072    (abc)(?i:\eg<-1>)    (abc)(?i:\eg<-1>)
2073  .sp  .sp
2074  Note that \eg{...} (Perl syntax) and \eg<...> (Oniguruma syntax) are \fInot\fP  Note that \eg{...} (Perl syntax) and \eg<...> (Oniguruma syntax) are \fInot\fP
2075  synonymous. The former is a back reference; the latter is a subroutine call.  synonymous. The former is a back reference; the latter is a subroutine call.
2076  .  .
2077  .  .
# Line 2115  or removal in a future version of Perl". Line 2120  or removal in a future version of Perl".
2120  production code should be noted to avoid problems during upgrades." The same  production code should be noted to avoid problems during upgrades." The same
2121  remarks apply to the PCRE features described in this section.  remarks apply to the PCRE features described in this section.
2122  .P  .P
2123  Since these verbs are specifically related to backtracking, they can be used  Since these verbs are specifically related to backtracking, most of them can be
2124  only when the pattern is to be matched using \fBpcre_exec()\fP, which uses a  used only when the pattern is to be matched using \fBpcre_exec()\fP, which uses
2125  backtracking algorithm. They cause an error if encountered by  a backtracking algorithm. With the exception of (*FAIL), which behaves like a
2126    failing negative assertion, they cause an error if encountered by
2127  \fBpcre_dfa_exec()\fP.  \fBpcre_dfa_exec()\fP.
2128  .P  .P
2129  The new verbs make use of what was previously invalid syntax: an opening  The new verbs make use of what was previously invalid syntax: an opening
# Line 2239  Cambridge CB2 3QH, England. Line 2245  Cambridge CB2 3QH, England.
2245  .rs  .rs
2246  .sp  .sp
2247  .nf  .nf
2248  Last updated: 12 April 2008  Last updated: 18 March 2009
2249  Copyright (c) 1997-2008 University of Cambridge.  Copyright (c) 1997-2009 University of Cambridge.
2250  .fi  .fi

Legend:
Removed from v.335  
changed lines
  Added in v.394

  ViewVC Help
Powered by ViewVC 1.1.5