diff options
author | Kirill Volinsky <Mataes2007@gmail.com> | 2017-11-29 12:27:04 +0300 |
---|---|---|
committer | Kirill Volinsky <Mataes2007@gmail.com> | 2017-11-29 12:27:04 +0300 |
commit | 4b47e5a4bb656ebb5bd493d1ad6f79eaf4f298e1 (patch) | |
tree | e3cd7797bb7bff6375e3c93e614eb41620371c70 /libs/Pcre16/docs/doc/html | |
parent | 89f3cf8bbb9dc1fa0fe72f6af6638ac086c7e011 (diff) |
Pcre16: lib updated to 8.41
Diffstat (limited to 'libs/Pcre16/docs/doc/html')
-rw-r--r-- | libs/Pcre16/docs/doc/html/NON-AUTOTOOLS-BUILD.txt | 16 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/README.txt | 29 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcre.html | 35 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcre_config.html | 6 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcre_fullinfo.html | 16 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcreapi.html | 9 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcrecompat.html | 2 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcrejit.html | 57 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcrepattern.html | 83 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcresyntax.html | 25 | ||||
-rw-r--r-- | libs/Pcre16/docs/doc/html/pcretest.html | 9 |
11 files changed, 222 insertions, 65 deletions
diff --git a/libs/Pcre16/docs/doc/html/NON-AUTOTOOLS-BUILD.txt b/libs/Pcre16/docs/doc/html/NON-AUTOTOOLS-BUILD.txt index cddf3e0699..3910059106 100644 --- a/libs/Pcre16/docs/doc/html/NON-AUTOTOOLS-BUILD.txt +++ b/libs/Pcre16/docs/doc/html/NON-AUTOTOOLS-BUILD.txt @@ -1,6 +1,14 @@ Building PCRE without using autotools ------------------------------------- +NOTE: This document relates to PCRE releases that use the original API, with +library names libpcre, libpcre16, and libpcre32. January 2015 saw the first +release of a new API, known as PCRE2, with release numbers starting at 10.00 +and library names libpcre2-8, libpcre2-16, and libpcre2-32. The old libraries +(now called PCRE1) are still being maintained for bug fixes, but there will be +no new development. New projects are advised to use the new PCRE2 libraries. + + This document contains the following sections: General @@ -756,9 +764,9 @@ required. For details, please see this web site: http://www.zaconsultants.net -There is also a mirror here: - - http://www.vsoft-software.com/downloads.html +You may download PCRE from WWW.CBTTAPE.ORG, file 882. Everything, source and +executable, is in EBCDIC and native z/OS file formats and this is the +recommended download site. ========================== -Last Updated: 14 May 2013 +Last Updated: 25 June 2015 diff --git a/libs/Pcre16/docs/doc/html/README.txt b/libs/Pcre16/docs/doc/html/README.txt index 88f2dfd4ef..4887ebf350 100644 --- a/libs/Pcre16/docs/doc/html/README.txt +++ b/libs/Pcre16/docs/doc/html/README.txt @@ -1,7 +1,16 @@ README file for PCRE (Perl-compatible regular expression library) ----------------------------------------------------------------- -The latest release of PCRE is always available in three alternative formats +NOTE: This set of files relates to PCRE releases that use the original API, +with library names libpcre, libpcre16, and libpcre32. January 2015 saw the +first release of a new API, known as PCRE2, with release numbers starting at +10.00 and library names libpcre2-8, libpcre2-16, and libpcre2-32. The old +libraries (now called PCRE1) are still being maintained for bug fixes, but +there will be no new development. New projects are advised to use the new PCRE2 +libraries. + + +The latest release of PCRE1 is always available in three alternative formats from: ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-xxx.tar.gz @@ -45,14 +54,16 @@ the 16-bit library, which processes strings of 16-bit values, and one for the 32-bit library, which processes strings of 32-bit values. The distribution also includes a set of C++ wrapper functions (see the pcrecpp man page for details), courtesy of Google Inc., which can be used to call the 8-bit PCRE library from -C++. +C++. Other C++ wrappers have been created from time to time. See, for example: +https://github.com/YasserAsmi/regexp, which aims to be simple and similar in +style to the C API. -In addition, there is a set of C wrapper functions (again, just for the 8-bit -library) that are based on the POSIX regular expression API (see the pcreposix -man page). These end up in the library called libpcreposix. Note that this just -provides a POSIX calling interface to PCRE; the regular expressions themselves -still follow Perl syntax and semantics. The POSIX API is restricted, and does -not give full access to all of PCRE's facilities. +The distribution also contains a set of C wrapper functions (again, just for +the 8-bit library) that are based on the POSIX regular expression API (see the +pcreposix man page). These end up in the library called libpcreposix. Note that +this just provides a POSIX calling interface to PCRE; the regular expressions +themselves still follow Perl syntax and semantics. The POSIX API is restricted, +and does not give full access to all of PCRE's facilities. The header file for the POSIX-style functions is called pcreposix.h. The official POSIX name is regex.h, but I did not want to risk possible problems @@ -988,4 +999,4 @@ pcre_xxx, one with the name pcre16_xx, and a third with the name pcre32_xxx. Philip Hazel Email local part: ph10 Email domain: cam.ac.uk -Last updated: 17 January 2014 +Last updated: 10 February 2015 diff --git a/libs/Pcre16/docs/doc/html/pcre.html b/libs/Pcre16/docs/doc/html/pcre.html index c2b29aa812..c87b106642 100644 --- a/libs/Pcre16/docs/doc/html/pcre.html +++ b/libs/Pcre16/docs/doc/html/pcre.html @@ -13,13 +13,24 @@ from the original man page. If there is any nonsense in it, please consult the man page, in case the conversion went wrong. <br> <ul> -<li><a name="TOC1" href="#SEC1">INTRODUCTION</a> -<li><a name="TOC2" href="#SEC2">SECURITY CONSIDERATIONS</a> -<li><a name="TOC3" href="#SEC3">USER DOCUMENTATION</a> -<li><a name="TOC4" href="#SEC4">AUTHOR</a> -<li><a name="TOC5" href="#SEC5">REVISION</a> +<li><a name="TOC1" href="#SEC1">PLEASE TAKE NOTE</a> +<li><a name="TOC2" href="#SEC2">INTRODUCTION</a> +<li><a name="TOC3" href="#SEC3">SECURITY CONSIDERATIONS</a> +<li><a name="TOC4" href="#SEC4">USER DOCUMENTATION</a> +<li><a name="TOC5" href="#SEC5">AUTHOR</a> +<li><a name="TOC6" href="#SEC6">REVISION</a> </ul> -<br><a name="SEC1" href="#TOC1">INTRODUCTION</a><br> +<br><a name="SEC1" href="#TOC1">PLEASE TAKE NOTE</a><br> +<P> +This document relates to PCRE releases that use the original API, +with library names libpcre, libpcre16, and libpcre32. January 2015 saw the +first release of a new API, known as PCRE2, with release numbers starting at +10.00 and library names libpcre2-8, libpcre2-16, and libpcre2-32. The old +libraries (now called PCRE1) are still being maintained for bug fixes, but +there will be no new development. New projects are advised to use the new PCRE2 +libraries. +</P> +<br><a name="SEC2" href="#TOC1">INTRODUCTION</a><br> <P> The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl, with just a few @@ -115,7 +126,7 @@ 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. </P> -<br><a name="SEC2" href="#TOC1">SECURITY CONSIDERATIONS</a><br> +<br><a name="SEC3" href="#TOC1">SECURITY CONSIDERATIONS</a><br> <P> 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 @@ -149,7 +160,7 @@ against this: see the PCRE_EXTRA_MATCH_LIMIT feature in the <a href="pcreapi.html"><b>pcreapi</b></a> page. </P> -<br><a name="SEC3" href="#TOC1">USER DOCUMENTATION</a><br> +<br><a name="SEC4" href="#TOC1">USER DOCUMENTATION</a><br> <P> The user documentation for PCRE comprises a number of different sections. In the "man" format, each of these is a separate "man page". In the HTML format, @@ -188,7 +199,7 @@ follows: In the "man" and HTML formats, there is also a short page for each C library function, listing its arguments and results. </P> -<br><a name="SEC4" href="#TOC1">AUTHOR</a><br> +<br><a name="SEC5" href="#TOC1">AUTHOR</a><br> <P> Philip Hazel <br> @@ -202,11 +213,11 @@ Putting an actual email address here seems to have been a spam magnet, so I've taken it away. If you want to email me, use my two initials, followed by the two digits 10, at the domain cam.ac.uk. </P> -<br><a name="SEC5" href="#TOC1">REVISION</a><br> +<br><a name="SEC6" href="#TOC1">REVISION</a><br> <P> -Last updated: 08 January 2014 +Last updated: 10 February 2015 <br> -Copyright © 1997-2014 University of Cambridge. +Copyright © 1997-2015 University of Cambridge. <br> <p> Return to the <a href="index.html">PCRE index page</a>. diff --git a/libs/Pcre16/docs/doc/html/pcre_config.html b/libs/Pcre16/docs/doc/html/pcre_config.html index bcdcdded70..72fb9caa1f 100644 --- a/libs/Pcre16/docs/doc/html/pcre_config.html +++ b/libs/Pcre16/docs/doc/html/pcre_config.html @@ -39,8 +39,10 @@ arguments are as follows: <i>where</i> Points to where to put the data </pre> The <i>where</i> argument must point to an integer variable, except for -PCRE_CONFIG_MATCH_LIMIT and PCRE_CONFIG_MATCH_LIMIT_RECURSION, when it must -point to an unsigned long integer. The available codes are: +PCRE_CONFIG_MATCH_LIMIT, PCRE_CONFIG_MATCH_LIMIT_RECURSION, and +PCRE_CONFIG_PARENS_LIMIT, when it must point to an unsigned long integer, +and for PCRE_CONFIG_JITTARGET, when it must point to a const char*. +The available codes are: <pre> PCRE_CONFIG_JIT Availability of just-in-time compiler support (1=yes 0=no) diff --git a/libs/Pcre16/docs/doc/html/pcre_fullinfo.html b/libs/Pcre16/docs/doc/html/pcre_fullinfo.html index b88fc1155b..2b7c72b3b9 100644 --- a/libs/Pcre16/docs/doc/html/pcre_fullinfo.html +++ b/libs/Pcre16/docs/doc/html/pcre_fullinfo.html @@ -57,6 +57,10 @@ The following information is available: PCRE_INFO_JITSIZE Size of JIT compiled code PCRE_INFO_LASTLITERAL Literal last data unit required PCRE_INFO_MINLENGTH Lower bound length of matching strings + PCRE_INFO_MATCHEMPTY Return 1 if the pattern can match an empty string, + 0 otherwise + PCRE_INFO_MATCHLIMIT Match limit if set, otherwise PCRE_RROR_UNSET + PCRE_INFO_MAXLOOKBEHIND Length (in characters) of the longest lookbehind assertion PCRE_INFO_NAMECOUNT Number of named subpatterns PCRE_INFO_NAMEENTRYSIZE Size of name table entry PCRE_INFO_NAMETABLE Pointer to name table @@ -72,6 +76,7 @@ The following information is available: 2 if the first character is at the start of the data string or after a newline, and 0 otherwise + PCRE_INFO_RECURSIONLIMIT Recursion limit if set, otherwise PCRE_ERROR_UNSET PCRE_INFO_REQUIREDCHAR Literal last data unit required PCRE_INFO_REQUIREDCHARFLAGS Returns 1 if the last data character is set (which can then be retrieved using PCRE_INFO_REQUIREDCHAR); 0 otherwise @@ -79,14 +84,18 @@ The following information is available: The <i>where</i> argument must point to an integer variable, except for the following <i>what</i> values: <pre> - PCRE_INFO_DEFAULT_TABLES const unsigned char * - PCRE_INFO_FIRSTTABLE const unsigned char * + PCRE_INFO_DEFAULT_TABLES const uint8_t * + PCRE_INFO_FIRSTCHARACTER uint32_t + PCRE_INFO_FIRSTTABLE const uint8_t * + PCRE_INFO_JITSIZE size_t + PCRE_INFO_MATCHLIMIT uint32_t PCRE_INFO_NAMETABLE PCRE_SPTR16 (16-bit library) PCRE_INFO_NAMETABLE PCRE_SPTR32 (32-bit library) PCRE_INFO_NAMETABLE const unsigned char * (8-bit library) PCRE_INFO_OPTIONS unsigned long int PCRE_INFO_SIZE size_t - PCRE_INFO_FIRSTCHARACTER uint32_t + PCRE_INFO_STUDYSIZE size_t + PCRE_INFO_RECURSIONLIMIT uint32_t PCRE_INFO_REQUIREDCHAR uint32_t </pre> The yield of the function is zero on success or: @@ -95,6 +104,7 @@ The yield of the function is zero on success or: the argument <i>where</i> was NULL PCRE_ERROR_BADMAGIC the "magic number" was not found PCRE_ERROR_BADOPTION the value of <i>what</i> was invalid + PCRE_ERROR_UNSET the option was not set </PRE> </P> <P> diff --git a/libs/Pcre16/docs/doc/html/pcreapi.html b/libs/Pcre16/docs/doc/html/pcreapi.html index b401ecc76d..2d7adf185a 100644 --- a/libs/Pcre16/docs/doc/html/pcreapi.html +++ b/libs/Pcre16/docs/doc/html/pcreapi.html @@ -315,9 +315,8 @@ documentation for details of how to do this. It is a non-standard way of building PCRE, for use in environments that have limited stacks. Because of the greater use of memory management, it runs more slowly. Separate functions are provided so that special-purpose external code can be used for this case. When -used, these functions are always called in a stack-like manner (last obtained, -first freed), and always for memory blocks of the same size. There is a -discussion about PCRE's stack usage in the +used, these functions always allocate memory blocks of the same size. There is +a discussion about PCRE's stack usage in the <a href="pcrestack.html"><b>pcrestack</b></a> documentation. </P> @@ -2913,9 +2912,9 @@ Cambridge CB2 3QH, England. </P> <br><a name="SEC26" href="#TOC1">REVISION</a><br> <P> -Last updated: 09 February 2014 +Last updated: 18 December 2015 <br> -Copyright © 1997-2014 University of Cambridge. +Copyright © 1997-2015 University of Cambridge. <br> <p> Return to the <a href="index.html">PCRE index page</a>. diff --git a/libs/Pcre16/docs/doc/html/pcrecompat.html b/libs/Pcre16/docs/doc/html/pcrecompat.html index 3e6226692e..d95570ef17 100644 --- a/libs/Pcre16/docs/doc/html/pcrecompat.html +++ b/libs/Pcre16/docs/doc/html/pcrecompat.html @@ -128,7 +128,7 @@ the pattern /^(a(b)?)+$/ in Perl leaves $2 unset, but in PCRE it is set to "b". 14. PCRE's handling of duplicate subpattern numbers and duplicate subpattern names is not as general as Perl's. This is a consequence of the fact the PCRE works internally just with numbers, using an external table to translate -between numbers and names. In particular, a pattern such as (?|(?<a>A)|(?<b)B), +between numbers and names. In particular, a pattern such as (?|(?<a>A)|(?<b>B), where the two capturing parentheses have the same number but different names, is not supported, and causes an error at compile time. If it were allowed, it would not be possible to distinguish which parentheses matched, because both diff --git a/libs/Pcre16/docs/doc/html/pcrejit.html b/libs/Pcre16/docs/doc/html/pcrejit.html index 210f1da026..abb342522f 100644 --- a/libs/Pcre16/docs/doc/html/pcrejit.html +++ b/libs/Pcre16/docs/doc/html/pcrejit.html @@ -79,9 +79,12 @@ API that is JIT-specific. </P> <P> If your program may sometimes be linked with versions of PCRE that are older -than 8.20, but you want to use JIT when it is available, you can test -the values of PCRE_MAJOR and PCRE_MINOR, or the existence of a JIT macro such -as PCRE_CONFIG_JIT, for compile-time control of your code. +than 8.20, but you want to use JIT when it is available, you can test the +values of PCRE_MAJOR and PCRE_MINOR, or the existence of a JIT macro such as +PCRE_CONFIG_JIT, for compile-time control of your code. Also beware that the +<b>pcre_jit_exec()</b> function was not available at all before 8.32, +and may not be available at all if PCRE isn't compiled with +--enable-jit. See the "JIT FAST PATH API" section below for details. </P> <br><a name="SEC4" href="#TOC1">SIMPLE USE OF JIT</a><br> <P> @@ -119,6 +122,20 @@ when you call <b>pcre_study()</b>: PCRE_STUDY_JIT_PARTIAL_HARD_COMPILE PCRE_STUDY_JIT_PARTIAL_SOFT_COMPILE </pre> +If using <b>pcre_jit_exec()</b> and supporting a pre-8.32 version of +PCRE, you can insert: +<pre> + #if PCRE_MAJOR >= 8 && PCRE_MINOR >= 32 + pcre_jit_exec(...); + #else + pcre_exec(...) + #endif +</pre> +but as described in the "JIT FAST PATH API" section below this assumes +version 8.32 and later are compiled with --enable-jit, which may +break. +<br> +<br> The JIT compiler generates different optimized code for each of the three modes (normal, soft partial, hard partial). When <b>pcre_exec()</b> is called, the appropriate code is run if it is available. Otherwise, the pattern is @@ -428,6 +445,36 @@ fast path, and if invalid data is passed, the result is undefined. Bypassing the sanity checks and the <b>pcre_exec()</b> wrapping can give speedups of more than 10%. </P> +<P> +Note that the <b>pcre_jit_exec()</b> function is not available in versions of +PCRE before 8.32 (released in November 2012). If you need to support versions +that old you must either use the slower <b>pcre_exec()</b>, or switch between +the two codepaths by checking the values of PCRE_MAJOR and PCRE_MINOR. +</P> +<P> +Due to an unfortunate implementation oversight, even in versions 8.32 +and later there will be no <b>pcre_jit_exec()</b> stub function defined +when PCRE is compiled with --disable-jit, which is the default, and +there's no way to detect whether PCRE was compiled with --enable-jit +via a macro. +</P> +<P> +If you need to support versions older than 8.32, or versions that may +not build with --enable-jit, you must either use the slower +<b>pcre_exec()</b>, or switch between the two codepaths by checking the +values of PCRE_MAJOR and PCRE_MINOR. +</P> +<P> +Switching between the two by checking the version assumes that all the +versions being targeted are built with --enable-jit. To also support +builds that may use --disable-jit either <b>pcre_exec()</b> must be +used, or a compile-time check for JIT via <b>pcre_config()</b> (which +assumes the runtime environment will be the same), or as the Git +project decided to do, simply assume that <b>pcre_jit_exec()</b> is +present in 8.32 or later unless a compile-time flag is provided, see +the "grep: un-break building with PCRE >= 8.32 without --enable-jit" +commit in git.git for an example of that. +</P> <br><a name="SEC12" href="#TOC1">SEE ALSO</a><br> <P> <b>pcreapi</b>(3) @@ -443,9 +490,9 @@ Cambridge CB2 3QH, England. </P> <br><a name="SEC14" href="#TOC1">REVISION</a><br> <P> -Last updated: 17 March 2013 +Last updated: 05 July 2017 <br> -Copyright © 1997-2013 University of Cambridge. +Copyright © 1997-2017 University of Cambridge. <br> <p> Return to the <a href="index.html">PCRE index page</a>. diff --git a/libs/Pcre16/docs/doc/html/pcrepattern.html b/libs/Pcre16/docs/doc/html/pcrepattern.html index c06d1e03f1..96fc72986f 100644 --- a/libs/Pcre16/docs/doc/html/pcrepattern.html +++ b/libs/Pcre16/docs/doc/html/pcrepattern.html @@ -329,7 +329,8 @@ A second use of backslash provides a way of encoding non-printing characters in patterns in a visible manner. There is no restriction on the appearance of non-printing characters, apart from the binary zero that terminates a pattern, but when a pattern is being prepared by text editing, it is often easier to use -one of the following escape sequences than the binary character it represents: +one of the following escape sequences than the binary character it represents. +In an ASCII or Unicode environment, these escapes are as follows: <pre> \a alarm, that is, the BEL character (hex 07) \cx "control-x", where x is any ASCII character @@ -353,19 +354,33 @@ data item (byte or 16-bit value) following \c has a value greater than 127, a compile-time error occurs. This locks out non-ASCII characters in all modes. </P> <P> -The \c facility was designed for use with ASCII characters, but with the -extension to Unicode it is even less useful than it once was. It is, however, -recognized when PCRE is compiled in EBCDIC mode, where data items are always -bytes. In this mode, all values are valid after \c. If the next character is a -lower case letter, it is converted to upper case. Then the 0xc0 bits of the -byte are inverted. Thus \cA becomes hex 01, as in ASCII (A is C1), but because -the EBCDIC letters are disjoint, \cZ becomes hex 29 (Z is E9), and other -characters also generate different values. +When PCRE is compiled in EBCDIC mode, \a, \e, \f, \n, \r, and \t +generate the appropriate EBCDIC code values. The \c escape is processed +as specified for Perl in the <b>perlebcdic</b> document. The only characters +that are allowed after \c are A-Z, a-z, or one of @, [, \, ], ^, _, or ?. Any +other character provokes a compile-time error. The sequence \c@ encodes +character code 0; after \c the letters (in either case) encode characters 1-26 +(hex 01 to hex 1A); [, \, ], ^, and _ encode characters 27-31 (hex 1B to hex +1F), and \c? becomes either 255 (hex FF) or 95 (hex 5F). +</P> +<P> +Thus, apart from \c?, these escapes generate the same character code values as +they do in an ASCII environment, though the meanings of the values mostly +differ. For example, \cG always generates code value 7, which is BEL in ASCII +but DEL in EBCDIC. +</P> +<P> +The sequence \c? generates DEL (127, hex 7F) in an ASCII environment, but +because 127 is not a control character in EBCDIC, Perl makes it generate the +APC character. Unfortunately, there are several variants of EBCDIC. In most of +them the APC character has the value 255 (hex FF), but in the one Perl calls +POSIX-BC its value is 95 (hex 5F). If certain other characters have POSIX-BC +values, PCRE makes \c? generate 95; otherwise it generates 255. </P> <P> After \0 up to two further octal digits are read. If there are fewer than two -digits, just those that are present are used. Thus the sequence \0\x\07 -specifies two binary zeros followed by a BEL character (code value 7). Make +digits, just those that are present are used. Thus the sequence \0\x\015 +specifies two binary zeros followed by a CR character (code value 13). Make sure you supply two digits after the initial zero if the pattern character that follows is itself an octal digit. </P> @@ -703,6 +718,7 @@ Armenian, Avestan, Balinese, Bamum, +Bassa_Vah, Batak, Bengali, Bopomofo, @@ -712,6 +728,7 @@ Buginese, Buhid, Canadian_Aboriginal, Carian, +Caucasian_Albanian, Chakma, Cham, Cherokee, @@ -722,11 +739,14 @@ Cypriot, Cyrillic, Deseret, Devanagari, +Duployan, Egyptian_Hieroglyphs, +Elbasan, Ethiopic, Georgian, Glagolitic, Gothic, +Grantha, Greek, Gujarati, Gurmukhi, @@ -746,40 +766,56 @@ Katakana, Kayah_Li, Kharoshthi, Khmer, +Khojki, +Khudawadi, Lao, Latin, Lepcha, Limbu, +Linear_A, Linear_B, Lisu, Lycian, Lydian, +Mahajani, Malayalam, Mandaic, +Manichaean, Meetei_Mayek, +Mende_Kikakui, Meroitic_Cursive, Meroitic_Hieroglyphs, Miao, +Modi, Mongolian, +Mro, Myanmar, +Nabataean, New_Tai_Lue, Nko, Ogham, +Ol_Chiki, Old_Italic, +Old_North_Arabian, +Old_Permic, Old_Persian, Old_South_Arabian, Old_Turkic, -Ol_Chiki, Oriya, Osmanya, +Pahawh_Hmong, +Palmyrene, +Pau_Cin_Hau, Phags_Pa, Phoenician, +Psalter_Pahlavi, Rejang, Runic, Samaritan, Saurashtra, Sharada, Shavian, +Siddham, Sinhala, Sora_Sompeng, Sundanese, @@ -797,8 +833,10 @@ Thaana, Thai, Tibetan, Tifinagh, +Tirhuta, Ugaritic, Vai, +Warang_Citi, Yi. </P> <P> @@ -1474,13 +1512,8 @@ J, U and X respectively. <P> When one of these option changes occurs at top level (that is, not inside subpattern parentheses), the change applies to the remainder of the pattern -that follows. If the change is placed right at the start of a pattern, PCRE -extracts it into the global options (and it will therefore show up in data -extracted by the <b>pcre_fullinfo()</b> function). -</P> -<P> -An option change within a subpattern (see below for a description of -subpatterns) affects only that part of the subpattern that follows it, so +that follows. An option change within a subpattern (see below for a description +of subpatterns) affects only that part of the subpattern that follows it, so <pre> (a(?i)b)c </pre> @@ -2122,6 +2155,14 @@ capturing is carried out only for positive assertions. (Perl sometimes, but not always, does do capturing in negative assertions.) </P> <P> +WARNING: If a positive assertion containing one or more capturing subpatterns +succeeds, but failure to match later in the pattern causes backtracking over +this assertion, the captures within the assertion are reset only if no higher +numbered captures are already set. This is, unfortunately, a fundamental +limitation of the current implementation, and as PCRE1 is now in +maintenance-only status, it is unlikely ever to change. +</P> +<P> For compatibility with Perl, assertion subpatterns may be repeated; though it makes no sense to assert the same thing several times, the side effect of capturing parentheses may occasionally be useful. In practice, there only three @@ -3226,9 +3267,9 @@ Cambridge CB2 3QH, England. </P> <br><a name="SEC30" href="#TOC1">REVISION</a><br> <P> -Last updated: 08 January 2014 +Last updated: 23 October 2016 <br> -Copyright © 1997-2014 University of Cambridge. +Copyright © 1997-2016 University of Cambridge. <br> <p> Return to the <a href="index.html">PCRE index page</a>. diff --git a/libs/Pcre16/docs/doc/html/pcresyntax.html b/libs/Pcre16/docs/doc/html/pcresyntax.html index 89f35737b4..5896b9e068 100644 --- a/libs/Pcre16/docs/doc/html/pcresyntax.html +++ b/libs/Pcre16/docs/doc/html/pcresyntax.html @@ -171,6 +171,7 @@ Armenian, Avestan, Balinese, Bamum, +Bassa_Vah, Batak, Bengali, Bopomofo, @@ -180,6 +181,7 @@ Buginese, Buhid, Canadian_Aboriginal, Carian, +Caucasian_Albanian, Chakma, Cham, Cherokee, @@ -190,11 +192,14 @@ Cypriot, Cyrillic, Deseret, Devanagari, +Duployan, Egyptian_Hieroglyphs, +Elbasan, Ethiopic, Georgian, Glagolitic, Gothic, +Grantha, Greek, Gujarati, Gurmukhi, @@ -214,40 +219,56 @@ Katakana, Kayah_Li, Kharoshthi, Khmer, +Khojki, +Khudawadi, Lao, Latin, Lepcha, Limbu, +Linear_A, Linear_B, Lisu, Lycian, Lydian, +Mahajani, Malayalam, Mandaic, +Manichaean, Meetei_Mayek, +Mende_Kikakui, Meroitic_Cursive, Meroitic_Hieroglyphs, Miao, +Modi, Mongolian, +Mro, Myanmar, +Nabataean, New_Tai_Lue, Nko, Ogham, +Ol_Chiki, Old_Italic, +Old_North_Arabian, +Old_Permic, Old_Persian, Old_South_Arabian, Old_Turkic, -Ol_Chiki, Oriya, Osmanya, +Pahawh_Hmong, +Palmyrene, +Pau_Cin_Hau, Phags_Pa, Phoenician, +Psalter_Pahlavi, Rejang, Runic, Samaritan, Saurashtra, Sharada, Shavian, +Siddham, Sinhala, Sora_Sompeng, Sundanese, @@ -265,8 +286,10 @@ Thaana, Thai, Tibetan, Tifinagh, +Tirhuta, Ugaritic, Vai, +Warang_Citi, Yi. </P> <br><a name="SEC8" href="#TOC1">CHARACTER CLASSES</a><br> diff --git a/libs/Pcre16/docs/doc/html/pcretest.html b/libs/Pcre16/docs/doc/html/pcretest.html index 839fabf189..ba540d3c38 100644 --- a/libs/Pcre16/docs/doc/html/pcretest.html +++ b/libs/Pcre16/docs/doc/html/pcretest.html @@ -74,6 +74,11 @@ newline as data characters. However, in some Windows environments character 26 maximum portability, therefore, it is safest to use only ASCII characters in <b>pcretest</b> input files. </P> +<P> +The input is processed using using C's string functions, so must not +contain binary zeroes, even though in Unix-like environments, <b>fgets()</b> +treats any bytes other than newline as data characters. +</P> <br><a name="SEC3" href="#TOC1">PCRE's 8-BIT, 16-BIT AND 32-BIT LIBRARIES</a><br> <P> From release 8.30, two separate PCRE libraries can be built. The original one @@ -1149,9 +1154,9 @@ Cambridge CB2 3QH, England. </P> <br><a name="SEC17" href="#TOC1">REVISION</a><br> <P> -Last updated: 09 February 2014 +Last updated: 23 February 2017 <br> -Copyright © 1997-2014 University of Cambridge. +Copyright © 1997-2017 University of Cambridge. <br> <p> Return to the <a href="index.html">PCRE index page</a>. |