version 1.1, 2012/02/21 23:05:52
|
version 1.1.1.2, 2012/02/21 23:50:25
|
Line 1
|
Line 1
|
/-- This set of tests checks UTF-8 support with the DFA matching functionality | /-- This set of tests check the DFA matching functionality of pcre_dfa_exec(). |
of pcre_dfa_exec(). The -dfa flag must be used with pcretest when running | The -dfa flag must be used with pcretest when running it. --/ |
it. --/ | |
| /abc/ |
/\x{100}ab/8 | abc |
\x{100}ab | 0: abc |
0: \x{100}ab | |
| |
/a\x{100}*b/8 | |
ab | |
0: ab | |
a\x{100}b | |
0: a\x{100}b | |
a\x{100}\x{100}b | |
0: a\x{100}\x{100}b | |
|
|
/a\x{100}+b/8 | /ab*c/ |
a\x{100}b | abc |
0: a\x{100}b | 0: abc |
a\x{100}\x{100}b | abbbbc |
0: a\x{100}\x{100}b | 0: abbbbc |
| ac |
| 0: ac |
| |
| /ab+c/ |
| abc |
| 0: abc |
| abbbbbbc |
| 0: abbbbbbc |
*** Failers |
*** Failers |
No match |
No match |
|
ac |
|
No match |
ab |
ab |
No match |
No match |
| |
/\bX/8 | /a*/ |
Xoanon | a |
0: X | 0: a |
+Xoanon | 1: |
0: X | aaaaaaaaaaaaaaaaa |
\x{300}Xoanon | 0: aaaaaaaaaaaaaaaaa |
0: X | 1: aaaaaaaaaaaaaaaa |
| 2: aaaaaaaaaaaaaaa |
| 3: aaaaaaaaaaaaaa |
| 4: aaaaaaaaaaaaa |
| 5: aaaaaaaaaaaa |
| 6: aaaaaaaaaaa |
| 7: aaaaaaaaaa |
| 8: aaaaaaaaa |
| 9: aaaaaaaa |
| 10: aaaaaaa |
| 11: aaaaaa |
| 12: aaaaa |
| 13: aaaa |
| 14: aaa |
| 15: aa |
| 16: a |
| 17: |
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
| Matched, but too many subsidiary matches |
| 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
| 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
| 2: aaaaaaaaaaaaaaaaaaaaaaaaaaaa |
| 3: aaaaaaaaaaaaaaaaaaaaaaaaaaa |
| 4: aaaaaaaaaaaaaaaaaaaaaaaaaa |
| 5: aaaaaaaaaaaaaaaaaaaaaaaaa |
| 6: aaaaaaaaaaaaaaaaaaaaaaaa |
| 7: aaaaaaaaaaaaaaaaaaaaaaa |
| 8: aaaaaaaaaaaaaaaaaaaaaa |
| 9: aaaaaaaaaaaaaaaaaaaaa |
| 10: aaaaaaaaaaaaaaaaaaaa |
| 11: aaaaaaaaaaaaaaaaaaa |
| 12: aaaaaaaaaaaaaaaaaa |
| 13: aaaaaaaaaaaaaaaaa |
| 14: aaaaaaaaaaaaaaaa |
| 15: aaaaaaaaaaaaaaa |
| 16: aaaaaaaaaaaaaa |
| 17: aaaaaaaaaaaaa |
| 18: aaaaaaaaaaaa |
| 19: aaaaaaaaaaa |
| 20: aaaaaaaaaa |
| 21: aaaaaaaaa |
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\F |
| 0: |
| |
| /(a|abcd|african)/ |
| a |
| 0: a |
| abcd |
| 0: abcd |
| 1: a |
| african |
| 0: african |
| 1: a |
| |
| /^abc/ |
| abcdef |
| 0: abc |
| *** Failers |
| No match |
| xyzabc |
| No match |
| xyz\nabc |
| No match |
| |
| /^abc/m |
| abcdef |
| 0: abc |
| xyz\nabc |
| 0: abc |
| *** Failers |
| No match |
| xyzabc |
| No match |
| |
| /\Aabc/ |
| abcdef |
| 0: abc |
| *** Failers |
| No match |
| xyzabc |
| No match |
| xyz\nabc |
| No match |
| |
| /\Aabc/m |
| abcdef |
| 0: abc |
| *** Failers |
| No match |
| xyzabc |
| No match |
| xyz\nabc |
| No match |
| |
| /\Gabc/ |
| abcdef |
| 0: abc |
| xyzabc\>3 |
| 0: abc |
| *** Failers |
| No match |
| xyzabc |
| No match |
| xyzabc\>2 |
| No match |
| |
| /x\dy\Dz/ |
| x9yzz |
| 0: x9yzz |
| x0y+z |
| 0: x0y+z |
| *** Failers |
| No match |
| xyz |
| No match |
| xxy0z |
| No match |
| |
| /x\sy\Sz/ |
| x yzz |
| 0: x yzz |
| x y+z |
| 0: x y+z |
| *** Failers |
| No match |
| xyz |
| No match |
| xxyyz |
| No match |
| |
| /x\wy\Wz/ |
| xxy+z |
| 0: xxy+z |
| *** Failers |
| No match |
| xxy0z |
| No match |
| x+y+z |
| No match |
| |
| /x.y/ |
| x+y |
| 0: x+y |
| x-y |
| 0: x-y |
| *** Failers |
| No match |
| x\ny |
| No match |
| |
| /x.y/s |
| x+y |
| 0: x+y |
| x-y |
| 0: x-y |
| x\ny |
| 0: x\x0ay |
| |
| /(a.b(?s)c.d|x.y)p.q/ |
| a+bc+dp+q |
| 0: a+bc+dp+q |
| a+bc\ndp+q |
| 0: a+bc\x0adp+q |
| x\nyp+q |
| 0: x\x0ayp+q |
*** Failers |
*** Failers |
No match |
No match |
YXoanon | a\nbc\ndp+q |
No match |
No match |
|
a+bc\ndp\nq |
|
No match |
|
x\nyp\nq |
|
No match |
|
|
|
/a\d\z/ |
|
ba0 |
|
0: a0 |
|
*** Failers |
|
No match |
|
ba0\n |
|
No match |
|
ba0\ncd |
|
No match |
|
|
|
/a\d\z/m |
|
ba0 |
|
0: a0 |
|
*** Failers |
|
No match |
|
ba0\n |
|
No match |
|
ba0\ncd |
|
No match |
|
|
|
/a\d\Z/ |
|
ba0 |
|
0: a0 |
|
ba0\n |
|
0: a0 |
|
*** Failers |
|
No match |
|
ba0\ncd |
|
No match |
|
|
|
/a\d\Z/m |
|
ba0 |
|
0: a0 |
|
ba0\n |
|
0: a0 |
|
*** Failers |
|
No match |
|
ba0\ncd |
|
No match |
|
|
|
/a\d$/ |
|
ba0 |
|
0: a0 |
|
ba0\n |
|
0: a0 |
|
*** Failers |
|
No match |
|
ba0\ncd |
|
No match |
|
|
|
/a\d$/m |
|
ba0 |
|
0: a0 |
|
ba0\n |
|
0: a0 |
|
ba0\ncd |
|
0: a0 |
|
*** Failers |
|
No match |
|
|
|
/abc/i |
|
abc |
|
0: abc |
|
aBc |
|
0: aBc |
|
ABC |
|
0: ABC |
|
|
/\BX/8 | /[^a]/ |
YXoanon | abcd |
0: X | 0: b |
| |
| /ab?\w/ |
| abz |
| 0: abz |
| 1: ab |
| abbz |
| 0: abb |
| 1: ab |
| azz |
| 0: az |
| |
| /x{0,3}yz/ |
| ayzq |
| 0: yz |
| axyzq |
| 0: xyz |
| axxyz |
| 0: xxyz |
| axxxyzq |
| 0: xxxyz |
| axxxxyzq |
| 0: xxxyz |
*** Failers |
*** Failers |
No match |
No match |
Xoanon | ax |
No match |
No match |
+Xoanon | axx |
No match |
No match |
\x{300}Xoanon | |
| /x{3}yz/ |
| axxxyzq |
| 0: xxxyz |
| axxxxyzq |
| 0: xxxyz |
| *** Failers |
No match |
No match |
|
ax |
|
No match |
|
axx |
|
No match |
|
ayzq |
|
No match |
|
axyzq |
|
No match |
|
axxyz |
|
No match |
|
|
|
/x{2,3}yz/ |
|
axxyz |
|
0: xxyz |
|
axxxyzq |
|
0: xxxyz |
|
axxxxyzq |
|
0: xxxyz |
|
*** Failers |
|
No match |
|
ax |
|
No match |
|
axx |
|
No match |
|
ayzq |
|
No match |
|
axyzq |
|
No match |
|
|
|
/[^a]+/ |
|
bac |
|
0: b |
|
bcdefax |
|
0: bcdef |
|
1: bcde |
|
2: bcd |
|
3: bc |
|
4: b |
|
*** Failers |
|
0: *** F |
|
1: *** |
|
2: *** |
|
3: ** |
|
4: * |
|
aaaaa |
|
No match |
|
|
/X\b/8 | /[^a]*/ |
X+oanon | bac |
0: X | 0: b |
ZX\x{300}oanon | 1: |
0: X | bcdefax |
FAX | 0: bcdef |
0: X | 1: bcde |
| 2: bcd |
| 3: bc |
| 4: b |
| 5: |
| *** Failers |
| 0: *** F |
| 1: *** |
| 2: *** |
| 3: ** |
| 4: * |
| 5: |
| aaaaa |
| 0: |
| |
| /[^a]{3,5}/ |
| xyz |
| 0: xyz |
| awxyza |
| 0: wxyz |
| 1: wxy |
| abcdefa |
| 0: bcdef |
| 1: bcde |
| 2: bcd |
| abcdefghijk |
| 0: bcdef |
| 1: bcde |
| 2: bcd |
| *** Failers |
| 0: *** F |
| 1: *** |
| 2: *** |
| axya |
| No match |
| axa |
| No match |
| aaaaa |
| No match |
| |
| /\d*/ |
| 1234b567 |
| 0: 1234 |
| 1: 123 |
| 2: 12 |
| 3: 1 |
| 4: |
| xyz |
| 0: |
| |
| /\D*/ |
| a1234b567 |
| 0: a |
| 1: |
| xyz |
| 0: xyz |
| 1: xy |
| 2: x |
| 3: |
| |
| /\d+/ |
| ab1234c56 |
| 0: 1234 |
| 1: 123 |
| 2: 12 |
| 3: 1 |
| *** Failers |
| No match |
| xyz |
| No match |
| |
| /\D+/ |
| ab123c56 |
| 0: ab |
| 1: a |
| *** Failers |
| 0: *** Failers |
| 1: *** Failer |
| 2: *** Faile |
| 3: *** Fail |
| 4: *** Fai |
| 5: *** Fa |
| 6: *** F |
| 7: *** |
| 8: *** |
| 9: ** |
| 10: * |
| 789 |
| No match |
| |
| /\d?A/ |
| 045ABC |
| 0: 5A |
| ABC |
| 0: A |
| *** Failers |
| No match |
| XYZ |
| No match |
| |
| /\D?A/ |
| ABC |
| 0: A |
| BAC |
| 0: BA |
| 9ABC |
| 0: A |
| *** Failers |
| No match |
| |
| /a+/ |
| aaaa |
| 0: aaaa |
| 1: aaa |
| 2: aa |
| 3: a |
| |
| /^.*xyz/ |
| xyz |
| 0: xyz |
| ggggggggxyz |
| 0: ggggggggxyz |
| |
| /^.+xyz/ |
| abcdxyz |
| 0: abcdxyz |
| axyz |
| 0: axyz |
| *** Failers |
| No match |
| xyz |
| No match |
| |
| /^.?xyz/ |
| xyz |
| 0: xyz |
| cxyz |
| 0: cxyz |
| |
| /^\d{2,3}X/ |
| 12X |
| 0: 12X |
| 123X |
| 0: 123X |
| *** Failers |
| No match |
| X |
| No match |
| 1X |
| No match |
| 1234X |
| No match |
| |
| /^[abcd]\d/ |
| a45 |
| 0: a4 |
| b93 |
| 0: b9 |
| c99z |
| 0: c9 |
| d04 |
| 0: d0 |
| *** Failers |
| No match |
| e45 |
| No match |
| abcd |
| No match |
| abcd1234 |
| No match |
| 1234 |
| No match |
| |
| /^[abcd]*\d/ |
| a45 |
| 0: a4 |
| b93 |
| 0: b9 |
| c99z |
| 0: c9 |
| d04 |
| 0: d0 |
| abcd1234 |
| 0: abcd1 |
| 1234 |
| 0: 1 |
| *** Failers |
| No match |
| e45 |
| No match |
| abcd |
| No match |
| |
| /^[abcd]+\d/ |
| a45 |
| 0: a4 |
| b93 |
| 0: b9 |
| c99z |
| 0: c9 |
| d04 |
| 0: d0 |
| abcd1234 |
| 0: abcd1 |
| *** Failers |
| No match |
| 1234 |
| No match |
| e45 |
| No match |
| abcd |
| No match |
| |
| /^a+X/ |
| aX |
| 0: aX |
| aaX |
| 0: aaX |
| |
| /^[abcd]?\d/ |
| a45 |
| 0: a4 |
| b93 |
| 0: b9 |
| c99z |
| 0: c9 |
| d04 |
| 0: d0 |
| 1234 |
| 0: 1 |
| *** Failers |
| No match |
| abcd1234 |
| No match |
| e45 |
| No match |
| |
| /^[abcd]{2,3}\d/ |
| ab45 |
| 0: ab4 |
| bcd93 |
| 0: bcd9 |
| *** Failers |
| No match |
| 1234 |
| No match |
| a36 |
| No match |
| abcd1234 |
| No match |
| ee45 |
| No match |
| |
| /^(abc)*\d/ |
| abc45 |
| 0: abc4 |
| abcabcabc45 |
| 0: abcabcabc4 |
| 42xyz |
| 0: 4 |
| *** Failers |
| No match |
| |
| /^(abc)+\d/ |
| abc45 |
| 0: abc4 |
| abcabcabc45 |
| 0: abcabcabc4 |
| *** Failers |
| No match |
| 42xyz |
| No match |
| |
| /^(abc)?\d/ |
| abc45 |
| 0: abc4 |
| 42xyz |
| 0: 4 |
| *** Failers |
| No match |
| abcabcabc45 |
| No match |
| |
| /^(abc){2,3}\d/ |
| abcabc45 |
| 0: abcabc4 |
| abcabcabc45 |
| 0: abcabcabc4 |
| *** Failers |
| No match |
| abcabcabcabc45 |
| No match |
| abc45 |
| No match |
| 42xyz |
| No match |
| |
| /1(abc|xyz)2(?1)3/ |
| 1abc2abc3456 |
| 0: 1abc2abc3 |
| 1abc2xyz3456 |
| 0: 1abc2xyz3 |
| |
| /^(a*\w|ab)=(a*\w|ab)/ |
| ab=ab |
| 0: ab=ab |
| 1: ab=a |
| |
| /^(a*\w|ab)=(?1)/ |
| ab=ab |
| 0: ab=ab |
| 1: ab=a |
| |
| /^([^()]|\((?1)*\))*$/ |
| abc |
| 0: abc |
| a(b)c |
| 0: a(b)c |
| a(b(c))d |
| 0: a(b(c))d |
| *** Failers) |
| No match |
| a(b(c)d |
| No match |
| |
| /^>abc>([^()]|\((?1)*\))*<xyz<$/ |
| >abc>123<xyz< |
| 0: >abc>123<xyz< |
| >abc>1(2)3<xyz< |
| 0: >abc>1(2)3<xyz< |
| >abc>(1(2)3)<xyz< |
| 0: >abc>(1(2)3)<xyz< |
| |
| /^(?>a*)\d/ |
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9876 |
| 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9 |
*** Failers |
*** Failers |
No match |
No match |
Xoanon | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
No match |
No match |
|
|
|
/< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/x |
|
<> |
|
0: <> |
|
<abcd> |
|
0: <abcd> |
|
<abc <123> hij> |
|
0: <abc <123> hij> |
|
<abc <def> hij> |
|
0: <def> |
|
<abc<>def> |
|
0: <abc<>def> |
|
<abc<> |
|
0: <> |
|
*** Failers |
|
No match |
|
<abc |
|
No match |
|
|
|
/^(?(?=abc)\w{3}:|\d\d)$/ |
|
abc: |
|
0: abc: |
|
12 |
|
0: 12 |
|
*** Failers |
|
No match |
|
123 |
|
No match |
|
xyz |
|
No match |
|
|
|
/^(?(?!abc)\d\d|\w{3}:)$/ |
|
abc: |
|
0: abc: |
|
12 |
|
0: 12 |
|
*** Failers |
|
No match |
|
123 |
|
No match |
|
xyz |
|
No match |
|
|
|
/^(?=abc)\w{5}:$/ |
|
abcde: |
|
0: abcde: |
|
*** Failers |
|
No match |
|
abc.. |
|
No match |
|
123 |
|
No match |
|
vwxyz |
|
No match |
|
|
|
/^(?!abc)\d\d$/ |
|
12 |
|
0: 12 |
|
*** Failers |
|
No match |
|
abcde: |
|
No match |
|
abc.. |
|
No match |
|
123 |
|
No match |
|
vwxyz |
|
No match |
|
|
|
/(?<=abc|xy)123/ |
|
abc12345 |
|
0: 123 |
|
wxy123z |
|
0: 123 |
|
*** Failers |
|
No match |
|
123abc |
|
No match |
|
|
|
/(?<!abc|xy)123/ |
|
123abc |
|
0: 123 |
|
mno123456 |
|
0: 123 |
|
*** Failers |
|
No match |
|
abc12345 |
|
No match |
|
wxy123z |
|
No match |
|
|
|
/abc(?C1)xyz/ |
|
abcxyz |
|
--->abcxyz |
|
1 ^ ^ x |
|
0: abcxyz |
|
123abcxyz999 |
|
--->123abcxyz999 |
|
1 ^ ^ x |
|
0: abcxyz |
|
|
|
/(ab|cd){3,4}/C |
|
ababab |
|
--->ababab |
|
+0 ^ (ab|cd){3,4} |
|
+1 ^ a |
|
+4 ^ c |
|
+2 ^^ b |
|
+3 ^ ^ | |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+2 ^ ^ b |
|
+3 ^ ^ | |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+2 ^ ^ b |
|
+3 ^ ^ | |
|
+12 ^ ^ |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
0: ababab |
|
abcdabcd |
|
--->abcdabcd |
|
+0 ^ (ab|cd){3,4} |
|
+1 ^ a |
|
+4 ^ c |
|
+2 ^^ b |
|
+3 ^ ^ | |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+5 ^ ^ d |
|
+6 ^ ^ ) |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+2 ^ ^ b |
|
+3 ^ ^ | |
|
+12 ^ ^ |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+5 ^ ^ d |
|
+6 ^ ^ ) |
|
+12 ^ ^ |
|
0: abcdabcd |
|
1: abcdab |
|
abcdcdcdcdcd |
|
--->abcdcdcdcdcd |
|
+0 ^ (ab|cd){3,4} |
|
+1 ^ a |
|
+4 ^ c |
|
+2 ^^ b |
|
+3 ^ ^ | |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+5 ^ ^ d |
|
+6 ^ ^ ) |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+5 ^ ^ d |
|
+6 ^ ^ ) |
|
+12 ^ ^ |
|
+1 ^ ^ a |
|
+4 ^ ^ c |
|
+5 ^ ^ d |
|
+6 ^ ^ ) |
|
+12 ^ ^ |
|
0: abcdcdcd |
|
1: abcdcd |
|
|
|
/^abc/ |
|
abcdef |
|
0: abc |
|
*** Failers |
|
No match |
|
abcdef\B |
|
No match |
|
|
|
/^(a*|xyz)/ |
|
bcd |
|
0: |
|
aaabcd |
|
0: aaa |
|
1: aa |
|
2: a |
|
3: |
|
xyz |
|
0: xyz |
|
1: |
|
xyz\N |
|
0: xyz |
|
*** Failers |
|
0: |
|
bcd\N |
|
No match |
|
|
/X\B/8 | /xyz$/ |
Xoanon | xyz |
0: X | 0: xyz |
| xyz\n |
| 0: xyz |
*** Failers |
*** Failers |
No match |
No match |
X+oanon | xyz\Z |
No match |
No match |
ZX\x{300}oanon | xyz\n\Z |
No match |
No match |
FAX | |
| /xyz$/m |
| xyz |
| 0: xyz |
| xyz\n |
| 0: xyz |
| abcxyz\npqr |
| 0: xyz |
| abcxyz\npqr\Z |
| 0: xyz |
| xyz\n\Z |
| 0: xyz |
| *** Failers |
No match |
No match |
|
xyz\Z |
|
No match |
|
|
|
/\Gabc/ |
|
abcdef |
|
0: abc |
|
defabcxyz\>3 |
|
0: abc |
|
*** Failers |
|
No match |
|
defabcxyz |
|
No match |
|
|
|
/^abcdef/ |
|
ab\P |
|
Partial match: ab |
|
abcde\P |
|
Partial match: abcde |
|
abcdef\P |
|
0: abcdef |
|
*** Failers |
|
No match |
|
abx\P |
|
No match |
|
|
|
/^a{2,4}\d+z/ |
|
a\P |
|
Partial match: a |
|
aa\P |
|
Partial match: aa |
|
aa2\P |
|
Partial match: aa2 |
|
aaa\P |
|
Partial match: aaa |
|
aaa23\P |
|
Partial match: aaa23 |
|
aaaa12345\P |
|
Partial match: aaaa12345 |
|
aa0z\P |
|
0: aa0z |
|
aaaa4444444444444z\P |
|
0: aaaa4444444444444z |
|
*** Failers |
|
No match |
|
az\P |
|
No match |
|
aaaaa\P |
|
No match |
|
a56\P |
|
No match |
|
|
|
/^abcdef/ |
|
abc\P |
|
Partial match: abc |
|
def\R |
|
0: def |
|
|
|
/(?<=foo)bar/ |
|
xyzfo\P |
|
No match |
|
foob\P\>2 |
|
Partial match: foob |
|
foobar...\R\P\>4 |
|
0: ar |
|
xyzfo\P |
|
No match |
|
foobar\>2 |
|
0: bar |
|
*** Failers |
|
No match |
|
xyzfo\P |
|
No match |
|
obar\R |
|
No match |
|
|
|
/(ab*(cd|ef))+X/ |
|
adfadadaklhlkalkajhlkjahdfasdfasdfladsfjkj\P\Z |
|
No match |
|
lkjhlkjhlkjhlkjhabbbbbbcdaefabbbbbbbefa\P\B\Z |
|
Partial match: abbbbbbcdaefabbbbbbbefa |
|
cdabbbbbbbb\P\R\B\Z |
|
Partial match: cdabbbbbbbb |
|
efabbbbbbbbbbbbbbbb\P\R\B\Z |
|
Partial match: efabbbbbbbbbbbbbbbb |
|
bbbbbbbbbbbbcdXyasdfadf\P\R\B\Z |
|
0: bbbbbbbbbbbbcdX |
|
|
|
/(a|b)/SF>testsavedregex |
|
Compiled pattern written to testsavedregex |
|
Study data written to testsavedregex |
|
<testsavedregex |
|
Compiled pattern (byte-inverted) loaded from testsavedregex |
|
Study data loaded from testsavedregex |
|
abc |
|
0: a |
|
** Failers |
|
0: a |
|
def |
|
No match |
|
|
/[^a]/8 | /the quick brown fox/ |
abcd | the quick brown fox |
| 0: the quick brown fox |
| The quick brown FOX |
| No match |
| What do you know about the quick brown fox? |
| 0: the quick brown fox |
| What do you know about THE QUICK BROWN FOX? |
| No match |
| |
| /The quick brown fox/i |
| the quick brown fox |
| 0: the quick brown fox |
| The quick brown FOX |
| 0: The quick brown FOX |
| What do you know about the quick brown fox? |
| 0: the quick brown fox |
| What do you know about THE QUICK BROWN FOX? |
| 0: THE QUICK BROWN FOX |
| |
| /abcd\t\n\r\f\a\e\071\x3b\$\\\?caxyz/ |
| abcd\t\n\r\f\a\e9;\$\\?caxyz |
| 0: abcd\x09\x0a\x0d\x0c\x07\x1b9;$\?caxyz |
| |
| /a*abc?xyz+pqr{3}ab{2,}xy{4,5}pq{0,6}AB{0,}zz/ |
| abxyzpqrrrabbxyyyypqAzz |
| 0: abxyzpqrrrabbxyyyypqAzz |
| abxyzpqrrrabbxyyyypqAzz |
| 0: abxyzpqrrrabbxyyyypqAzz |
| aabxyzpqrrrabbxyyyypqAzz |
| 0: aabxyzpqrrrabbxyyyypqAzz |
| aaabxyzpqrrrabbxyyyypqAzz |
| 0: aaabxyzpqrrrabbxyyyypqAzz |
| aaaabxyzpqrrrabbxyyyypqAzz |
| 0: aaaabxyzpqrrrabbxyyyypqAzz |
| abcxyzpqrrrabbxyyyypqAzz |
| 0: abcxyzpqrrrabbxyyyypqAzz |
| aabcxyzpqrrrabbxyyyypqAzz |
| 0: aabcxyzpqrrrabbxyyyypqAzz |
| aaabcxyzpqrrrabbxyyyypAzz |
| 0: aaabcxyzpqrrrabbxyyyypAzz |
| aaabcxyzpqrrrabbxyyyypqAzz |
| 0: aaabcxyzpqrrrabbxyyyypqAzz |
| aaabcxyzpqrrrabbxyyyypqqAzz |
| 0: aaabcxyzpqrrrabbxyyyypqqAzz |
| aaabcxyzpqrrrabbxyyyypqqqAzz |
| 0: aaabcxyzpqrrrabbxyyyypqqqAzz |
| aaabcxyzpqrrrabbxyyyypqqqqAzz |
| 0: aaabcxyzpqrrrabbxyyyypqqqqAzz |
| aaabcxyzpqrrrabbxyyyypqqqqqAzz |
| 0: aaabcxyzpqrrrabbxyyyypqqqqqAzz |
| aaabcxyzpqrrrabbxyyyypqqqqqqAzz |
| 0: aaabcxyzpqrrrabbxyyyypqqqqqqAzz |
| aaaabcxyzpqrrrabbxyyyypqAzz |
| 0: aaaabcxyzpqrrrabbxyyyypqAzz |
| abxyzzpqrrrabbxyyyypqAzz |
| 0: abxyzzpqrrrabbxyyyypqAzz |
| aabxyzzzpqrrrabbxyyyypqAzz |
| 0: aabxyzzzpqrrrabbxyyyypqAzz |
| aaabxyzzzzpqrrrabbxyyyypqAzz |
| 0: aaabxyzzzzpqrrrabbxyyyypqAzz |
| aaaabxyzzzzpqrrrabbxyyyypqAzz |
| 0: aaaabxyzzzzpqrrrabbxyyyypqAzz |
| abcxyzzpqrrrabbxyyyypqAzz |
| 0: abcxyzzpqrrrabbxyyyypqAzz |
| aabcxyzzzpqrrrabbxyyyypqAzz |
| 0: aabcxyzzzpqrrrabbxyyyypqAzz |
| aaabcxyzzzzpqrrrabbxyyyypqAzz |
| 0: aaabcxyzzzzpqrrrabbxyyyypqAzz |
| aaaabcxyzzzzpqrrrabbxyyyypqAzz |
| 0: aaaabcxyzzzzpqrrrabbxyyyypqAzz |
| aaaabcxyzzzzpqrrrabbbxyyyypqAzz |
| 0: aaaabcxyzzzzpqrrrabbbxyyyypqAzz |
| aaaabcxyzzzzpqrrrabbbxyyyyypqAzz |
| 0: aaaabcxyzzzzpqrrrabbbxyyyyypqAzz |
| aaabcxyzpqrrrabbxyyyypABzz |
| 0: aaabcxyzpqrrrabbxyyyypABzz |
| aaabcxyzpqrrrabbxyyyypABBzz |
| 0: aaabcxyzpqrrrabbxyyyypABBzz |
| >>>aaabxyzpqrrrabbxyyyypqAzz |
| 0: aaabxyzpqrrrabbxyyyypqAzz |
| >aaaabxyzpqrrrabbxyyyypqAzz |
| 0: aaaabxyzpqrrrabbxyyyypqAzz |
| >>>>abcxyzpqrrrabbxyyyypqAzz |
| 0: abcxyzpqrrrabbxyyyypqAzz |
| *** Failers |
| No match |
| abxyzpqrrabbxyyyypqAzz |
| No match |
| abxyzpqrrrrabbxyyyypqAzz |
| No match |
| abxyzpqrrrabxyyyypqAzz |
| No match |
| aaaabcxyzzzzpqrrrabbbxyyyyyypqAzz |
| No match |
| aaaabcxyzzzzpqrrrabbbxyyypqAzz |
| No match |
| aaabcxyzpqrrrabbxyyyypqqqqqqqAzz |
| No match |
| |
| /^(abc){1,2}zz/ |
| abczz |
| 0: abczz |
| abcabczz |
| 0: abcabczz |
| *** Failers |
| No match |
| zz |
| No match |
| abcabcabczz |
| No match |
| >>abczz |
| No match |
| |
| /^(b+?|a){1,2}?c/ |
| bc |
| 0: bc |
| bbc |
| 0: bbc |
| bbbc |
| 0: bbbc |
| bac |
| 0: bac |
| bbac |
| 0: bbac |
| aac |
| 0: aac |
| abbbbbbbbbbbc |
| 0: abbbbbbbbbbbc |
| bbbbbbbbbbbac |
| 0: bbbbbbbbbbbac |
| *** Failers |
| No match |
| aaac |
| No match |
| abbbbbbbbbbbac |
| No match |
| |
| /^(b+|a){1,2}c/ |
| bc |
| 0: bc |
| bbc |
| 0: bbc |
| bbbc |
| 0: bbbc |
| bac |
| 0: bac |
| bbac |
| 0: bbac |
| aac |
| 0: aac |
| abbbbbbbbbbbc |
| 0: abbbbbbbbbbbc |
| bbbbbbbbbbbac |
| 0: bbbbbbbbbbbac |
| *** Failers |
| No match |
| aaac |
| No match |
| abbbbbbbbbbbac |
| No match |
| |
| /^(b+|a){1,2}?bc/ |
| bbc |
| 0: bbc |
| |
| /^(b*|ba){1,2}?bc/ |
| babc |
| 0: babc |
| bbabc |
| 0: bbabc |
| bababc |
| 0: bababc |
| *** Failers |
| No match |
| bababbc |
| No match |
| babababc |
| No match |
| |
| /^(ba|b*){1,2}?bc/ |
| babc |
| 0: babc |
| bbabc |
| 0: bbabc |
| bababc |
| 0: bababc |
| *** Failers |
| No match |
| bababbc |
| No match |
| babababc |
| No match |
| |
| /^\ca\cA\c[\c{\c:/ |
| \x01\x01\e;z |
| 0: \x01\x01\x1b;z |
| |
| /^[ab\]cde]/ |
| athing |
| 0: a |
| bthing |
0: b |
0: b |
a\x{100} | ]thing |
0: \x{100} | 0: ] |
| cthing |
| 0: c |
|