diff options
Diffstat (limited to '8.31/doc/pcrelimits.3')
-rw-r--r-- | 8.31/doc/pcrelimits.3 | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/8.31/doc/pcrelimits.3 b/8.31/doc/pcrelimits.3 new file mode 100644 index 0000000..0e25f82 --- /dev/null +++ b/8.31/doc/pcrelimits.3 @@ -0,0 +1,66 @@ +.TH PCRELIMITS 3 "04 May 2012" "PCRE 8.30" +.SH NAME +PCRE - Perl-compatible regular expressions +.SH "SIZE AND OTHER LIMITATIONS" +.rs +.sp +There are some size limitations in PCRE but it is hoped that they will never in +practice be relevant. +.P +The maximum length of a compiled pattern is approximately 64K data units (bytes +for the 8-bit library, 16-bit units for the 16-bit library) if PCRE is compiled +with the default internal linkage size of 2 bytes. If you want to process +regular expressions that are truly enormous, you can compile PCRE with an +internal linkage size of 3 or 4 (when building the 16-bit library, 3 is rounded +up to 4). See the \fBREADME\fP file in the source distribution and the +.\" HREF +\fBpcrebuild\fP +.\" +documentation for details. In these cases the limit is substantially larger. +However, the speed of execution is slower. +.P +All values in repeating quantifiers must be less than 65536. +.P +There is no limit to the number of parenthesized subpatterns, but there can be +no more than 65535 capturing subpatterns. +.P +There is a limit to the number of forward references to subsequent subpatterns +of around 200,000. Repeated forward references with fixed upper limits, for +example, (?2){0,100} when subpattern number 2 is to the right, are included in +the count. There is no limit to the number of backward references. +.P +The maximum length of name for a named subpattern is 32 characters, and the +maximum number of named subpatterns is 10000. +.P +The maximum length of a name in a (*MARK), (*PRUNE), (*SKIP), or (*THEN) verb +is 255 for the 8-bit library and 65535 for the 16-bit library. +.P +The maximum length of a subject string is the largest positive number that an +integer variable can hold. However, when using the traditional matching +function, PCRE uses recursion to handle subpatterns and indefinite repetition. +This means that the available stack space may limit the size of a subject +string that can be processed by certain patterns. For a discussion of stack +issues, see the +.\" HREF +\fBpcrestack\fP +.\" +documentation. +. +. +.SH AUTHOR +.rs +.sp +.nf +Philip Hazel +University Computing Service +Cambridge CB2 3QH, England. +.fi +. +. +.SH REVISION +.rs +.sp +.nf +Last updated: 04 May 2012 +Copyright (c) 1997-2012 University of Cambridge. +.fi |