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

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

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

revision 96 by nigel, Fri Mar 2 13:10:43 2007 UTC revision 231 by ph10, Tue Sep 11 11:15:33 2007 UTC
# Line 6  PCRE - Perl-compatible regular expressio Line 6  PCRE - Perl-compatible regular expressio
6  .sp  .sp
7  This document describes the differences in the ways that PCRE and Perl handle  This document describes the differences in the ways that PCRE and Perl handle
8  regular expressions. The differences described here are mainly with respect to  regular expressions. The differences described here are mainly with respect to
9  Perl 5.8, though PCRE version 7.0 contains some features that are expected to  Perl 5.8, though PCRE versions 7.0 and later contain some features that are
10  be in the forthcoming Perl 5.10.  expected to be in the forthcoming Perl 5.10.
11  .P  .P
12  1. PCRE has only a subset of Perl's UTF-8 and Unicode support. Details of what  1. PCRE has only a subset of Perl's UTF-8 and Unicode support. Details of what
13  it does have are given in the  it does have are given in the
# Line 81  treated as atomic groups in PCRE. This i Line 81  treated as atomic groups in PCRE. This i
81  strings when part of a pattern is repeated. For example, matching "aba" against  strings when part of a pattern is repeated. For example, matching "aba" against
82  the pattern /^(a(b)?)+$/ in Perl leaves $2 unset, but in PCRE it is set to "b".  the pattern /^(a(b)?)+$/ in Perl leaves $2 unset, but in PCRE it is set to "b".
83  .P  .P
84  11. PCRE provides some extensions to the Perl regular expression facilities.  11. PCRE does support Perl 5.10's backtracking verbs (*ACCEPT), (*FAIL), (*F),
85    (*COMMIT), (*PRUNE), (*SKIP), and (*THEN), but only in the forms without an
86    argument. PCRE does not support (*MARK). If (*ACCEPT) is within capturing
87    parentheses, PCRE does not set that capture group; this is different to Perl.
88    .P
89    12. PCRE provides some extensions to the Perl regular expression facilities.
90  Perl 5.10 will include new features that are not in earlier versions, some of  Perl 5.10 will include new features that are not in earlier versions, some of
91  which (such as named parentheses) have been in PCRE for some time. This list is  which (such as named parentheses) have been in PCRE for some time. This list is
92  with respect to Perl 5.10:  with respect to Perl 5.10:
# Line 94  string. Perl requires them all to have t Line 99  string. Perl requires them all to have t
99  meta-character matches only at the very end of the string.  meta-character matches only at the very end of the string.
100  .sp  .sp
101  (c) If PCRE_EXTRA is set, a backslash followed by a letter with no special  (c) If PCRE_EXTRA is set, a backslash followed by a letter with no special
102  meaning is faulted. Otherwise, like Perl, the backslash is ignored. (Perl can  meaning is faulted. Otherwise, like Perl, the backslash is quietly ignored.
103  be made to issue a warning.)  (Perl can be made to issue a warning.)
104  .sp  .sp
105  (d) If PCRE_UNGREEDY is set, the greediness of the repetition quantifiers is  (d) If PCRE_UNGREEDY is set, the greediness of the repetition quantifiers is
106  inverted, that is, by default they are not greedy, but if followed by a  inverted, that is, by default they are not greedy, but if followed by a
# Line 107  only at the first matching position in t Line 112  only at the first matching position in t
112  (f) The PCRE_NOTBOL, PCRE_NOTEOL, PCRE_NOTEMPTY, and PCRE_NO_AUTO_CAPTURE  (f) The PCRE_NOTBOL, PCRE_NOTEOL, PCRE_NOTEMPTY, and PCRE_NO_AUTO_CAPTURE
113  options for \fBpcre_exec()\fP have no Perl equivalents.  options for \fBpcre_exec()\fP have no Perl equivalents.
114  .sp  .sp
115  (g) The callout facility is PCRE-specific.  (g) The \eR escape sequence can be restricted to match only CR, LF, or CRLF
116    by the PCRE_BSR_ANYCRLF option.
117    .sp
118    (h) The callout facility is PCRE-specific.
119  .sp  .sp
120  (h) The partial matching facility is PCRE-specific.  (i) The partial matching facility is PCRE-specific.
121  .sp  .sp
122  (i) Patterns compiled by PCRE can be saved and re-used at a later time, even on  (j) Patterns compiled by PCRE can be saved and re-used at a later time, even on
123  different hosts that have the other endianness.  different hosts that have the other endianness.
124  .sp  .sp
125  (j) The alternative matching function (\fBpcre_dfa_exec()\fP) matches in a  (k) The alternative matching function (\fBpcre_dfa_exec()\fP) matches in a
126  different way and is not Perl-compatible.  different way and is not Perl-compatible.
127  .P  .sp
128  .in 0  (l) PCRE recognizes some special sequences such as (*CR) at the start of
129  Last updated: 28 November 2006  a pattern that set overall options that cannot be changed within the pattern.
130  .br  .
131  Copyright (c) 1997-2006 University of Cambridge.  .
132    .SH AUTHOR
133    .rs
134    .sp
135    .nf
136    Philip Hazel
137    University Computing Service
138    Cambridge CB2 3QH, England.
139    .fi
140    .
141    .
142    .SH REVISION
143    .rs
144    .sp
145    .nf
146    Last updated: 11 September 2007
147    Copyright (c) 1997-2007 University of Cambridge.
148    .fi

Legend:
Removed from v.96  
changed lines
  Added in v.231

  ViewVC Help
Powered by ViewVC 1.1.5