Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions doc/html/pcre2pattern.html
Original file line number Diff line number Diff line change
Expand Up @@ -3147,8 +3147,7 @@ <h3>
(?(VERSION&#62;=10.4)yes|no)
</pre>
This pattern matches "yes" if the PCRE2 version is greater or equal to 10.4, or
"no" otherwise. The fractional part of the version number may not contain more
than two digits.
"no" otherwise. The fractional part of the version number could be ommited.
</p>
<h3>
Assertion conditions
Expand Down Expand Up @@ -4184,7 +4183,7 @@ <h2><a name="SEC33" href="#TOC1">AUTHOR</a></h2>
</p>
<h2><a name="SEC34" href="#TOC1">REVISION</a></h2>
<p>
Last updated: 29 August 2025
Last updated: 2 September 2025
<br>
Copyright &copy; 1997-2024 University of Cambridge.
<br>
Expand Down
50 changes: 27 additions & 23 deletions doc/html/pcre2syntax.html
Original file line number Diff line number Diff line change
Expand Up @@ -650,22 +650,26 @@ <h2><a name="SEC29" href="#TOC1">CONDITIONAL PATTERNS</a></h2>
(?(condition)yes-pattern)
(?(condition)yes-pattern|no-pattern)

(?(n) absolute reference condition
(?(+n) relative reference condition (PCRE2 extension)
(?(-n) relative reference condition (PCRE2 extension)
(?(&#60;name&#62;) named reference condition (Perl)
(?('name') named reference condition (Perl)
(?(name) named reference condition (PCRE2, deprecated)
(?(R) overall recursion condition
(?(Rn) specific numbered group recursion condition
(?(R&name) specific named group recursion condition
(?(DEFINE) define groups for reference
(?(VERSION[&#62;]=n.m) test PCRE2 version
(?(assert) assertion condition
(?(n) absolute reference condition
(?(+n) relative reference condition (PCRE2 extension)
(?(-n) relative reference condition (PCRE2 extension)
(?(&#60;name&#62;) named reference condition (Perl)
(?('name') named reference condition (Perl)
(?(name) named reference condition (PCRE2, deprecated)
(?(R) overall recursion condition
(?(Rn) specific numbered group recursion condition
(?(R&name) specific named group recursion condition
(?(DEFINE) define groups for reference
(?(VERSION[&#62;]=n[.m]) test PCRE2 version
(?(assert) assertion condition
</pre>
Note the ambiguity of (?(R) and (?(Rn) which might be named reference
conditions or recursion tests. Such a condition is interpreted as a reference
condition if the relevant named group exists.
<br>
<br>
The parts within brackets for the VERSION conditional syntax could be ommited.
The fractional part of the version number defaults to 0 in that case.
</p>
<h2><a name="SEC30" href="#TOC1">BACKTRACKING CONTROL</a></h2>
<p>
Expand Down Expand Up @@ -727,16 +731,16 @@ <h2><a name="SEC32" href="#TOC1">REPLACEMENT STRINGS</a></h2>
1. Backslash is an escape character, and the forms described in "ESCAPED
CHARACTERS" above are recognized. Also:
<pre>
\Q...\E can be used to suppress interpretation
\l force the next character to lower case
\u force the next character to upper case
\L force subsequent characters to lower case
\U force subsequent characters to upper case
\u\L force next character to upper case, then all lower
\l\U force next character to lower case, then all upper
\E end \L or \U case forcing
\b backspace character (note: as in character class in pattern)
\v vertical tab character (note: not the same as in a pattern)
\Q...\E can be used to suppress interpretation
\l force the next character to lower case
\u force the next character to upper case
\L force subsequent characters to lower case
\U force subsequent characters to upper case
\u\L force next character to upper case, then all lower
\l\U force next character to lower case, then all upper
\E end \L or \U case forcing
\b backspace character (note: as in character class in pattern)
\v vertical tab character (note: not the same as in a pattern)
</pre>
2. The Python form \g&#60;n&#62;, where the angle brackets are part of the syntax and
<i>n</i> is either a group name or a number, is recognized as an alternative way
Expand Down Expand Up @@ -767,7 +771,7 @@ <h2><a name="SEC34" href="#TOC1">AUTHOR</a></h2>
</p>
<h2><a name="SEC35" href="#TOC1">REVISION</a></h2>
<p>
Last updated: 28 March 2025
Last updated: 2 September 2025
<br>
Copyright &copy; 1997-2024 University of Cambridge.
<br>
Expand Down
65 changes: 34 additions & 31 deletions doc/pcre2.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9792,8 +9792,8 @@ CONDITIONAL GROUPS
(?(VERSION>=10.4)yes|no)

This pattern matches "yes" if the PCRE2 version is greater or equal to
10.4, or "no" otherwise. The fractional part of the version number may
not contain more than two digits.
10.4, or "no" otherwise. The fractional part of the version number
could be ommited.

Assertion conditions

Expand Down Expand Up @@ -10757,11 +10757,11 @@ AUTHOR

REVISION

Last updated: 29 August 2025
Last updated: 2 September 2025
Copyright (c) 1997-2024 University of Cambridge.


PCRE2 10.47-DEV 29 August 2025 PCRE2PATTERN(3)
PCRE2 10.47-DEV 2 September 2025 PCRE2PATTERN(3)
------------------------------------------------------------------------------


Expand Down Expand Up @@ -12262,23 +12262,27 @@ CONDITIONAL PATTERNS
(?(condition)yes-pattern)
(?(condition)yes-pattern|no-pattern)

(?(n) absolute reference condition
(?(+n) relative reference condition (PCRE2 extension)
(?(-n) relative reference condition (PCRE2 extension)
(?(<name>) named reference condition (Perl)
(?('name') named reference condition (Perl)
(?(name) named reference condition (PCRE2, deprecated)
(?(R) overall recursion condition
(?(Rn) specific numbered group recursion condition
(?(R&name) specific named group recursion condition
(?(DEFINE) define groups for reference
(?(VERSION[>]=n.m) test PCRE2 version
(?(assert) assertion condition
(?(n) absolute reference condition
(?(+n) relative reference condition (PCRE2 extension)
(?(-n) relative reference condition (PCRE2 extension)
(?(<name>) named reference condition (Perl)
(?('name') named reference condition (Perl)
(?(name) named reference condition (PCRE2, deprecated)
(?(R) overall recursion condition
(?(Rn) specific numbered group recursion condition
(?(R&name) specific named group recursion condition
(?(DEFINE) define groups for reference
(?(VERSION[>]=n[.m]) test PCRE2 version
(?(assert) assertion condition

Note the ambiguity of (?(R) and (?(Rn) which might be named reference
conditions or recursion tests. Such a condition is interpreted as a
reference condition if the relevant named group exists.

The parts within brackets for the VERSION conditional syntax could be
ommited. The fractional part of the version number defaults to 0 in
that case.


BACKTRACKING CONTROL

Expand Down Expand Up @@ -12342,20 +12346,19 @@ REPLACEMENT STRINGS
1. Backslash is an escape character, and the forms described in "ES-
CAPED CHARACTERS" above are recognized. Also:

\Q...\E can be used to suppress interpretation
\l force the next character to lower case
\u force the next character to upper case
\L force subsequent characters to lower case
\U force subsequent characters to upper case
\u\L force next character to upper case, then all lower
\l\U force next character to lower case, then all upper
\E end \L or \U case forcing
\b backspace character (note: as in character class in pat-
tern)
\v vertical tab character (note: not the same as in a pattern)
\Q...\E can be used to suppress interpretation
\l force the next character to lower case
\u force the next character to upper case
\L force subsequent characters to lower case
\U force subsequent characters to upper case
\u\L force next character to upper case, then all lower
\l\U force next character to lower case, then all upper
\E end \L or \U case forcing
\b backspace character (note: as in character class in pattern)
\v vertical tab character (note: not the same as in a pattern)

2. The Python form \g<n>, where the angle brackets are part of the syn-
tax and n is either a group name or a number, is recognized as an al-
tax and n is either a group name or a number, is recognized as an al-
ternative way of inserting the contents of a group, for example \g<3>.

3. Capture substitution supports the following additional forms:
Expand All @@ -12369,7 +12372,7 @@ REPLACEMENT STRINGS

SEE ALSO

pcre2pattern(3), pcre2api(3), pcre2callout(3), pcre2matching(3),
pcre2pattern(3), pcre2api(3), pcre2callout(3), pcre2matching(3),
pcre2(3).


Expand All @@ -12382,11 +12385,11 @@ AUTHOR

REVISION

Last updated: 28 March 2025
Last updated: 2 September 2025
Copyright (c) 1997-2024 University of Cambridge.


PCRE2 10.47-DEV 28 March 2025 PCRE2SYNTAX(3)
PCRE2 10.47-DEV 2 September 2025 PCRE2SYNTAX(3)
------------------------------------------------------------------------------


Expand Down
7 changes: 3 additions & 4 deletions doc/pcre2pattern.3
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH PCRE2PATTERN 3 "29 August 2025" "PCRE2 10.47-DEV"
.TH PCRE2PATTERN 3 "2 September 2025" "PCRE2 10.47-DEV"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In future, you don't worry about updating this manually in the PR. I'll just do it once automatically using maint/UpdateDates before a release. It's completely harmless to do manually, just not necessary.

Copy link
Contributor Author

@carenas carenas Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't this file used to generate the documentation in github though or that also gets its dates updated automatically?, Philip's argument for updating the date in this case was that API changes that might be relevant since the previous release are not easily identifiable.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The *.1 and *.3 files are canonical, you are correct. The dates however can be updated automatically, to simply match the last commit date in the history (excluding commits which only bump the version number).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, I am not clear though, if by that you mean that they are being updated already whenever the documentation gets updated or not.

.SH NAME
PCRE2 - Perl-compatible regular expressions (revised API)
.SH "PCRE2 REGULAR EXPRESSION DETAILS"
Expand Down Expand Up @@ -3186,8 +3186,7 @@ For example:
(?(VERSION>=10.4)yes|no)
.sp
This pattern matches "yes" if the PCRE2 version is greater or equal to 10.4, or
"no" otherwise. The fractional part of the version number may not contain more
than two digits.
"no" otherwise. The fractional part of the version number could be ommited.
.
.
.SS "Assertion conditions"
Expand Down Expand Up @@ -4231,6 +4230,6 @@ Cambridge, England.
.rs
.sp
.nf
Last updated: 29 August 2025
Last updated: 2 September 2025
Copyright (c) 1997-2024 University of Cambridge.
.fi
51 changes: 27 additions & 24 deletions doc/pcre2syntax.3
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH PCRE2SYNTAX 3 "28 March 2025" "PCRE2 10.47-DEV"
.TH PCRE2SYNTAX 3 "2 September 2025" "PCRE2 10.47-DEV"
.SH NAME
PCRE2 - Perl-compatible regular expressions (revised API)
.SH "PCRE2 REGULAR EXPRESSION SYNTAX SUMMARY"
Expand Down Expand Up @@ -627,22 +627,25 @@ following ways:
(?(condition)yes-pattern)
(?(condition)yes-pattern|no-pattern)
.sp
(?(n) absolute reference condition
(?(+n) relative reference condition (PCRE2 extension)
(?(-n) relative reference condition (PCRE2 extension)
(?(<name>) named reference condition (Perl)
(?('name') named reference condition (Perl)
(?(name) named reference condition (PCRE2, deprecated)
(?(R) overall recursion condition
(?(Rn) specific numbered group recursion condition
(?(R&name) specific named group recursion condition
(?(DEFINE) define groups for reference
(?(VERSION[>]=n.m) test PCRE2 version
(?(assert) assertion condition
(?(n) absolute reference condition
(?(+n) relative reference condition (PCRE2 extension)
(?(-n) relative reference condition (PCRE2 extension)
(?(<name>) named reference condition (Perl)
(?('name') named reference condition (Perl)
(?(name) named reference condition (PCRE2, deprecated)
(?(R) overall recursion condition
(?(Rn) specific numbered group recursion condition
(?(R&name) specific named group recursion condition
(?(DEFINE) define groups for reference
(?(VERSION[>]=n[.m]) test PCRE2 version
(?(assert) assertion condition
.sp
Note the ambiguity of (?(R) and (?(Rn) which might be named reference
conditions or recursion tests. Such a condition is interpreted as a reference
condition if the relevant named group exists.
.sp
The parts within brackets for the VERSION conditional syntax could be ommited.
The fractional part of the version number defaults to 0 in that case.
.
.
.SH "BACKTRACKING CONTROL"
Expand Down Expand Up @@ -708,16 +711,16 @@ there is additional interpretation:
1. Backslash is an escape character, and the forms described in "ESCAPED
CHARACTERS" above are recognized. Also:
.sp
\eQ...\eE can be used to suppress interpretation
\el force the next character to lower case
\eu force the next character to upper case
\eL force subsequent characters to lower case
\eU force subsequent characters to upper case
\eu\eL force next character to upper case, then all lower
\el\eU force next character to lower case, then all upper
\eE end \eL or \eU case forcing
\eb backspace character (note: as in character class in pattern)
\ev vertical tab character (note: not the same as in a pattern)
\eQ...\eE can be used to suppress interpretation
\el force the next character to lower case
\eu force the next character to upper case
\eL force subsequent characters to lower case
\eU force subsequent characters to upper case
\eu\eL force next character to upper case, then all lower
\el\eU force next character to lower case, then all upper
\eE end \eL or \eU case forcing
\eb backspace character (note: as in character class in pattern)
\ev vertical tab character (note: not the same as in a pattern)
.sp
2. The Python form \eg<n>, where the angle brackets are part of the syntax and
\fIn\fP is either a group name or a number, is recognized as an alternative way
Expand Down Expand Up @@ -753,6 +756,6 @@ Cambridge, England.
.rs
.sp
.nf
Last updated: 28 March 2025
Last updated: 2 September 2025
Copyright (c) 1997-2024 University of Cambridge.
.fi
Loading
Loading