Diff for /embedaddon/pcre/doc/pcre.3 between versions 1.1 and 1.1.1.4

version 1.1, 2012/02/21 23:05:52 version 1.1.1.4, 2013/07/22 08:25:56
Line 1 Line 1
.TH PCRE 3.TH PCRE 3 "13 May 2013" "PCRE 8.33"
 .SH NAME  .SH NAME
 PCRE - Perl-compatible regular expressions  PCRE - Perl-compatible regular expressions
 .SH INTRODUCTION  .SH INTRODUCTION
Line 11  appeared in Perl are also available using the Python s Line 11  appeared in Perl are also available using the Python s
 support for one or two .NET and Oniguruma syntax items, and there is an option  support for one or two .NET and Oniguruma syntax items, and there is an option
 for requesting some minor changes that give better JavaScript compatibility.  for requesting some minor changes that give better JavaScript compatibility.
 .P  .P
   Starting with release 8.30, it is possible to compile two separate PCRE
   libraries: the original, which supports 8-bit character strings (including
   UTF-8 strings), and a second library that supports 16-bit character strings
   (including UTF-16 strings). The build process allows either one or both to be
   built. The majority of the work to make this possible was done by Zoltan
   Herczeg.
   .P
   Starting with release 8.32 it is possible to compile a third separate PCRE
   library that supports 32-bit character strings (including UTF-32 strings). The
   build process allows any combination of the 8-, 16- and 32-bit libraries. The
   work to make this possible was done by Christian Persch.
   .P
   The three libraries contain identical sets of functions, except that the names
   in the 16-bit library start with \fBpcre16_\fP instead of \fBpcre_\fP, and the
   names in the 32-bit library start with \fBpcre32_\fP instead of \fBpcre_\fP. To
   avoid over-complication and reduce the documentation maintenance load, most of
   the documentation describes the 8-bit library, with the differences for the
   16-bit and 32-bit libraries described separately in the
   .\" HREF
   \fBpcre16\fP
   and
   .\" HREF
   \fBpcre32\fP
   .\"
   pages. References to functions or structures of the form \fIpcre[16|32]_xxx\fP
   should be read as meaning "\fIpcre_xxx\fP when using the 8-bit library,
   \fIpcre16_xxx\fP when using the 16-bit library, or \fIpcre32_xxx\fP when using
   the 32-bit library".
   .P
 The current implementation of PCRE corresponds approximately with Perl 5.12,  The current implementation of PCRE corresponds approximately with Perl 5.12,
including support for UTF-8 encoded strings and Unicode general categoryincluding support for UTF-8/16/32 encoded strings and Unicode general category
properties. However, UTF-8 and Unicode support has to be explicitly enabled; itproperties. However, UTF-8/16/32 and Unicode support has to be explicitly
is not the default. The Unicode tables correspond to Unicode release 6.0.0.enabled; it is not the default. The Unicode tables correspond to Unicode
 release 6.2.0.
 .P  .P
 In addition to the Perl-compatible matching function, PCRE contains an  In addition to the Perl-compatible matching function, PCRE contains an
 alternative function that matches the same compiled patterns in a different  alternative function that matches the same compiled patterns in a different
Line 27  page. Line 57  page.
 .P  .P
 PCRE is written in C and released as a C library. A number of people have  PCRE is written in C and released as a C library. A number of people have
 written wrappers and interfaces of various kinds. In particular, Google Inc.  written wrappers and interfaces of various kinds. In particular, Google Inc.
have provided a comprehensive C++ wrapper. This is now included as part of thehave provided a comprehensive C++ wrapper for the 8-bit library. This is now
PCRE distribution. Theincluded as part of the PCRE distribution. The
 .\" HREF  .\" HREF
 \fBpcrecpp\fP  \fBpcrecpp\fP
 .\"  .\"
Line 38  in the \fIContrib\fP directory at the primary FTP site Line 68  in the \fIContrib\fP directory at the primary FTP site
 .\" HTML <a href="ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre">  .\" HTML <a href="ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre">
 .\" </a>  .\" </a>
 ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre  ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre
   .\"
 .P  .P
 Details of exactly which Perl regular expression features are and are not  Details of exactly which Perl regular expression features are and are not
 supported by PCRE are given in separate documents. See the  supported by PCRE are given in separate documents. See the
Line 65  available. The features themselves are described in th Line 96  available. The features themselves are described in th
 \fBpcrebuild\fP  \fBpcrebuild\fP
 .\"  .\"
 page. Documentation about building PCRE for various operating systems can be  page. Documentation about building PCRE for various operating systems can be
found in the \fBREADME\fP and \fBNON-UNIX-USE\fP files in the sourcefound in the
distribution..\" HTML <a href="README.txt">
 .\" </a>
 \fBREADME\fP
 .\"
 and
 .\" HTML <a href="NON-AUTOTOOLS-BUILD.txt">
 .\" </a>
 \fBNON-AUTOTOOLS_BUILD\fP
 .\"
 files in the source distribution.
 .P  .P
The library contains a number of undocumented internal functions and dataThe libraries contains a number of undocumented internal functions and data
 tables that are used by more than one of the exported external functions, but  tables that are used by more than one of the exported external functions, but
 which are not intended for use by external callers. Their names all begin with  which are not intended for use by external callers. Their names all begin with
"_pcre_", which hopefully will not provoke any name clashes. In some"_pcre_" or "_pcre16_" or "_pcre32_", which hopefully will not provoke any name
environments, it is possible to control which external symbols are exportedclashes. In some environments, it is possible to control which external symbols
when a shared library is built, and in these cases the undocumented symbols areare exported when a shared library is built, and in these cases the
not exported.undocumented symbols are not exported.
 .  .
 .  .
   .SH "SECURITY CONSIDERATIONS"
   .rs
   .sp
   If you are using PCRE in a non-UTF application that permits users to supply
   arbitrary patterns for compilation, you should be aware of a feature that
   allows users to turn on UTF support from within a pattern, provided that PCRE
   was built with UTF support. For example, an 8-bit pattern that begins with
   "(*UTF8)" or "(*UTF)" turns on UTF-8 mode, which interprets patterns and
   subjects as strings of UTF-8 characters instead of individual 8-bit characters.
   This causes both the pattern and any data against which it is matched to be
   checked for UTF-8 validity. If the data string is very long, such a check might
   use sufficiently many resources as to cause your application to lose
   performance.
   .P
   One way of guarding against this possibility is to use the
   \fBpcre_fullinfo()\fP function to check the compiled pattern's options for UTF.
   Alternatively, from release 8.33, you can set the PCRE_NEVER_UTF option at
   compile time. This causes an compile time error if a pattern contains a
   UTF-setting sequence.
   .P
   If your application is one that supports UTF, be aware that validity checking
   can take time. If the same data string is to be matched many times, you can use
   the PCRE_NO_UTF[8|16|32]_CHECK option for the second and subsequent matches to
   save redundant checks.
   .P
   Another way that performance can be hit is by running a pattern that has a very
   large search tree against a string that will never match. Nested unlimited
   repeats in a pattern are a common example. PCRE provides some protection
   against this: see the PCRE_EXTRA_MATCH_LIMIT feature in the
   .\" HREF
   \fBpcreapi\fP
   .\"
   page.
   .
   .
 .SH "USER DOCUMENTATION"  .SH "USER DOCUMENTATION"
 .rs  .rs
 .sp  .sp
Line 88  of searching. The sections are as follows: Line 163  of searching. The sections are as follows:
 .sp  .sp
   pcre              this document    pcre              this document
   pcre-config       show PCRE installation configuration information    pcre-config       show PCRE installation configuration information
     pcre16            details of the 16-bit library
     pcre32            details of the 32-bit library
   pcreapi           details of PCRE's native C API    pcreapi           details of PCRE's native C API
  pcrebuild         options for building PCRE  pcrebuild         building PCRE
   pcrecallout       details of the callout feature    pcrecallout       details of the callout feature
   pcrecompat        discussion of Perl compatibility    pcrecompat        discussion of Perl compatibility
  pcrecpp           details of the C++ wrapper  pcrecpp           details of the C++ wrapper for the 8-bit library
   pcredemo          a demonstration C program that uses PCRE    pcredemo          a demonstration C program that uses PCRE
  pcregrep          description of the \fBpcregrep\fP command  pcregrep          description of the \fBpcregrep\fP command (8-bit only)
   pcrejit           discussion of the just-in-time optimization support    pcrejit           discussion of the just-in-time optimization support
   pcrelimits        details of size and other limits    pcrelimits        details of size and other limits
   pcrematching      discussion of the two matching algorithms    pcrematching      discussion of the two matching algorithms
Line 103  of searching. The sections are as follows: Line 180  of searching. The sections are as follows:
   pcrepattern       syntax and semantics of supported    pcrepattern       syntax and semantics of supported
                       regular expressions                        regular expressions
   pcreperform       discussion of performance issues    pcreperform       discussion of performance issues
  pcreposix         the POSIX-compatible C API  pcreposix         the POSIX-compatible C API for the 8-bit library
   pcreprecompile    details of saving and re-using precompiled patterns    pcreprecompile    details of saving and re-using precompiled patterns
   pcresample        discussion of the pcredemo program    pcresample        discussion of the pcredemo program
   pcrestack         discussion of stack usage    pcrestack         discussion of stack usage
   pcresyntax        quick syntax reference    pcresyntax        quick syntax reference
   pcretest          description of the \fBpcretest\fP testing command    pcretest          description of the \fBpcretest\fP testing command
  pcreunicode       discussion of Unicode and UTF-8 support  pcreunicode       discussion of Unicode and UTF-8/16/32 support
 .sp  .sp
 In addition, in the "man" and HTML formats, there is a short page for each  In addition, in the "man" and HTML formats, there is a short page for each
 C library function, listing its arguments and results.  C library function, listing its arguments and results.
Line 133  two digits 10, at the domain cam.ac.uk. Line 210  two digits 10, at the domain cam.ac.uk.
 .rs  .rs
 .sp  .sp
 .nf  .nf
Last updated: 24 August 2011Last updated: 13 May 2013
Copyright (c) 1997-2011 University of Cambridge.Copyright (c) 1997-2013 University of Cambridge.
 .fi  .fi

Removed from v.1.1  
changed lines
  Added in v.1.1.1.4


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>