Skip to content

Commit c5e9dd9

Browse files
committed
avoid inconsistency between \d and [:digit:] when using /a
Since a608946 (Additional PCRE2_EXTRA_ASCII_xxx code, 2023-02-01) PCRE2_EXTRA_ASCII_BSD could be used to restrict \d to ASCII causing the following inconsistent behaviour in UCP mode. PCRE2 version 10.43-DEV 2023-01-15 re> /\d/utf,ucp,ascii_bsd data> ٣ No match data> re> /[[:digit:]]/utf,ucp,ascii_bsd data> ٣ 0: \x{663} It has been suggested[1] that the change to match \p{Nd} when UTF is enabled for [:digit:] might had been a bug, so allow avoiding it while making the behaviour consistent again by making the new flag to also affect [:digit:] and for clarity rename it to PCRE2_EXTRA_ASCII_DIGIT. The bug in perl could be avoided by the use of /a, but the equivalent in PCRE2 would also affect the other POSIX classes and cause further inconsistences. Additional adjustments might be needed to other classes but that was punted for now. [1] https://lore.kernel.org/git/CANgJU+U+xXsh9psd0z5Xjr+Se5QgdKkjQ7LUQ-PdUULSN3n4+g@mail.gmail.com/
1 parent 512be06 commit c5e9dd9

21 files changed

+126
-85
lines changed

ChangeLog

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -55,21 +55,21 @@ change needed for 9(a) above; (b) fix bugs in ucptest,
5555

5656
12. Integer overflow testing is now centralized in a new function.
5757

58-
13. Made PCRE2_UCP the default in UTF mode in pcre2grep, and added new options
58+
13. Made PCRE2_UCP the default in UTF mode in pcre2grep, and added new options
5959
--case-restrict and --no-ucp.
6060

61-
14. In the debugging printint module (which is normally only linked into
62-
pcre2test), avoid the use of a variable called "not" because that's deprecated
63-
in C and forbidden in C++. Also rewrite some code to avoid a goto into a block
61+
14. In the debugging printint module (which is normally only linked into
62+
pcre2test), avoid the use of a variable called "not" because that's deprecated
63+
in C and forbidden in C++. Also rewrite some code to avoid a goto into a block
6464
that bypassed its initialization (though it didn't actually matter).
6565

66-
15. More minor code adjustments to avoid using reserved C++ words as variable
67-
names ("new" and "typename") and another jump that bypassed an (irrelevant)
66+
15. More minor code adjustments to avoid using reserved C++ words as variable
67+
names ("new" and "typename") and another jump that bypassed an (irrelevant)
6868
initialization.
6969

70-
16. Merged a pull request that removed pcre2_ucptables.c from the list of files
71-
to compile in NON-AUTOTOOLS-BUILD because it is #included in pcre2_tables.c.
72-
Also adjusted the BUILD.bazel and build.zig files, which had the same issue. At
70+
16. Merged a pull request that removed pcre2_ucptables.c from the list of files
71+
to compile in NON-AUTOTOOLS-BUILD because it is #included in pcre2_tables.c.
72+
Also adjusted the BUILD.bazel and build.zig files, which had the same issue. At
7373
the same time, fixed a typo in the Bazel file.
7474

7575

doc/html/pcre2_match_data_free.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ <h1>pcre2_match_data_free man page</h1>
2828
If <i>match_data</i> is NULL, this function does nothing. Otherwise,
2929
<i>match_data</i> must point to a match data block, which this function frees,
3030
using the memory freeing function from the general context or compiled pattern
31-
with which it was created, or <b>free()</b> if that was not set. If the match
31+
with which it was created, or <b>free()</b> if that was not set. If the match
3232
data block was previously passed to <b>pcre2_match()</b>, it will have an
3333
attached heapframe vector; this is also freed.
3434
</P>

doc/html/pcre2_set_compile_extra_options.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ <h1>pcre2_set_compile_extra_options man page</h1>
3333
PCRE2_EXTRA_ALLOW_LOOKAROUND_BSK Allow \K in lookarounds
3434
PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES Allow \x{d800} to \x{dfff} in UTF-8 and UTF-32 modes
3535
PCRE2_EXTRA_ALT_BSUX Extended alternate \u, \U, and \x handling
36-
PCRE2_EXTRA_ASCII_BSD \d remains ASCII in UCP mode
3736
PCRE2_EXTRA_ASCII_BSS \s remains ASCII in UCP mode
3837
PCRE2_EXTRA_ASCII_BSW \w remains ASFII in UCP mode
39-
PCRE2_EXTRA_ASCII_POSIX POSIX classes remain ASCII in UCP mode
38+
PCRE2_EXTRA_ASCII_DIGIT [:digit:] POSIX class and \d remain ASCII in UCP mode
39+
PCRE2_EXTRA_ASCII_POSIX POSIX classes remain ASCII in UCP mode
4040
PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL Treat all invalid escapes as a literal following character
41-
PCRE2_EXTRA_CASELESS_RESTRICT Disable mixed ASCII/non-ASCII case folding
41+
PCRE2_EXTRA_CASELESS_RESTRICT Disable mixed ASCII/non-ASCII case folding
4242
PCRE2_EXTRA_ESCAPED_CR_IS_LF Interpret \r as \n
4343
PCRE2_EXTRA_MATCH_LINE Pattern matches whole lines
4444
PCRE2_EXTRA_MATCH_WORD Pattern matches "words"

doc/html/pcre2api.html

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1540,7 +1540,7 @@ <h1>pcre2api man page</h1>
15401540
one other case, and for all characters whose code points are greater than
15411541
U+007F. Note that there are two ASCII characters, K and S, that, in addition to
15421542
their lower case ASCII equivalents, are case-equivalent with U+212A (Kelvin
1543-
sign) and U+017F (long S) respectively. If you do not want this case
1543+
sign) and U+017F (long S) respectively. If you do not want this case
15441544
equivalence, you can suppress it by setting PCRE2_EXTRA_CASELESS_RESTRICT.
15451545
</P>
15461546
<P>
@@ -1887,7 +1887,7 @@ <h1>pcre2api man page</h1>
18871887
This option has two effects. Firstly, it change the way PCRE2 processes \B,
18881888
\b, \D, \d, \S, \s, \W, \w, and some of the POSIX character classes. By
18891889
default, only ASCII characters are recognized, but if PCRE2_UCP is set, Unicode
1890-
properties are used to classify characters. There are some PCRE2_EXTRA
1890+
properties are used to classify characters. There are some PCRE2_EXTRA
18911891
options (see below) that add finer control to this behaviour. More details are
18921892
given in the section on
18931893
<a href="pcre2pattern.html#genericchartypes">generic character types</a>
@@ -1977,11 +1977,6 @@ <h1>pcre2api man page</h1>
19771977
defined by ECMAscript 6; setting PCRE2_EXTRA_ALT_BSUX has the effect of
19781978
PCRE2_ALT_BSUX, but in addition it recognizes \u{hhh..} as a hexadecimal
19791979
character code, where hhh.. is any number of hexadecimal digits.
1980-
<pre>
1981-
PCRE2_EXTRA_ASCII_BSD
1982-
</pre>
1983-
This option forces \d to match only ASCII digits, even when PCRE2_UCP is set.
1984-
It can be changed within a pattern by means of the (?aD) option setting.
19851980
<pre>
19861981
PCRE2_EXTRA_ASCII_BSS
19871982
</pre>
@@ -1994,6 +1989,12 @@ <h1>pcre2api man page</h1>
19941989
This option forces \w to match only ASCII word characters, even when PCRE2_UCP
19951990
is set. It can be changed within a pattern by means of the (?aW) option
19961991
setting.
1992+
<pre>
1993+
PCRE2_EXTRA_ASCII_DIGIT
1994+
</pre>
1995+
This option forces the POSIX character class [:digit:] and \d to match only
1996+
ASCII characters, even when PCRE2_UCP is set. As in previous options, It can
1997+
be changed within a pattern by means of the (?aD) option setting.
19971998
<pre>
19981999
PCRE2_EXTRA_ASCII_POSIX
19992000
</pre>
@@ -2029,8 +2030,8 @@ <h1>pcre2api man page</h1>
20292030
case-equivalent character sets that contain both ASCII and non-ASCII
20302031
characters. The ASCII letter S is case-equivalent to U+017f (long S) and the
20312032
ASCII letter K is case-equivalent to U+212a (Kelvin sign). This option disables
2032-
recognition of case-equivalences that cross the ASCII/non-ASCII boundary. In a
2033-
caseless match, both characters must either be ASCII or non-ASCII. The option
2033+
recognition of case-equivalences that cross the ASCII/non-ASCII boundary. In a
2034+
caseless match, both characters must either be ASCII or non-ASCII. The option
20342035
can be changed with a pattern by the (?r) option setting.
20352036
<pre>
20362037
PCRE2_EXTRA_ESCAPED_CR_IS_LF

doc/html/pcre2pattern.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -676,9 +676,9 @@ <h1>pcre2pattern man page</h1>
676676
is set, the behaviour is changed so that Unicode properties are used to
677677
determine character types, as follows:
678678
<pre>
679-
\d any character that matches \p{Nd} (decimal digit)
680679
\s any character that matches \p{Z} or \h or \v
681680
\w any character that matches \p{L} or \p{N}, plus underscore
681+
\d any character that matches \p{Nd} (decimal digit)
682682
</pre>
683683
The upper case escapes match the inverse sets of characters. Note that \d
684684
matches only decimal digits, whereas \w matches any Unicode digit, as well as
@@ -688,9 +688,9 @@ <h1>pcre2pattern man page</h1>
688688
</P>
689689
<P>
690690
The effect of PCRE2_UCP on any one of these escape sequences can be negated by
691-
the options PCRE2_EXTRA_ASCII_BSD, PCRE2_EXTRA_ASCII_BSS, and
692-
PCRE2_EXTRA_ASCII_BSW, respectively. These options can be set and reset within
693-
a pattern by means of an internal option setting
691+
the options PCRE2_EXTRA_ASCII_BSS, PCRE2_EXTRA_ASCII_BSW, and
692+
PCRE2_EXTRA_ASCII_DIGIT, respectively. These options can be set and reset
693+
within a pattern by means of an internal option setting
694694
<a href="#internaloptions">(see below).</a>
695695
</P>
696696
<P>
@@ -1526,7 +1526,7 @@ <h1>pcre2pattern man page</h1>
15261526
[:alpha:] becomes \p{L}
15271527
[:blank:] becomes \h
15281528
[:cntrl:] becomes \p{Cc}
1529-
[:digit:] becomes \p{Nd}
1529+
[:digit:] becomes \p{Nd} unless PCRE2_EXTRA_ASCII_DIGIT is set
15301530
[:lower:] becomes \p{Ll}
15311531
[:space:] becomes \p{Xps}
15321532
[:upper:] becomes \p{Lu}
@@ -1634,7 +1634,7 @@ <h1>pcre2pattern man page</h1>
16341634
Some PCRE2-specific options can be changed by the same mechanism using these
16351635
pairs or individual letters:
16361636
<pre>
1637-
aD for PCRE2_EXTRA_ASCII_BSD
1637+
aD for PCRE2_EXTRA_ASCII_DIGIT
16381638
aS for PCRE2_EXTRA_ASCII_BSS
16391639
aW for PCRE2_EXTRA_ASCII_BSW
16401640
aP for PCRE2_EXTRA_ASCII_POSIX

doc/html/pcre2test.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -628,9 +628,9 @@ <h1>pcre2test man page</h1>
628628
alt_verbnames set PCRE2_ALT_VERBNAMES
629629
anchored set PCRE2_ANCHORED
630630
/a ascii_all set all ASCII options
631-
ascii_bsd set PCRE2_EXTRA_ASCII_BSD
632631
ascii_bss set PCRE2_EXTRA_ASCII_BSS
633632
ascii_bsw set PCRE2_EXTRA_ASCII_BSW
633+
ascii_digit set PCRE2_EXTRA_ASCII_DIGIT
634634
ascii_posix set PCRE2_EXTRA_ASCII_POSIX
635635
auto_callout set PCRE2_AUTO_CALLOUT
636636
bad_escape_is_literal set PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL

doc/pcre2.txt

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1935,12 +1935,6 @@ COMPILING A PATTERN
19351935
as a hexadecimal character code, where hhh.. is any number of hexadeci-
19361936
mal digits.
19371937

1938-
PCRE2_EXTRA_ASCII_BSD
1939-
1940-
This option forces \d to match only ASCII digits, even when PCRE2_UCP
1941-
is set. It can be changed within a pattern by means of the (?aD) op-
1942-
tion setting.
1943-
19441938
PCRE2_EXTRA_ASCII_BSS
19451939

19461940
This option forces \s to match only ASCII space characters, even when
@@ -1953,6 +1947,13 @@ COMPILING A PATTERN
19531947
PCRE2_UCP is set. It can be changed within a pattern by means of the
19541948
(?aW) option setting.
19551949

1950+
PCRE2_EXTRA_ASCII_DIGIT
1951+
1952+
This option forces the POSIX character class [:digit:] and \d to match
1953+
only ASCII characters, even when PCRE2_UCP is set. As in previous op-
1954+
tions, It can be changed within a pattern by means of the (?aD) option
1955+
setting.
1956+
19561957
PCRE2_EXTRA_ASCII_POSIX
19571958

19581959
This option forces the POSIX character classes to match only ASCII
@@ -6895,9 +6896,9 @@ BACKSLASH
68956896
changed so that Unicode properties are used to determine character
68966897
types, as follows:
68976898

6898-
\d any character that matches \p{Nd} (decimal digit)
68996899
\s any character that matches \p{Z} or \h or \v
69006900
\w any character that matches \p{L} or \p{N}, plus underscore
6901+
\d any character that matches \p{Nd} (decimal digit)
69016902

69026903
The upper case escapes match the inverse sets of characters. Note that
69036904
\d matches only decimal digits, whereas \w matches any Unicode digit,
@@ -6906,8 +6907,8 @@ BACKSLASH
69066907
Matching these sequences is noticeably slower when PCRE2_UCP is set.
69076908

69086909
The effect of PCRE2_UCP on any one of these escape sequences can be
6909-
negated by the options PCRE2_EXTRA_ASCII_BSD, PCRE2_EXTRA_ASCII_BSS,
6910-
and PCRE2_EXTRA_ASCII_BSW, respectively. These options can be set and
6910+
negated by the options PCRE2_EXTRA_ASCII_BSS, PCRE2_EXTRA_ASCII_BSW,
6911+
and PCRE2_EXTRA_ASCII_DIGIT, respectively. These options can be set and
69116912
reset within a pattern by means of an internal option setting (see be-
69126913
low).
69136914

@@ -7688,7 +7689,7 @@ POSIX CHARACTER CLASSES
76887689
[:alpha:] becomes \p{L}
76897690
[:blank:] becomes \h
76907691
[:cntrl:] becomes \p{Cc}
7691-
[:digit:] becomes \p{Nd}
7692+
[:digit:] becomes \p{Nd} unless PCRE2_EXTRA_ASCII_DIGIT is set
76927693
[:lower:] becomes \p{Ll}
76937694
[:space:] becomes \p{Xps}
76947695
[:upper:] becomes \p{Lu}
@@ -7789,7 +7790,7 @@ INTERNAL OPTION SETTING
77897790
Some PCRE2-specific options can be changed by the same mechanism using
77907791
these pairs or individual letters:
77917792

7792-
aD for PCRE2_EXTRA_ASCII_BSD
7793+
aD for PCRE2_EXTRA_ASCII_DIGIT
77937794
aS for PCRE2_EXTRA_ASCII_BSS
77947795
aW for PCRE2_EXTRA_ASCII_BSW
77957796
aP for PCRE2_EXTRA_ASCII_POSIX

doc/pcre2_match_data_free.3

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ PCRE2 - Perl-compatible regular expressions (revised API)
1616
If \fImatch_data\fP is NULL, this function does nothing. Otherwise,
1717
\fImatch_data\fP must point to a match data block, which this function frees,
1818
using the memory freeing function from the general context or compiled pattern
19-
with which it was created, or \fBfree()\fP if that was not set. If the match
19+
with which it was created, or \fBfree()\fP if that was not set. If the match
2020
data block was previously passed to \fBpcre2_match()\fP, it will have an
2121
attached heapframe vector; this is also freed.
2222
.P

doc/pcre2_set_compile_extra_options.3

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,19 @@ options are:
2525
.\" JOIN
2626
PCRE2_EXTRA_ALT_BSUX Extended alternate \eu, \eU, and
2727
\ex handling
28-
PCRE2_EXTRA_ASCII_BSD \ed remains ASCII in UCP mode
2928
PCRE2_EXTRA_ASCII_BSS \es remains ASCII in UCP mode
3029
PCRE2_EXTRA_ASCII_BSW \ew remains ASFII in UCP mode
30+
.\" JOIN
31+
PCRE2_EXTRA_ASCII_DIGIT [:digit:] POSIX class and \ed remain
32+
ASCII in UCP mode
3133
.\" JOIN
3234
PCRE2_EXTRA_ASCII_POSIX POSIX classes remain ASCII in
33-
UCP mode
35+
UCP mode
3436
.\" JOIN
3537
PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL Treat all invalid escapes as
3638
a literal following character
3739
.\" JOIN
38-
PCRE2_EXTRA_CASELESS_RESTRICT Disable mixed ASCII/non-ASCII
40+
PCRE2_EXTRA_CASELESS_RESTRICT Disable mixed ASCII/non-ASCII
3941
case folding
4042
PCRE2_EXTRA_ESCAPED_CR_IS_LF Interpret \er as \en
4143
PCRE2_EXTRA_MATCH_LINE Pattern matches whole lines

doc/pcre2api.3

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1482,7 +1482,7 @@ PCRE2_UCP is set, Unicode properties are used for all characters with more than
14821482
one other case, and for all characters whose code points are greater than
14831483
U+007F. Note that there are two ASCII characters, K and S, that, in addition to
14841484
their lower case ASCII equivalents, are case-equivalent with U+212A (Kelvin
1485-
sign) and U+017F (long S) respectively. If you do not want this case
1485+
sign) and U+017F (long S) respectively. If you do not want this case
14861486
equivalence, you can suppress it by setting PCRE2_EXTRA_CASELESS_RESTRICT.
14871487
.P
14881488
For lower valued characters with only one other case, a lookup table is used
@@ -1838,7 +1838,7 @@ are not representable in UTF-16.
18381838
This option has two effects. Firstly, it change the way PCRE2 processes \eB,
18391839
\eb, \eD, \ed, \eS, \es, \eW, \ew, and some of the POSIX character classes. By
18401840
default, only ASCII characters are recognized, but if PCRE2_UCP is set, Unicode
1841-
properties are used to classify characters. There are some PCRE2_EXTRA
1841+
properties are used to classify characters. There are some PCRE2_EXTRA
18421842
options (see below) that add finer control to this behaviour. More details are
18431843
given in the section on
18441844
.\" HTML <a href="pcre2pattern.html#genericchartypes">
@@ -1936,11 +1936,6 @@ the way that ECMAscript (aka JavaScript) does. Additional functionality was
19361936
defined by ECMAscript 6; setting PCRE2_EXTRA_ALT_BSUX has the effect of
19371937
PCRE2_ALT_BSUX, but in addition it recognizes \eu{hhh..} as a hexadecimal
19381938
character code, where hhh.. is any number of hexadecimal digits.
1939-
.sp
1940-
PCRE2_EXTRA_ASCII_BSD
1941-
.sp
1942-
This option forces \ed to match only ASCII digits, even when PCRE2_UCP is set.
1943-
It can be changed within a pattern by means of the (?aD) option setting.
19441939
.sp
19451940
PCRE2_EXTRA_ASCII_BSS
19461941
.sp
@@ -1953,6 +1948,12 @@ option setting.
19531948
This option forces \ew to match only ASCII word characters, even when PCRE2_UCP
19541949
is set. It can be changed within a pattern by means of the (?aW) option
19551950
setting.
1951+
.sp
1952+
PCRE2_EXTRA_ASCII_DIGIT
1953+
.sp
1954+
This option forces the POSIX character class [:digit:] and \ed to match only
1955+
ASCII characters, even when PCRE2_UCP is set. As in previous options, It can
1956+
be changed within a pattern by means of the (?aD) option setting.
19561957
.sp
19571958
PCRE2_EXTRA_ASCII_POSIX
19581959
.sp
@@ -1987,8 +1988,8 @@ rules, which allow for more than two cases per character. There are two
19871988
case-equivalent character sets that contain both ASCII and non-ASCII
19881989
characters. The ASCII letter S is case-equivalent to U+017f (long S) and the
19891990
ASCII letter K is case-equivalent to U+212a (Kelvin sign). This option disables
1990-
recognition of case-equivalences that cross the ASCII/non-ASCII boundary. In a
1991-
caseless match, both characters must either be ASCII or non-ASCII. The option
1991+
recognition of case-equivalences that cross the ASCII/non-ASCII boundary. In a
1992+
caseless match, both characters must either be ASCII or non-ASCII. The option
19921993
can be changed with a pattern by the (?r) option setting.
19931994
.sp
19941995
PCRE2_EXTRA_ESCAPED_CR_IS_LF

doc/pcre2pattern.3

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -673,9 +673,9 @@ support was available, mainly for efficiency reasons. If the PCRE2_UCP option
673673
is set, the behaviour is changed so that Unicode properties are used to
674674
determine character types, as follows:
675675
.sp
676-
\ed any character that matches \ep{Nd} (decimal digit)
677676
\es any character that matches \ep{Z} or \eh or \ev
678677
\ew any character that matches \ep{L} or \ep{N}, plus underscore
678+
\ed any character that matches \ep{Nd} (decimal digit)
679679
.sp
680680
The upper case escapes match the inverse sets of characters. Note that \ed
681681
matches only decimal digits, whereas \ew matches any Unicode digit, as well as
@@ -684,9 +684,9 @@ any Unicode letter, and underscore. Note also that PCRE2_UCP affects \eb, and
684684
is noticeably slower when PCRE2_UCP is set.
685685
.P
686686
The effect of PCRE2_UCP on any one of these escape sequences can be negated by
687-
the options PCRE2_EXTRA_ASCII_BSD, PCRE2_EXTRA_ASCII_BSS, and
688-
PCRE2_EXTRA_ASCII_BSW, respectively. These options can be set and reset within
689-
a pattern by means of an internal option setting
687+
the options PCRE2_EXTRA_ASCII_BSS, PCRE2_EXTRA_ASCII_BSW, and
688+
PCRE2_EXTRA_ASCII_DIGIT, respectively. These options can be set and reset
689+
within a pattern by means of an internal option setting
690690
.\" HTML <a href="#internaloptions">
691691
.\" </a>
692692
(see below).
@@ -1522,7 +1522,7 @@ classes with other sequences, as follows:
15221522
[:alpha:] becomes \ep{L}
15231523
[:blank:] becomes \eh
15241524
[:cntrl:] becomes \ep{Cc}
1525-
[:digit:] becomes \ep{Nd}
1525+
[:digit:] becomes \ep{Nd} unless PCRE2_EXTRA_ASCII_DIGIT is set
15261526
[:lower:] becomes \ep{Ll}
15271527
[:space:] becomes \ep{Xps}
15281528
[:upper:] becomes \ep{Lu}
@@ -1637,7 +1637,7 @@ be re-instated, but a hyphen may not appear.
16371637
Some PCRE2-specific options can be changed by the same mechanism using these
16381638
pairs or individual letters:
16391639
.sp
1640-
aD for PCRE2_EXTRA_ASCII_BSD
1640+
aD for PCRE2_EXTRA_ASCII_DIGIT
16411641
aS for PCRE2_EXTRA_ASCII_BSS
16421642
aW for PCRE2_EXTRA_ASCII_BSW
16431643
aP for PCRE2_EXTRA_ASCII_POSIX

doc/pcre2test.1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -583,9 +583,9 @@ for a description of the effects of these options.
583583
alt_verbnames set PCRE2_ALT_VERBNAMES
584584
anchored set PCRE2_ANCHORED
585585
/a ascii_all set all ASCII options
586-
ascii_bsd set PCRE2_EXTRA_ASCII_BSD
587586
ascii_bss set PCRE2_EXTRA_ASCII_BSS
588587
ascii_bsw set PCRE2_EXTRA_ASCII_BSW
588+
ascii_digit set PCRE2_EXTRA_ASCII_DIGIT
589589
ascii_posix set PCRE2_EXTRA_ASCII_POSIX
590590
auto_callout set PCRE2_AUTO_CALLOUT
591591
bad_escape_is_literal set PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL

doc/pcre2test.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -563,9 +563,9 @@ PATTERN MODIFIERS
563563
alt_verbnames set PCRE2_ALT_VERBNAMES
564564
anchored set PCRE2_ANCHORED
565565
/a ascii_all set all ASCII options
566-
ascii_bsd set PCRE2_EXTRA_ASCII_BSD
567566
ascii_bss set PCRE2_EXTRA_ASCII_BSS
568567
ascii_bsw set PCRE2_EXTRA_ASCII_BSW
568+
ascii_digit set PCRE2_EXTRA_ASCII_DIGIT
569569
ascii_posix set PCRE2_EXTRA_ASCII_POSIX
570570
auto_callout set PCRE2_AUTO_CALLOUT
571571
bad_escape_is_literal set PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL

0 commit comments

Comments
 (0)