Documentation update.

This commit is contained in:
Philip.Hazel 2018-06-28 16:56:56 +00:00
parent 5a45a0712a
commit b87a1b5e31
5 changed files with 970 additions and 945 deletions

View File

@ -195,7 +195,7 @@ where d is any number of decimal digits. However, the value of the setting must
be less than the value set (or defaulted) by the caller of <b>pcre2_match()</b>
for it to have any effect. In other words, the pattern writer can lower the
limits set by the programmer, but not raise them. If there is more than one
setting of one of these limits, the lower value is used. The heap limit is
setting of one of these limits, the lower value is used. The heap limit is
specified in kibibytes (units of 1024 bytes).
</P>
<P>
@ -1085,12 +1085,19 @@ Resetting the match start
</b><br>
<P>
The escape sequence \K causes any previously matched characters not to be
included in the final matched sequence. For example, the pattern:
included in the final matched sequence that is returned. For example, the
pattern:
<pre>
foo\Kbar
</pre>
matches "foobar", but reports that it has matched "bar". This feature is
similar to a lookbehind assertion
matches "foobar", but reports that it has matched "bar". \K does not interact
with anchoring in any way. The pattern:
<pre>
^foo\Kbar
</pre>
matches only when the subject begins with "foobar" (in single line mode),
though it again reports the matched string as "bar". This feature is similar to
a lookbehind assertion
<a href="#lookbehind">(described below).</a>
However, in this case, the part of the subject before the real match does not
have to be of fixed length, as lookbehind assertions do. The use of \K does
@ -1107,7 +1114,8 @@ Perl documents that the use of \K within assertions is "not well defined". In
PCRE2, \K is acted upon when it occurs inside positive assertions, but is
ignored in negative assertions. Note that when a pattern such as (?=ab\K)
matches, the reported start of the match can be greater than the end of the
match.
match. Using \K in a lookbehind assertion at the start of a pattern can also
lead to odd effects.
<a name="smallassertions"></a></P>
<br><b>
Simple assertions
@ -1158,18 +1166,18 @@ end.
</P>
<P>
The \G assertion is true only when the current matching position is at the
start point of the match, as specified by the <i>startoffset</i> argument of
<b>pcre2_match()</b>. It differs from \A when the value of <i>startoffset</i> is
non-zero. By calling <b>pcre2_match()</b> multiple times with appropriate
arguments, you can mimic Perl's /g option, and it is in this kind of
implementation where \G can be useful.
start point of the matching process, as specified by the <i>startoffset</i>
argument of <b>pcre2_match()</b>. It differs from \A when the value of
<i>startoffset</i> is non-zero. By calling <b>pcre2_match()</b> multiple times
with appropriate arguments, you can mimic Perl's /g option, and it is in this
kind of implementation where \G can be useful.
</P>
<P>
Note, however, that PCRE2's interpretation of \G, as the start of the current
match, is subtly different from Perl's, which defines it as the end of the
previous match. In Perl, these can be different when the previously matched
string was empty. Because PCRE2 does just one match at a time, it cannot
reproduce this behaviour.
Note, however, that PCRE2's implementation of \G, being true at the starting
character of the matching process, is subtly different from Perl's, which
defines it as true at the end of the previous match. In Perl, these can be
different when the previously matched string was empty. Because PCRE2 does just
one match at a time, it cannot reproduce this behaviour.
</P>
<P>
If all the alternatives of a pattern begin with \G, the expression is anchored
@ -3476,7 +3484,7 @@ Cambridge, England.
</P>
<br><a name="SEC30" href="#TOC1">REVISION</a><br>
<P>
Last updated: 25 April 2018
Last updated: 28 June 2018
<br>
Copyright &copy; 1997-2018 University of Cambridge.
<br>

View File

@ -23,7 +23,7 @@ please consult the man page, in case the conversion went wrong.
<li><a name="TOC8" href="#SEC8">CHARACTER CLASSES</a>
<li><a name="TOC9" href="#SEC9">QUANTIFIERS</a>
<li><a name="TOC10" href="#SEC10">ANCHORS AND SIMPLE ASSERTIONS</a>
<li><a name="TOC11" href="#SEC11">MATCH POINT RESET</a>
<li><a name="TOC11" href="#SEC11">REPORTED MATCH POINT SETTING</a>
<li><a name="TOC12" href="#SEC12">ALTERNATION</a>
<li><a name="TOC13" href="#SEC13">CAPTURING</a>
<li><a name="TOC14" href="#SEC14">ATOMIC GROUPS</a>
@ -387,10 +387,10 @@ but some of them use Unicode properties if PCRE2_UCP is set. You can use
\G first matching position in subject
</PRE>
</P>
<br><a name="SEC11" href="#TOC1">MATCH POINT RESET</a><br>
<br><a name="SEC11" href="#TOC1">REPORTED MATCH POINT SETTING</a><br>
<P>
<pre>
\K reset start of match
\K set reported start of match
</pre>
\K is honoured in positive assertions, but ignored in negative ones.
</P>
@ -600,9 +600,9 @@ Cambridge, England.
</P>
<br><a name="SEC27" href="#TOC1">REVISION</a><br>
<P>
Last updated: 17 June 2017
Last updated: 28 June 2018
<br>
Copyright &copy; 1997-2017 University of Cambridge.
Copyright &copy; 1997-2018 University of Cambridge.
<br>
<p>
Return to the <a href="index.html">PCRE2 index page</a>.

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
.TH PCRE2PATTERN 3 "25 April 2018" "PCRE2 10.32"
.TH PCRE2PATTERN 3 "28 June 2018" "PCRE2 10.32"
.SH NAME
PCRE2 - Perl-compatible regular expressions (revised API)
.SH "PCRE2 REGULAR EXPRESSION DETAILS"
@ -162,7 +162,7 @@ where d is any number of decimal digits. However, the value of the setting must
be less than the value set (or defaulted) by the caller of \fBpcre2_match()\fP
for it to have any effect. In other words, the pattern writer can lower the
limits set by the programmer, but not raise them. If there is more than one
setting of one of these limits, the lower value is used. The heap limit is
setting of one of these limits, the lower value is used. The heap limit is
specified in kibibytes (units of 1024 bytes).
.P
Prior to release 10.30, LIMIT_DEPTH was called LIMIT_RECURSION. This name is
@ -1073,12 +1073,19 @@ sequences but the characters that they represent.)
.rs
.sp
The escape sequence \eK causes any previously matched characters not to be
included in the final matched sequence. For example, the pattern:
included in the final matched sequence that is returned. For example, the
pattern:
.sp
foo\eKbar
.sp
matches "foobar", but reports that it has matched "bar". This feature is
similar to a lookbehind assertion
matches "foobar", but reports that it has matched "bar". \eK does not interact
with anchoring in any way. The pattern:
.sp
^foo\eKbar
.sp
matches only when the subject begins with "foobar" (in single line mode),
though it again reports the matched string as "bar". This feature is similar to
a lookbehind assertion
.\" HTML <a href="#lookbehind">
.\" </a>
(described below).
@ -1100,7 +1107,8 @@ Perl documents that the use of \eK within assertions is "not well defined". In
PCRE2, \eK is acted upon when it occurs inside positive assertions, but is
ignored in negative assertions. Note that when a pattern such as (?=ab\eK)
matches, the reported start of the match can be greater than the end of the
match.
match. Using \eK in a lookbehind assertion at the start of a pattern can also
lead to odd effects.
.
.
.\" HTML <a name="smallassertions"></a>
@ -1152,17 +1160,17 @@ end of the string as well as at the very end, whereas \ez matches only at the
end.
.P
The \eG assertion is true only when the current matching position is at the
start point of the match, as specified by the \fIstartoffset\fP argument of
\fBpcre2_match()\fP. It differs from \eA when the value of \fIstartoffset\fP is
non-zero. By calling \fBpcre2_match()\fP multiple times with appropriate
arguments, you can mimic Perl's /g option, and it is in this kind of
implementation where \eG can be useful.
start point of the matching process, as specified by the \fIstartoffset\fP
argument of \fBpcre2_match()\fP. It differs from \eA when the value of
\fIstartoffset\fP is non-zero. By calling \fBpcre2_match()\fP multiple times
with appropriate arguments, you can mimic Perl's /g option, and it is in this
kind of implementation where \eG can be useful.
.P
Note, however, that PCRE2's interpretation of \eG, as the start of the current
match, is subtly different from Perl's, which defines it as the end of the
previous match. In Perl, these can be different when the previously matched
string was empty. Because PCRE2 does just one match at a time, it cannot
reproduce this behaviour.
Note, however, that PCRE2's implementation of \eG, being true at the starting
character of the matching process, is subtly different from Perl's, which
defines it as true at the end of the previous match. In Perl, these can be
different when the previously matched string was empty. Because PCRE2 does just
one match at a time, it cannot reproduce this behaviour.
.P
If all the alternatives of a pattern begin with \eG, the expression is anchored
to the starting match position, and the "anchored" flag is set in the compiled
@ -3503,6 +3511,6 @@ Cambridge, England.
.rs
.sp
.nf
Last updated: 25 April 2018
Last updated: 28 June 2018
Copyright (c) 1997-2018 University of Cambridge.
.fi

View File

@ -1,4 +1,4 @@
.TH PCRE2SYNTAX 3 "17 June 2017" "PCRE2 10.30"
.TH PCRE2SYNTAX 3 "28 June 2018" "PCRE2 10.32"
.SH NAME
PCRE2 - Perl-compatible regular expressions (revised API)
.SH "PCRE2 REGULAR EXPRESSION SYNTAX SUMMARY"
@ -361,10 +361,10 @@ but some of them use Unicode properties if PCRE2_UCP is set. You can use
\eG first matching position in subject
.
.
.SH "MATCH POINT RESET"
.SH "REPORTED MATCH POINT SETTING"
.rs
.sp
\eK reset start of match
\eK set reported start of match
.sp
\eK is honoured in positive assertions, but ignored in negative ones.
.
@ -589,6 +589,6 @@ Cambridge, England.
.rs
.sp
.nf
Last updated: 17 June 2017
Copyright (c) 1997-2017 University of Cambridge.
Last updated: 28 June 2018
Copyright (c) 1997-2018 University of Cambridge.
.fi