| /-- 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). --/ |
| |
| < forbid W |
| |
| /\x{110000}/8DZ |
| Failed: character value in \x{} or \o{} is too large at offset 9 |
| |
| /\o{4200000}/8DZ |
| Failed: character value in \x{} or \o{} is too large at offset 10 |
| |
| /\x{ffffffff}/8 |
| Failed: character value in \x{} or \o{} is too large at offset 11 |
| |
| /\o{37777777777}/8 |
| Failed: character value in \x{} or \o{} is too large at offset 14 |
| |
| /\x{100000000}/8 |
| Failed: character value in \x{} or \o{} is too large at offset 12 |
| |
| /\o{77777777777}/8 |
| Failed: character value in \x{} or \o{} is too large at offset 14 |
| |
| /\x{d800}/8 |
| Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7 |
| |
| /\o{154000}/8 |
| Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 9 |
| |
| /\x{dfff}/8 |
| Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7 |
| |
| /\o{157777}/8 |
| Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 9 |
| |
| /\x{d7ff}/8 |
| |
| /\o{153777}/8 |
| |
| /\x{e000}/8 |
| |
| /\o{170000}/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 |
| May match empty string |
| 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-\xff\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 |
| May match empty string |
| 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 |
| May match empty string |
| 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 |
| May match empty string |
| 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 |
| May match empty string |
| 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\xa1-\xff\x{100}-\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\x86-\xff\x{100}-\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 starting char list |
| |
| /[^\x{1234}]+?/iS8I |
| Capturing subpattern count = 0 |
| Options: caseless utf |
| No first char |
| No need char |
| Subject length lower bound = 1 |
| No starting char list |
| |
| /[^\x{1234}]++/iS8I |
| Capturing subpattern count = 0 |
| Options: caseless utf |
| No first char |
| No need char |
| Subject length lower bound = 1 |
| No starting char list |
| |
| /[^\x{1234}]{2}/iS8I |
| Capturing subpattern count = 0 |
| Options: caseless utf |
| No first char |
| No need char |
| Subject length lower bound = 2 |
| No starting char list |
| |
| //<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\xa1-\xff\x{100}-\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\x86-\xff\x{100}-\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}? |
| /i [^\x{fffff}]{5} |
| /i [^\x{fffff}]?+ |
| Ket |
| End |
| ------------------------------------------------------------------ |
| |
| /(?<=\x{1234}\x{1234})\bxy/I8 |
| Capturing subpattern count = 0 |
| Max lookbehind = 2 |
| Options: utf |
| First char = 'x' |
| Need char = 'y' |
| |
| /(?<!^)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 |
| |
| /^a+[a\x{200}]/8BZ |
| ------------------------------------------------------------------ |
| Bra |
| ^ |
| a+ |
| [a\x{200}] |
| Ket |
| End |
| ------------------------------------------------------------------ |
| aa |
| 0: aa |
| |
| /[b-d\x{200}-\x{250}]*[ae-h]?#[\x{200}-\x{250}]{0,8}[\x00-\xff]*#[\x{200}-\x{250}]+[a-z]/8BZ |
| ------------------------------------------------------------------ |
| Bra |
| [b-d\x{200}-\x{250}]*+ |
| [ae-h]?+ |
| # |
| [\x{200}-\x{250}]{0,8}+ |
| [\x00-\xff]* |
| # |
| [\x{200}-\x{250}]++ |
| [a-z] |
| Ket |
| End |
| ------------------------------------------------------------------ |
| |
| /[^\xff]*PRUNE:\x{100}abc(xyz(?1))/8DZ |
| ------------------------------------------------------------------ |
| Bra |
| [^\x{ff}]* |
| PRUNE:\x{100}abc |
| CBra 1 |
| xyz |
| Recurse |
| Ket |
| Ket |
| End |
| ------------------------------------------------------------------ |
| Capturing subpattern count = 1 |
| Options: utf |
| No first char |
| Need char = 'z' |
| |
| /(?<=\K\x{17f})/8g+ |
| \x{17f}\x{17f}\x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f} |
| 0: \x{17f} |
| 0+ |
| |
| /(?<=\K\x{17f})/8G+ |
| \x{17f}\x{17f}\x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f}\x{17f} |
| 0: \x{17f} |
| 0+ \x{17f} |
| 0: \x{17f} |
| 0+ |
| |
| /\C[^\v]+\x80/8 |
| [AΏBŀC] |
| No match |
| |
| /\C[^\d]+\x80/8 |
| [AΏBŀC] |
| No match |
| |
| /-- End of testinput5 --/ |