1850 lines
36 KiB
Plaintext
Executable File
1850 lines
36 KiB
Plaintext
Executable File
/-- This set of tests checks the API, internals, and non-Perl stuff for UTF
|
||
support, excluding Unicode properties. However, tests that give different
|
||
results in 8-bit and 16-bit modes are excluded (see tests 16 and 17). --/
|
||
|
||
/\x{110000}/8DZ
|
||
Failed: character value in \x{...} sequence is too large at offset 9
|
||
|
||
/\x{ffffffff}/8
|
||
Failed: character value in \x{...} sequence is too large at offset 11
|
||
|
||
/\x{100000000}/8
|
||
Failed: character value in \x{...} sequence is too large at offset 12
|
||
|
||
/\x{d800}/8
|
||
Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
|
||
|
||
/\x{dfff}/8
|
||
Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
|
||
|
||
/\x{d7ff}/8
|
||
|
||
/\x{e000}/8
|
||
|
||
/^\x{100}a\x{1234}/8
|
||
\x{100}a\x{1234}bcd
|
||
0: \x{100}a\x{1234}
|
||
|
||
/\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
A\x{2262}\x{391}.
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
First char = 'A'
|
||
Need char = '.'
|
||
\x{0041}\x{2262}\x{0391}\x{002e}
|
||
0: A\x{2262}\x{391}.
|
||
|
||
/.{3,5}X/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
Any{3}
|
||
Any{0,2}
|
||
X
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
Need char = 'X'
|
||
\x{212ab}\x{212ab}\x{212ab}\x{861}X
|
||
0: \x{212ab}\x{212ab}\x{212ab}\x{861}X
|
||
|
||
/.{3,5}?/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
Any{3}
|
||
Any{0,2}?
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
\x{212ab}\x{212ab}\x{212ab}\x{861}
|
||
0: \x{212ab}\x{212ab}\x{212ab}
|
||
|
||
/(?<=\C)X/8
|
||
Failed: \C not allowed in lookbehind assertion at offset 6
|
||
|
||
/^[ab]/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
^
|
||
[ab]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: anchored utf
|
||
No first char
|
||
No need char
|
||
bar
|
||
0: b
|
||
*** Failers
|
||
No match
|
||
c
|
||
No match
|
||
\x{ff}
|
||
No match
|
||
\x{100}
|
||
No match
|
||
|
||
/^[^ab]/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
^
|
||
[\x00-`c-\xff] (neg)
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: anchored utf
|
||
No first char
|
||
No need char
|
||
c
|
||
0: c
|
||
\x{ff}
|
||
0: \x{ff}
|
||
\x{100}
|
||
0: \x{100}
|
||
*** Failers
|
||
0: *
|
||
aaa
|
||
No match
|
||
|
||
/\x{100}*(\d+|"(?1)")/8
|
||
1234
|
||
0: 1234
|
||
1: 1234
|
||
"1234"
|
||
0: "1234"
|
||
1: "1234"
|
||
\x{100}1234
|
||
0: \x{100}1234
|
||
1: 1234
|
||
"\x{100}1234"
|
||
0: \x{100}1234
|
||
1: 1234
|
||
\x{100}\x{100}12ab
|
||
0: \x{100}\x{100}12
|
||
1: 12
|
||
\x{100}\x{100}"12"
|
||
0: \x{100}\x{100}"12"
|
||
1: "12"
|
||
*** Failers
|
||
No match
|
||
\x{100}\x{100}abcd
|
||
No match
|
||
|
||
/\x{100}*/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/a\x{100}*/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
a
|
||
\x{100}*
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
First char = 'a'
|
||
No need char
|
||
|
||
/ab\x{100}*/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
ab
|
||
\x{100}*
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
First char = 'a'
|
||
Need char = 'b'
|
||
|
||
/\x{100}*A/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*+
|
||
A
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
Need char = 'A'
|
||
A
|
||
0: A
|
||
|
||
/\x{100}*\d(?R)/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*+
|
||
\d
|
||
Recurse
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/[Z\x{100}]/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[Z\x{100}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
Z\x{100}
|
||
0: Z
|
||
\x{100}
|
||
0: \x{100}
|
||
\x{100}Z
|
||
0: \x{100}
|
||
*** Failers
|
||
No match
|
||
|
||
/[\x{200}-\x{100}]/8
|
||
Failed: range out of order in character class at offset 15
|
||
|
||
/[Ā-Ą]/8
|
||
\x{100}
|
||
0: \x{100}
|
||
\x{104}
|
||
0: \x{104}
|
||
*** Failers
|
||
No match
|
||
\x{105}
|
||
No match
|
||
\x{ff}
|
||
No match
|
||
|
||
/[z-\x{100}]/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[z-\x{100}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/[z\Qa-d]Ā\E]/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\-\]adz\x{100}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
\x{100}
|
||
0: \x{100}
|
||
Ā
|
||
0: \x{100}
|
||
|
||
/[\xFF]/DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{ff}
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
No options
|
||
First char = \xff
|
||
No need char
|
||
>\xff<
|
||
0: \xff
|
||
|
||
/[^\xFF]/DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[^\x{ff}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
No options
|
||
No first char
|
||
No need char
|
||
|
||
/[Ä-Ü]/8
|
||
Ö # Matches without Study
|
||
0: \x{d6}
|
||
\x{d6}
|
||
0: \x{d6}
|
||
|
||
/[Ä-Ü]/8S
|
||
Ö <-- Same with Study
|
||
0: \x{d6}
|
||
\x{d6}
|
||
0: \x{d6}
|
||
|
||
/[\x{c4}-\x{dc}]/8
|
||
Ö # Matches without Study
|
||
0: \x{d6}
|
||
\x{d6}
|
||
0: \x{d6}
|
||
|
||
/[\x{c4}-\x{dc}]/8S
|
||
Ö <-- Same with Study
|
||
0: \x{d6}
|
||
\x{d6}
|
||
0: \x{d6}
|
||
|
||
/[^\x{100}]abc(xyz(?1))/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[^\x{100}]
|
||
abc
|
||
CBra 1
|
||
xyz
|
||
Recurse
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 1
|
||
Options: utf
|
||
No first char
|
||
Need char = 'z'
|
||
|
||
/[ab\x{100}]abc(xyz(?1))/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[ab\x{100}]
|
||
abc
|
||
CBra 1
|
||
xyz
|
||
Recurse
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 1
|
||
Options: utf
|
||
No first char
|
||
Need char = 'z'
|
||
|
||
/(\x{100}(b(?2)c))?/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
Brazero
|
||
CBra 1
|
||
\x{100}
|
||
CBra 2
|
||
b
|
||
Recurse
|
||
c
|
||
Ket
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 2
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/(\x{100}(b(?2)c)){0,2}/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
Brazero
|
||
Bra
|
||
CBra 1
|
||
\x{100}
|
||
CBra 2
|
||
b
|
||
Recurse
|
||
c
|
||
Ket
|
||
Ket
|
||
Brazero
|
||
CBra 1
|
||
\x{100}
|
||
CBra 2
|
||
b
|
||
Recurse
|
||
c
|
||
Ket
|
||
Ket
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 2
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/(\x{100}(b(?1)c))?/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
Brazero
|
||
CBra 1
|
||
\x{100}
|
||
CBra 2
|
||
b
|
||
Recurse
|
||
c
|
||
Ket
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 2
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/(\x{100}(b(?1)c)){0,2}/DZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
Brazero
|
||
Bra
|
||
CBra 1
|
||
\x{100}
|
||
CBra 2
|
||
b
|
||
Recurse
|
||
c
|
||
Ket
|
||
Ket
|
||
Brazero
|
||
CBra 1
|
||
\x{100}
|
||
CBra 2
|
||
b
|
||
Recurse
|
||
c
|
||
Ket
|
||
Ket
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 2
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/\W/8
|
||
A.B
|
||
0: .
|
||
A\x{100}B
|
||
0: \x{100}
|
||
|
||
/\w/8
|
||
\x{100}X
|
||
0: X
|
||
|
||
/^\ሴ/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
^
|
||
\x{1234}
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: anchored utf
|
||
No first char
|
||
No need char
|
||
|
||
/\x{100}*\d/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*+
|
||
\d
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/\x{100}*\s/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*+
|
||
\s
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/\x{100}*\w/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*+
|
||
\w
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/\x{100}*\D/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*
|
||
\D
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/\x{100}*\S/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*
|
||
\S
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/\x{100}*\W/8DZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}*
|
||
\W
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
No first char
|
||
No need char
|
||
|
||
/()()()()()()()()()()
|
||
()()()()()()()()()()
|
||
()()()()()()()()()()
|
||
()()()()()()()()()()
|
||
A (x) (?41) B/8x
|
||
AxxB
|
||
Matched, but too many substrings
|
||
0: AxxB
|
||
1:
|
||
2:
|
||
3:
|
||
4:
|
||
5:
|
||
6:
|
||
7:
|
||
8:
|
||
9:
|
||
10:
|
||
11:
|
||
12:
|
||
13:
|
||
14:
|
||
|
||
/^[\x{100}\E-\Q\E\x{150}]/BZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
^
|
||
[\x{100}-\x{150}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/^[\QĀ\E-\QŐ\E]/BZ8
|
||
------------------------------------------------------------------
|
||
Bra
|
||
^
|
||
[\x{100}-\x{150}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/^abc./mgx8<any>
|
||
abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK
|
||
0: abc1
|
||
0: abc2
|
||
0: abc3
|
||
0: abc4
|
||
0: abc5
|
||
0: abc6
|
||
0: abc7
|
||
0: abc8
|
||
0: abc9
|
||
|
||
/abc.$/mgx8<any>
|
||
abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9
|
||
0: abc1
|
||
0: abc2
|
||
0: abc3
|
||
0: abc4
|
||
0: abc5
|
||
0: abc6
|
||
0: abc7
|
||
0: abc8
|
||
0: abc9
|
||
|
||
/^a\Rb/8<bsr_unicode>
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
a\x0bb
|
||
0: a\x{0b}b
|
||
a\x0cb
|
||
0: a\x{0c}b
|
||
a\x{85}b
|
||
0: a\x{85}b
|
||
a\x{2028}b
|
||
0: a\x{2028}b
|
||
a\x{2029}b
|
||
0: a\x{2029}b
|
||
** Failers
|
||
No match
|
||
a\n\rb
|
||
No match
|
||
|
||
/^a\R*b/8<bsr_unicode>
|
||
ab
|
||
0: ab
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
a\x0bb
|
||
0: a\x{0b}b
|
||
a\x0c\x{2028}\x{2029}b
|
||
0: a\x{0c}\x{2028}\x{2029}b
|
||
a\x{85}b
|
||
0: a\x{85}b
|
||
a\n\rb
|
||
0: a\x{0a}\x{0d}b
|
||
a\n\r\x{85}\x0cb
|
||
0: a\x{0a}\x{0d}\x{85}\x{0c}b
|
||
|
||
/^a\R+b/8<bsr_unicode>
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
a\x0bb
|
||
0: a\x{0b}b
|
||
a\x0c\x{2028}\x{2029}b
|
||
0: a\x{0c}\x{2028}\x{2029}b
|
||
a\x{85}b
|
||
0: a\x{85}b
|
||
a\n\rb
|
||
0: a\x{0a}\x{0d}b
|
||
a\n\r\x{85}\x0cb
|
||
0: a\x{0a}\x{0d}\x{85}\x{0c}b
|
||
** Failers
|
||
No match
|
||
ab
|
||
No match
|
||
|
||
/^a\R{1,3}b/8<bsr_unicode>
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\n\rb
|
||
0: a\x{0a}\x{0d}b
|
||
a\n\r\x{85}b
|
||
0: a\x{0a}\x{0d}\x{85}b
|
||
a\r\n\r\nb
|
||
0: a\x{0d}\x{0a}\x{0d}\x{0a}b
|
||
a\r\n\r\n\r\nb
|
||
0: a\x{0d}\x{0a}\x{0d}\x{0a}\x{0d}\x{0a}b
|
||
a\n\r\n\rb
|
||
0: a\x{0a}\x{0d}\x{0a}\x{0d}b
|
||
a\n\n\r\nb
|
||
0: a\x{0a}\x{0a}\x{0d}\x{0a}b
|
||
** Failers
|
||
No match
|
||
a\n\n\n\rb
|
||
No match
|
||
a\r
|
||
No match
|
||
|
||
/\H\h\V\v/8
|
||
X X\x0a
|
||
0: X X\x{0a}
|
||
X\x09X\x0b
|
||
0: X\x{09}X\x{0b}
|
||
** Failers
|
||
No match
|
||
\x{a0} X\x0a
|
||
No match
|
||
|
||
/\H*\h+\V?\v{3,4}/8
|
||
\x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a
|
||
0: \x{09} \x{a0}X\x{0a}\x{0b}\x{0c}\x{0d}
|
||
\x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a
|
||
0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}\x{0d}
|
||
\x09\x20\x{a0}\x0a\x0b\x0c
|
||
0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}
|
||
** Failers
|
||
No match
|
||
\x09\x20\x{a0}\x0a\x0b
|
||
No match
|
||
|
||
/\H\h\V\v/8
|
||
\x{3001}\x{3000}\x{2030}\x{2028}
|
||
0: \x{3001}\x{3000}\x{2030}\x{2028}
|
||
X\x{180e}X\x{85}
|
||
0: X\x{180e}X\x{85}
|
||
** Failers
|
||
No match
|
||
\x{2009} X\x0a
|
||
No match
|
||
|
||
/\H*\h+\V?\v{3,4}/8
|
||
\x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a
|
||
0: \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x{0c}\x{0d}
|
||
\x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a
|
||
0: \x{09}\x{205f}\x{a0}\x{0a}\x{2029}\x{0c}\x{2028}
|
||
\x09\x20\x{202f}\x0a\x0b\x0c
|
||
0: \x{09} \x{202f}\x{0a}\x{0b}\x{0c}
|
||
** Failers
|
||
No match
|
||
\x09\x{200a}\x{a0}\x{2028}\x0b
|
||
No match
|
||
|
||
/[\h]/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
>\x{1680}
|
||
0: \x{1680}
|
||
|
||
/[\h]{3,}/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
>\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}<
|
||
0: \x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}
|
||
|
||
/[\v]/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x0a-\x0d\x85\x{2028}-\x{2029}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/[\H]/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x00-\x08\x0a-\x1f!-\x9f\x{a1}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/[\V]/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x00-\x09\x0e-\x84\x{86}-\x{2027}\x{202a}-\x{10ffff}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/.*$/8<any>
|
||
\x{1ec5}
|
||
0: \x{1ec5}
|
||
|
||
/a\Rb/I8<bsr_anycrlf>
|
||
Capturing subpattern count = 0
|
||
Options: bsr_anycrlf utf
|
||
First char = 'a'
|
||
Need char = 'b'
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
** Failers
|
||
No match
|
||
a\x{85}b
|
||
No match
|
||
a\x0bb
|
||
No match
|
||
|
||
/a\Rb/I8<bsr_unicode>
|
||
Capturing subpattern count = 0
|
||
Options: bsr_unicode utf
|
||
First char = 'a'
|
||
Need char = 'b'
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
a\x{85}b
|
||
0: a\x{85}b
|
||
a\x0bb
|
||
0: a\x{0b}b
|
||
** Failers
|
||
No match
|
||
a\x{85}b\<bsr_anycrlf>
|
||
No match
|
||
a\x0bb\<bsr_anycrlf>
|
||
No match
|
||
|
||
/a\R?b/I8<bsr_anycrlf>
|
||
Capturing subpattern count = 0
|
||
Options: bsr_anycrlf utf
|
||
First char = 'a'
|
||
Need char = 'b'
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
** Failers
|
||
No match
|
||
a\x{85}b
|
||
No match
|
||
a\x0bb
|
||
No match
|
||
|
||
/a\R?b/I8<bsr_unicode>
|
||
Capturing subpattern count = 0
|
||
Options: bsr_unicode utf
|
||
First char = 'a'
|
||
Need char = 'b'
|
||
a\rb
|
||
0: a\x{0d}b
|
||
a\nb
|
||
0: a\x{0a}b
|
||
a\r\nb
|
||
0: a\x{0d}\x{0a}b
|
||
a\x{85}b
|
||
0: a\x{85}b
|
||
a\x0bb
|
||
0: a\x{0b}b
|
||
** Failers
|
||
No match
|
||
a\x{85}b\<bsr_anycrlf>
|
||
No match
|
||
a\x0bb\<bsr_anycrlf>
|
||
No match
|
||
|
||
/.*a.*=.b.*/8<ANY>
|
||
QQQ\x{2029}ABCaXYZ=!bPQR
|
||
0: ABCaXYZ=!bPQR
|
||
** Failers
|
||
No match
|
||
a\x{2029}b
|
||
No match
|
||
\x61\xe2\x80\xa9\x62
|
||
No match
|
||
|
||
/[[:a\x{100}b:]]/8
|
||
Failed: unknown POSIX class name at offset 3
|
||
|
||
/a[^]b/<JS>8
|
||
a\x{1234}b
|
||
0: a\x{1234}b
|
||
a\nb
|
||
0: a\x{0a}b
|
||
** Failers
|
||
No match
|
||
ab
|
||
No match
|
||
|
||
/a[^]+b/<JS>8
|
||
aXb
|
||
0: aXb
|
||
a\nX\nX\x{1234}b
|
||
0: a\x{0a}X\x{0a}X\x{1234}b
|
||
** Failers
|
||
No match
|
||
ab
|
||
No match
|
||
|
||
/(\x{de})\1/
|
||
\x{de}\x{de}
|
||
0: \xde\xde
|
||
1: \xde
|
||
|
||
/X/8f<any>
|
||
A\x{1ec5}ABCXYZ
|
||
0: X
|
||
|
||
/Xa{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/Xa{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/Xa{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X\x{123}{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X\x{123}{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X\x{123}{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X\x{123}{2,4}b/8
|
||
Xx\P
|
||
No match
|
||
X\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}\x{123}\x{123}x\P
|
||
No match
|
||
|
||
/X\x{123}{2,4}?b/8
|
||
Xx\P
|
||
No match
|
||
X\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}\x{123}\x{123}x\P
|
||
No match
|
||
|
||
/X\x{123}{2,4}+b/8
|
||
Xx\P
|
||
No match
|
||
X\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}\x{123}x\P
|
||
No match
|
||
X\x{123}\x{123}\x{123}\x{123}x\P
|
||
No match
|
||
|
||
/X\d{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
X3\P
|
||
Partial match: X3
|
||
X33\P
|
||
Partial match: X33
|
||
X333\P
|
||
Partial match: X333
|
||
X3333\P
|
||
Partial match: X3333
|
||
|
||
/X\d{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
X3\P
|
||
Partial match: X3
|
||
X33\P
|
||
Partial match: X33
|
||
X333\P
|
||
Partial match: X333
|
||
X3333\P
|
||
Partial match: X3333
|
||
|
||
/X\d{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
X3\P
|
||
Partial match: X3
|
||
X33\P
|
||
Partial match: X33
|
||
X333\P
|
||
Partial match: X333
|
||
X3333\P
|
||
Partial match: X3333
|
||
|
||
/X\D{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X\D{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X\D{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X\D{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X\D{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X\D{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X[abc]{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X[abc]{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X[abc]{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
Xa\P
|
||
Partial match: Xa
|
||
Xaa\P
|
||
Partial match: Xaa
|
||
Xaaa\P
|
||
Partial match: Xaaa
|
||
Xaaaa\P
|
||
Partial match: Xaaaa
|
||
|
||
/X[abc\x{123}]{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X[abc\x{123}]{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X[abc\x{123}]{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X[^a]{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
Xz\P
|
||
Partial match: Xz
|
||
Xzz\P
|
||
Partial match: Xzz
|
||
Xzzz\P
|
||
Partial match: Xzzz
|
||
Xzzzz\P
|
||
Partial match: Xzzzz
|
||
|
||
/X[^a]{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
Xz\P
|
||
Partial match: Xz
|
||
Xzz\P
|
||
Partial match: Xzz
|
||
Xzzz\P
|
||
Partial match: Xzzz
|
||
Xzzzz\P
|
||
Partial match: Xzzzz
|
||
|
||
/X[^a]{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
Xz\P
|
||
Partial match: Xz
|
||
Xzz\P
|
||
Partial match: Xzz
|
||
Xzzz\P
|
||
Partial match: Xzzz
|
||
Xzzzz\P
|
||
Partial match: Xzzzz
|
||
|
||
/X[^a]{2,4}b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X[^a]{2,4}?b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/X[^a]{2,4}+b/8
|
||
X\P
|
||
Partial match: X
|
||
X\x{123}\P
|
||
Partial match: X\x{123}
|
||
X\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}
|
||
X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/(Y)X\1{2,4}b/8
|
||
YX\P
|
||
Partial match: YX
|
||
YXY\P
|
||
Partial match: YXY
|
||
YXYY\P
|
||
Partial match: YXYY
|
||
YXYYY\P
|
||
Partial match: YXYYY
|
||
YXYYYY\P
|
||
Partial match: YXYYYY
|
||
|
||
/(Y)X\1{2,4}?b/8
|
||
YX\P
|
||
Partial match: YX
|
||
YXY\P
|
||
Partial match: YXY
|
||
YXYY\P
|
||
Partial match: YXYY
|
||
YXYYY\P
|
||
Partial match: YXYYY
|
||
YXYYYY\P
|
||
Partial match: YXYYYY
|
||
|
||
/(Y)X\1{2,4}+b/8
|
||
YX\P
|
||
Partial match: YX
|
||
YXY\P
|
||
Partial match: YXY
|
||
YXYY\P
|
||
Partial match: YXYY
|
||
YXYYY\P
|
||
Partial match: YXYYY
|
||
YXYYYY\P
|
||
Partial match: YXYYYY
|
||
|
||
/(\x{123})X\1{2,4}b/8
|
||
\x{123}X\P
|
||
Partial match: \x{123}X
|
||
\x{123}X\x{123}\P
|
||
Partial match: \x{123}X\x{123}
|
||
\x{123}X\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}
|
||
\x{123}X\x{123}\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}\x{123}
|
||
\x{123}X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/(\x{123})X\1{2,4}?b/8
|
||
\x{123}X\P
|
||
Partial match: \x{123}X
|
||
\x{123}X\x{123}\P
|
||
Partial match: \x{123}X\x{123}
|
||
\x{123}X\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}
|
||
\x{123}X\x{123}\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}\x{123}
|
||
\x{123}X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/(\x{123})X\1{2,4}+b/8
|
||
\x{123}X\P
|
||
Partial match: \x{123}X
|
||
\x{123}X\x{123}\P
|
||
Partial match: \x{123}X\x{123}
|
||
\x{123}X\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}
|
||
\x{123}X\x{123}\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}\x{123}
|
||
\x{123}X\x{123}\x{123}\x{123}\x{123}\P
|
||
Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
|
||
|
||
/\bthe cat\b/8
|
||
the cat\P
|
||
0: the cat
|
||
the cat\P\P
|
||
Partial match: the cat
|
||
|
||
/abcd*/8
|
||
xxxxabcd\P
|
||
0: abcd
|
||
xxxxabcd\P\P
|
||
Partial match: abcd
|
||
|
||
/abcd*/i8
|
||
xxxxabcd\P
|
||
0: abcd
|
||
xxxxabcd\P\P
|
||
Partial match: abcd
|
||
XXXXABCD\P
|
||
0: ABCD
|
||
XXXXABCD\P\P
|
||
Partial match: ABCD
|
||
|
||
/abc\d*/8
|
||
xxxxabc1\P
|
||
0: abc1
|
||
xxxxabc1\P\P
|
||
Partial match: abc1
|
||
|
||
/(a)bc\1*/8
|
||
xxxxabca\P
|
||
0: abca
|
||
1: a
|
||
xxxxabca\P\P
|
||
Partial match: abca
|
||
|
||
/abc[de]*/8
|
||
xxxxabcde\P
|
||
0: abcde
|
||
xxxxabcde\P\P
|
||
Partial match: abcde
|
||
|
||
/X\W{3}X/8
|
||
\PX
|
||
Partial match: X
|
||
|
||
/\sxxx\s/8T1
|
||
AB\x{85}xxx\x{a0}XYZ
|
||
0: \x{85}xxx\x{a0}
|
||
AB\x{a0}xxx\x{85}XYZ
|
||
0: \x{a0}xxx\x{85}
|
||
|
||
/\S \S/8T1
|
||
\x{a2} \x{84}
|
||
0: \x{a2} \x{84}
|
||
|
||
'A#хц'8x<any>BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
A
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
'A#хц
|
||
PQ'8x<any>BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
APQ
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/a+#хaa
|
||
z#XX?/8x<any>BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
a++
|
||
z
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/a+#хaa
|
||
z#х?/8x<any>BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
a++
|
||
z
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/\g{A}xxx#bXX(?'A'123)
|
||
(?'A'456)/8x<any>BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\1
|
||
xxx
|
||
CBra 1
|
||
456
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/\g{A}xxx#bх(?'A'123)
|
||
(?'A'456)/8x<any>BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\1
|
||
xxx
|
||
CBra 1
|
||
456
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/^\cģ/8
|
||
Failed: \c must be followed by an ASCII character at offset 3
|
||
|
||
/(\R*)(.)/s8
|
||
\r\n
|
||
0: \x{0d}
|
||
1:
|
||
2: \x{0d}
|
||
\r\r\n\n\r
|
||
0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
|
||
1: \x{0d}\x{0d}\x{0a}\x{0a}
|
||
2: \x{0d}
|
||
\r\r\n\n\r\n
|
||
0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
|
||
1: \x{0d}\x{0d}\x{0a}\x{0a}
|
||
2: \x{0d}
|
||
|
||
/(\R)*(.)/s8
|
||
\r\n
|
||
0: \x{0d}
|
||
1: <unset>
|
||
2: \x{0d}
|
||
\r\r\n\n\r
|
||
0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
|
||
1: \x{0a}
|
||
2: \x{0d}
|
||
\r\r\n\n\r\n
|
||
0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
|
||
1: \x{0a}
|
||
2: \x{0d}
|
||
|
||
/[^\x{1234}]+/iS8I
|
||
Capturing subpattern count = 0
|
||
Options: caseless utf
|
||
No first char
|
||
No need char
|
||
Subject length lower bound = 1
|
||
No set of starting bytes
|
||
|
||
/[^\x{1234}]+?/iS8I
|
||
Capturing subpattern count = 0
|
||
Options: caseless utf
|
||
No first char
|
||
No need char
|
||
Subject length lower bound = 1
|
||
No set of starting bytes
|
||
|
||
/[^\x{1234}]++/iS8I
|
||
Capturing subpattern count = 0
|
||
Options: caseless utf
|
||
No first char
|
||
No need char
|
||
Subject length lower bound = 1
|
||
No set of starting bytes
|
||
|
||
/[^\x{1234}]{2}/iS8I
|
||
Capturing subpattern count = 0
|
||
Options: caseless utf
|
||
No first char
|
||
No need char
|
||
Subject length lower bound = 2
|
||
No set of starting bytes
|
||
|
||
//<bsr_anycrlf><bsr_unicode>
|
||
Failed: inconsistent NEWLINE options at offset 0
|
||
|
||
/f.*/
|
||
\P\Pfor
|
||
Partial match: for
|
||
|
||
/f.*/s
|
||
\P\Pfor
|
||
Partial match: for
|
||
|
||
/f.*/8
|
||
\P\Pfor
|
||
Partial match: for
|
||
|
||
/f.*/8s
|
||
\P\Pfor
|
||
Partial match: for
|
||
|
||
/\x{d7ff}\x{e000}/8
|
||
|
||
/\x{d800}/8
|
||
Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
|
||
|
||
/\x{dfff}/8
|
||
Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
|
||
|
||
/\h+/8
|
||
\x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
|
||
0: \x{1680}\x{2000}\x{202f}\x{3000}
|
||
\x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
|
||
0: \x{200a}\x{a0}\x{2000}
|
||
|
||
/[\h\x{e000}]+/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}\x{e000}]+
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
\x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
|
||
0: \x{1680}\x{2000}\x{202f}\x{3000}
|
||
\x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
|
||
0: \x{200a}\x{a0}\x{2000}
|
||
|
||
/\H+/8
|
||
\x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
|
||
0: \x{167f}\x{1681}\x{180d}\x{180f}
|
||
\x{2000}\x{200a}\x{1fff}\x{200b}
|
||
0: \x{1fff}\x{200b}
|
||
\x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
|
||
0: \x{202e}\x{2030}\x{205e}\x{2060}
|
||
\x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
|
||
0: \x{9f}\x{a1}\x{2fff}\x{3001}
|
||
|
||
/[\H\x{d7ff}]+/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x00-\x08\x0a-\x1f!-\x9f\x{a1}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}\x{d7ff}]+
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
\x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
|
||
0: \x{167f}\x{1681}\x{180d}\x{180f}
|
||
\x{2000}\x{200a}\x{1fff}\x{200b}
|
||
0: \x{1fff}\x{200b}
|
||
\x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
|
||
0: \x{202e}\x{2030}\x{205e}\x{2060}
|
||
\x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
|
||
0: \x{9f}\x{a1}\x{2fff}\x{3001}
|
||
|
||
/\v+/8
|
||
\x{2027}\x{2030}\x{2028}\x{2029}
|
||
0: \x{2028}\x{2029}
|
||
\x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
|
||
0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
|
||
|
||
/[\v\x{e000}]+/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x0a-\x0d\x85\x{2028}-\x{2029}\x{e000}]+
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
\x{2027}\x{2030}\x{2028}\x{2029}
|
||
0: \x{2028}\x{2029}
|
||
\x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
|
||
0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
|
||
|
||
/\V+/8
|
||
\x{2028}\x{2029}\x{2027}\x{2030}
|
||
0: \x{2027}\x{2030}
|
||
\x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
|
||
0: \x{09}\x{0e}\x{84}\x{86}
|
||
|
||
/[\V\x{d7ff}]+/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x00-\x09\x0e-\x84\x{86}-\x{2027}\x{202a}-\x{10ffff}\x{d7ff}]+
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
\x{2028}\x{2029}\x{2027}\x{2030}
|
||
0: \x{2027}\x{2030}
|
||
\x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
|
||
0: \x{09}\x{0e}\x{84}\x{86}
|
||
|
||
/\R+/8<bsr_unicode>
|
||
\x{2027}\x{2030}\x{2028}\x{2029}
|
||
0: \x{2028}\x{2029}
|
||
\x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
|
||
0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
|
||
|
||
/(..)\1/8
|
||
ab\P
|
||
Partial match: ab
|
||
aba\P
|
||
Partial match: aba
|
||
abab\P
|
||
0: abab
|
||
1: ab
|
||
|
||
/(..)\1/8i
|
||
ab\P
|
||
Partial match: ab
|
||
abA\P
|
||
Partial match: abA
|
||
aBAb\P
|
||
0: aBAb
|
||
1: aB
|
||
|
||
/(..)\1{2,}/8
|
||
ab\P
|
||
Partial match: ab
|
||
aba\P
|
||
Partial match: aba
|
||
abab\P
|
||
Partial match: abab
|
||
ababa\P
|
||
Partial match: ababa
|
||
ababab\P
|
||
0: ababab
|
||
1: ab
|
||
ababab\P\P
|
||
Partial match: ababab
|
||
abababa\P
|
||
0: ababab
|
||
1: ab
|
||
abababa\P\P
|
||
Partial match: abababa
|
||
|
||
/(..)\1{2,}/8i
|
||
ab\P
|
||
Partial match: ab
|
||
aBa\P
|
||
Partial match: aBa
|
||
aBAb\P
|
||
Partial match: aBAb
|
||
AbaBA\P
|
||
Partial match: AbaBA
|
||
abABAb\P
|
||
0: abABAb
|
||
1: ab
|
||
aBAbaB\P\P
|
||
Partial match: aBAbaB
|
||
abABabA\P
|
||
0: abABab
|
||
1: ab
|
||
abaBABa\P\P
|
||
Partial match: abaBABa
|
||
|
||
/(..)\1{2,}?x/8i
|
||
ab\P
|
||
Partial match: ab
|
||
abA\P
|
||
Partial match: abA
|
||
aBAb\P
|
||
Partial match: aBAb
|
||
abaBA\P
|
||
Partial match: abaBA
|
||
abAbaB\P
|
||
Partial match: abAbaB
|
||
abaBabA\P
|
||
Partial match: abaBabA
|
||
abAbABaBx\P
|
||
0: abAbABaBx
|
||
1: ab
|
||
|
||
/./8<CRLF>
|
||
\r\P
|
||
0: \x{0d}
|
||
\r\P\P
|
||
Partial match: \x{0d}
|
||
|
||
/.{2,3}/8<CRLF>
|
||
\r\P
|
||
Partial match: \x{0d}
|
||
\r\P\P
|
||
Partial match: \x{0d}
|
||
\r\r\P
|
||
0: \x{0d}\x{0d}
|
||
\r\r\P\P
|
||
Partial match: \x{0d}\x{0d}
|
||
\r\r\r\P
|
||
0: \x{0d}\x{0d}\x{0d}
|
||
\r\r\r\P\P
|
||
Partial match: \x{0d}\x{0d}\x{0d}
|
||
|
||
/.{2,3}?/8<CRLF>
|
||
\r\P
|
||
Partial match: \x{0d}
|
||
\r\P\P
|
||
Partial match: \x{0d}
|
||
\r\r\P
|
||
0: \x{0d}\x{0d}
|
||
\r\r\P\P
|
||
Partial match: \x{0d}\x{0d}
|
||
\r\r\r\P
|
||
0: \x{0d}\x{0d}
|
||
\r\r\r\P\P
|
||
0: \x{0d}\x{0d}
|
||
|
||
/[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[^\x{100}]
|
||
[^\x{1234}]
|
||
[^\x{ffff}]
|
||
[^\x{10000}]
|
||
[^\x{10ffff}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/8BZi
|
||
------------------------------------------------------------------
|
||
Bra
|
||
/i [^\x{100}]
|
||
/i [^\x{1234}]
|
||
/i [^\x{ffff}]
|
||
/i [^\x{10000}]
|
||
/i [^\x{10ffff}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[^\x{100}]*
|
||
[^\x{10000}]+
|
||
[^\x{10ffff}]??
|
||
[^\x{8000}]{4}
|
||
[^\x{8000}]*
|
||
[^\x{7fff}]{2}
|
||
[^\x{7fff}]{0,7}?
|
||
[^\x{fffff}]{5}
|
||
[^\x{fffff}]?+
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/8BZi
|
||
------------------------------------------------------------------
|
||
Bra
|
||
/i [^\x{100}]*
|
||
/i [^\x{10000}]+
|
||
/i [^\x{10ffff}]??
|
||
/i [^\x{8000}]{4}
|
||
/i [^\x{8000}]*
|
||
/i [^\x{7fff}]{2}
|
||
/i [^\x{7fff}]{0,7}?
|
||
Once
|
||
/i [^\x{fffff}]{5}
|
||
/i [^\x{fffff}]?
|
||
Ket
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/(?<=\x{1234}\x{1234})\bxy/I8
|
||
Capturing subpattern count = 0
|
||
Options: utf
|
||
First char = 'x'
|
||
Need char = 'y'
|
||
Max lookbehind = 2
|
||
|
||
/(?<!^)ETA/8
|
||
ETA
|
||
No match
|
||
|
||
/\u0100/<JS>8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
\x{100}
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/[\u0100-\u0200]/<JS>8BZ
|
||
------------------------------------------------------------------
|
||
Bra
|
||
[\x{100}-\x{200}]
|
||
Ket
|
||
End
|
||
------------------------------------------------------------------
|
||
|
||
/\ud800/<JS>8
|
||
Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 5
|
||
|
||
/-- End of testinput5 --/
|