Annotation of embedaddon/pcre/doc/html/pcre.html, revision 1.1.1.1
1.1 misho 1: <html>
2: <head>
3: <title>pcre specification</title>
4: </head>
5: <body bgcolor="#FFFFFF" text="#00005A" link="#0066FF" alink="#3399FF" vlink="#2222BB">
6: <h1>pcre man page</h1>
7: <p>
8: Return to the <a href="index.html">PCRE index page</a>.
9: </p>
10: <p>
11: This page is part of the PCRE HTML documentation. It was generated automatically
12: from the original man page. If there is any nonsense in it, please consult the
13: man page, in case the conversion went wrong.
14: <br>
15: <ul>
16: <li><a name="TOC1" href="#SEC1">INTRODUCTION</a>
17: <li><a name="TOC2" href="#SEC2">USER DOCUMENTATION</a>
18: <li><a name="TOC3" href="#SEC3">AUTHOR</a>
19: <li><a name="TOC4" href="#SEC4">REVISION</a>
20: </ul>
21: <br><a name="SEC1" href="#TOC1">INTRODUCTION</a><br>
22: <P>
23: The PCRE library is a set of functions that implement regular expression
24: pattern matching using the same syntax and semantics as Perl, with just a few
25: differences. Some features that appeared in Python and PCRE before they
26: appeared in Perl are also available using the Python syntax, there is some
27: support for one or two .NET and Oniguruma syntax items, and there is an option
28: for requesting some minor changes that give better JavaScript compatibility.
29: </P>
30: <P>
31: The current implementation of PCRE corresponds approximately with Perl 5.12,
32: including support for UTF-8 encoded strings and Unicode general category
33: properties. However, UTF-8 and Unicode support has to be explicitly enabled; it
34: is not the default. The Unicode tables correspond to Unicode release 6.0.0.
35: </P>
36: <P>
37: In addition to the Perl-compatible matching function, PCRE contains an
38: alternative function that matches the same compiled patterns in a different
39: way. In certain circumstances, the alternative function has some advantages.
40: For a discussion of the two matching algorithms, see the
41: <a href="pcrematching.html"><b>pcrematching</b></a>
42: page.
43: </P>
44: <P>
45: PCRE is written in C and released as a C library. A number of people have
46: written wrappers and interfaces of various kinds. In particular, Google Inc.
47: have provided a comprehensive C++ wrapper. This is now included as part of the
48: PCRE distribution. The
49: <a href="pcrecpp.html"><b>pcrecpp</b></a>
50: page has details of this interface. Other people's contributions can be found
51: in the <i>Contrib</i> directory at the primary FTP site, which is:
52: <a href="ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre">ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre</a>
53: </P>
54: <P>
55: Details of exactly which Perl regular expression features are and are not
56: supported by PCRE are given in separate documents. See the
57: <a href="pcrepattern.html"><b>pcrepattern</b></a>
58: and
59: <a href="pcrecompat.html"><b>pcrecompat</b></a>
60: pages. There is a syntax summary in the
61: <a href="pcresyntax.html"><b>pcresyntax</b></a>
62: page.
63: </P>
64: <P>
65: Some features of PCRE can be included, excluded, or changed when the library is
66: built. The
67: <a href="pcre_config.html"><b>pcre_config()</b></a>
68: function makes it possible for a client to discover which features are
69: available. The features themselves are described in the
70: <a href="pcrebuild.html"><b>pcrebuild</b></a>
71: page. Documentation about building PCRE for various operating systems can be
72: found in the <b>README</b> and <b>NON-UNIX-USE</b> files in the source
73: distribution.
74: </P>
75: <P>
76: The library contains a number of undocumented internal functions and data
77: tables that are used by more than one of the exported external functions, but
78: which are not intended for use by external callers. Their names all begin with
79: "_pcre_", which hopefully will not provoke any name clashes. In some
80: environments, it is possible to control which external symbols are exported
81: when a shared library is built, and in these cases the undocumented symbols are
82: not exported.
83: </P>
84: <br><a name="SEC2" href="#TOC1">USER DOCUMENTATION</a><br>
85: <P>
86: The user documentation for PCRE comprises a number of different sections. In
87: the "man" format, each of these is a separate "man page". In the HTML format,
88: each is a separate page, linked from the index page. In the plain text format,
89: all the sections, except the <b>pcredemo</b> section, are concatenated, for ease
90: of searching. The sections are as follows:
91: <pre>
92: pcre this document
93: pcre-config show PCRE installation configuration information
94: pcreapi details of PCRE's native C API
95: pcrebuild options for building PCRE
96: pcrecallout details of the callout feature
97: pcrecompat discussion of Perl compatibility
98: pcrecpp details of the C++ wrapper
99: pcredemo a demonstration C program that uses PCRE
100: pcregrep description of the <b>pcregrep</b> command
101: pcrejit discussion of the just-in-time optimization support
102: pcrelimits details of size and other limits
103: pcrematching discussion of the two matching algorithms
104: pcrepartial details of the partial matching facility
105: pcrepattern syntax and semantics of supported regular expressions
106: pcreperform discussion of performance issues
107: pcreposix the POSIX-compatible C API
108: pcreprecompile details of saving and re-using precompiled patterns
109: pcresample discussion of the pcredemo program
110: pcrestack discussion of stack usage
111: pcresyntax quick syntax reference
112: pcretest description of the <b>pcretest</b> testing command
113: pcreunicode discussion of Unicode and UTF-8 support
114: </pre>
115: In addition, in the "man" and HTML formats, there is a short page for each
116: C library function, listing its arguments and results.
117: </P>
118: <br><a name="SEC3" href="#TOC1">AUTHOR</a><br>
119: <P>
120: Philip Hazel
121: <br>
122: University Computing Service
123: <br>
124: Cambridge CB2 3QH, England.
125: <br>
126: </P>
127: <P>
128: Putting an actual email address here seems to have been a spam magnet, so I've
129: taken it away. If you want to email me, use my two initials, followed by the
130: two digits 10, at the domain cam.ac.uk.
131: </P>
132: <br><a name="SEC4" href="#TOC1">REVISION</a><br>
133: <P>
134: Last updated: 24 August 2011
135: <br>
136: Copyright © 1997-2011 University of Cambridge.
137: <br>
138: <p>
139: Return to the <a href="index.html">PCRE index page</a>.
140: </p>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>