-----------------------------------------------------------------------------
This file contains a concatenation of the PCRE man pages, converted to plain
text format for ease of searching with a text editor, or for use on systems
that do not have a man page processor. The small individual files that give
synopses of each function in the library have not been included. There are
separate text files for the pcregrep and pcretest commands.
-----------------------------------------------------------------------------
PCRE(3) PCRE(3)
NAME
PCRE - Perl-compatible regular expressions
INTRODUCTION
The PCRE library is a set of functions that implement regular expres-
sion pattern matching using the same syntax and semantics as Perl, with
just a few differences. Certain features that appeared in Python and
PCRE before they appeared in Perl are also available using the Python
syntax. There is also some support for certain .NET and Oniguruma syn-
tax items, and there is an option for requesting some minor changes
that give better JavaScript compatibility.
The current implementation of PCRE (release 7.x) corresponds approxi-
mately with Perl 5.10, including support for UTF-8 encoded strings and
Unicode general category properties. However, UTF-8 and Unicode support
has to be explicitly enabled; it is not the default. The Unicode tables
correspond to Unicode release 5.0.0.
In addition to the Perl-compatible matching function, PCRE contains an
alternative matching function that matches the same compiled patterns
in a different way. In certain circumstances, the alternative function
has some advantages. For a discussion of the two matching algorithms,
see the pcrematching page.
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. have provided a comprehensive C++ wrapper. This is now
included as part of the PCRE distribution. The pcrecpp page has details
of this interface. Other people's contributions can be found in the
Contrib directory at the primary FTP site, which is:
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre
Details of exactly which Perl regular expression features are and are
not supported by PCRE are given in separate documents. See the pcrepat-
tern and pcrecompat pages. There is a syntax summary in the pcresyntax
page.
Some features of PCRE can be included, excluded, or changed when the
library is built. The pcre_config() function makes it possible for a
client to discover which features are available. The features them-
selves are described in the pcrebuild page. Documentation about build-
ing PCRE for various operating systems can be found in the README file
in the source distribution.
The library contains a number of undocumented internal functions and
data 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 "_pcre_", which hopefully will not provoke
any name clashes. In some environments, it is possible to control which
external symbols are exported when a shared library is built, and in
these cases the undocumented symbols are not exported.
USER DOCUMENTATION
The user documentation for PCRE comprises a number of different sec-
tions. In the "man" format, each of these is a separate "man page". In
the HTML format, each is a separate page, linked from the index page.
In the plain text format, all the sections are concatenated, for ease
of searching. The sections are as follows:
pcre this document
pcre-config show PCRE installation configuration information
pcreapi details of PCRE's native C API
pcrebuild options for building PCRE
pcrecallout details of the callout feature
pcrecompat discussion of Perl compatibility
pcrecpp details of the C++ wrapper
pcregrep description of the pcregrep command
pcrematching discussion of the two matching algorithms
pcrepartial details of the partial matching facility
pcrepattern syntax and semantics of supported
regular expressions
pcresyntax quick syntax reference
pcreperform discussion of performance issues
pcreposix the POSIX-compatible C API
pcreprecompile details of saving and re-using precompiled patterns
pcresample discussion of the sample program
pcrestack discussion of stack usage
pcretest description of the pcretest testing command
In addition, in the "man" and HTML formats, there is a short page for
each C library function, listing its arguments and results.
LIMITATIONS
There are some size limitations in PCRE but it is hoped that they will
never in practice be relevant.
The maximum length of a compiled pattern is 65539 (sic) bytes if PCRE
is compiled with the default internal linkage size of 2. If you want to
process regular expressions that are truly enormous, you can compile
PCRE with an internal linkage size of 3 or 4 (see the README file in
the source distribution and the pcrebuild documentation for details).
In these cases the limit is substantially larger. However, the speed
of execution is slower.
All values in repeating quantifiers must be less than 65536.
There is no limit to the number of parenthesized subpatterns, but there
can be no more than 65535 capturing subpatterns.
The maximum length of name for a named subpattern is 32 characters, and
the maximum number of named subpatterns is 10000.
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 indef-
inite 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 pcrestack documentation.
UTF-8 AND UNICODE PROPERTY SUPPORT
From release 3.3, PCRE has had some support for character strings
encoded in the UTF-8 format. For release 4.0 this was greatly extended
to cover most common requirements, and in release 5.0 additional sup-
port for Unicode general category properties was added.
In order process UTF-8 strings, you must build PCRE to include UTF-8
support in the code, and, in addition, you must call pcre_compile()
with the PCRE_UTF8 option flag. When you do this, both the pattern and
any subject strings that are matched against it are treated as UTF-8
strings instead of just strings of bytes.
If you compile PCRE with UTF-8 support, but do not use it at run time,
the library will be a bit bigger, but the additional run time overhead
is limited to testing the PCRE_UTF8 flag occasionally, so should not be
very big.
If PCRE is built with Unicode character property support (which implies
UTF-8 support), the escape sequences \p{..}, \P{..}, and \X are sup-
ported. The available properties that can be tested are limited to the
general category properti
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
PCRE 【Perl兼容正则表达式解析库】 (134个子文件)
pcretest.1 28KB
pcregrep.1 22KB
pcre-config.1 2KB
pcrepattern.3 89KB
pcreapi.3 83KB
pcre.3 12KB
pcrecpp.3 12KB
pcrebuild.3 12KB
pcresyntax.3 10KB
pcreposix.3 9KB
pcrepartial.3 8KB
pcrematching.3 8KB
pcrecallout.3 7KB
pcrestack.3 6KB
pcreperform.3 6KB
pcrecompat.3 6KB
pcreprecompile.3 5KB
pcre_dfa_exec.3 3KB
pcre_compile.3 3KB
pcre_exec.3 3KB
pcre_compile2.3 3KB
pcresample.3 2KB
pcre_fullinfo.3 2KB
pcre_config.3 2KB
pcre_get_named_substring.3 1KB
pcre_get_substring_list.3 1KB
pcre_get_substring.3 1KB
pcre_copy_named_substring.3 1KB
pcre_get_stringtable_entries.3 1KB
pcre_study.3 1KB
pcre_copy_substring.3 1KB
pcre_get_stringnumber.3 987B
pcre_refcount.3 747B
pcre_maketables.3 723B
pcre_free_substring.3 580B
pcre_free_substring_list.3 577B
pcre_info.3 485B
pcre_version.3 470B
pcre.bat 154B
pcre_compile.c 198KB
pcre_exec.c 148KB
pcre_ucd.c 143KB
pcre_dfa_exec.c 94KB
pcretest.c 71KB
pcregrep.c 66KB
pcre_study.c 18KB
pcre_get.c 15KB
pcreposix.c 13KB
pcredemo.c 12KB
pcre_tables.c 10KB
pcre_chartables.c 8KB
dftables.c 7KB
pcre_newline.c 6KB
pcre_valid_utf8.c 5KB
pcre_maketables.c 5KB
pcre_try_flipped.c 5KB
pcre_fullinfo.c 5KB
pcre_xclass.c 5KB
pcre_version.c 4KB
pcre_info.c 4KB
pcre_config.c 4KB
pcre_refcount.c 3KB
pcre_ord2utf8.c 3KB
pcre_globals.c 3KB
pcrecpp_unittest.cc 38KB
pcrecpp.cc 31KB
pcre_scanner.cc 5KB
pcre_scanner_unittest.cc 5KB
pcre_stringpiece_unittest.cc 4KB
pcre_stringpiece.cc 2KB
pcre.dsp 5KB
pcre.dsw 531B
pcre_internal.h 47KB
pcrecpp.h 26KB
pcre.h 12KB
config.h 11KB
pcrecpparg.h 7KB
pcre_scanner.h 6KB
pcre_stringpiece.h 6KB
pcreposix.h 5KB
ucp.h 3KB
pcrecpp_internal.h 3KB
pcrepattern.html 93KB
pcreapi.html 88KB
pcretest.html 30KB
pcregrep.html 24KB
pcrebuild.html 14KB
pcrecpp.html 14KB
pcre.html 13KB
pcresyntax.html 13KB
pcreposix.html 10KB
pcrepartial.html 10KB
pcrematching.html 9KB
pcrecallout.html 8KB
pcrestack.html 7KB
pcreperform.html 7KB
pcreprecompile.html 6KB
pcrecompat.html 6KB
index.html 5KB
pcre_dfa_exec.html 4KB
共 134 条
- 1
- 2
资源评论
- BrucceHsu2014-04-14vc6下编译通过 试用了一下还不错
山竹风好大
- 粉丝: 4
- 资源: 45
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功