/[pcre]/code/trunk/testdata/testoutput2
ViewVC logotype

Diff of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 162 by ph10, Thu May 3 10:47:48 2007 UTC revision 453 by ph10, Fri Sep 18 19:12:35 2009 UTC
# Line 1  Line 1 
1    /-- This set of tests is not Perl-compatible. It checks on special features
2        of PCRE's API, error diagnostics, and the compiled code of some patterns.
3        It also checks the non-Perl syntax the PCRE supports (Python, .NET,
4        Oniguruma). Finally, there are some tests where PCRE and Perl differ,
5        either because PCRE can't be compatible, or there is potential Perl
6        bug. --/
7    
8    /-- Originally, the Perl 5.10 things were in here too, but now I have separated
9        many (most?) of them out into test 11. However, there may still be some
10        that were overlooked. --/
11    
12  /(a)b|/I  /(a)b|/I
13  Capturing subpattern count = 1  Capturing subpattern count = 1
14  No options  No options
# Line 40  No match Line 51  No match
51    
52  /a+bc/I  /a+bc/I
53  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
54  No options  No options
55  First char = 'a'  First char = 'a'
56  Need char = 'c'  Need char = 'c'
57    
58  /a*bc/I  /a*bc/I
59  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
60  No options  No options
61  No first char  No first char
62  Need char = 'c'  Need char = 'c'
63    
64  /a{3}bc/I  /a{3}bc/I
65  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
66  No options  No options
67  First char = 'a'  First char = 'a'
68  Need char = 'c'  Need char = 'c'
69    
70  /(abc|a+z)/I  /(abc|a+z)/I
71  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
72  No options  No options
73  First char = 'a'  First char = 'a'
74  No need char  No need char
# Line 78  No match Line 85  No match
85      def\nabc      def\nabc
86  No match  No match
87    
88  /ab\hdef/X  /ab\idef/X
89  Failed: unrecognized character follows \ at offset 3  Failed: unrecognized character follows \ at offset 3
90    
91  /(?X)ab\hdef/X  /(?X)ab\idef/X
92  Failed: unrecognized character follows \ at offset 7  Failed: unrecognized character follows \ at offset 7
93    
94  /x{5,4}/  /x{5,4}/
# Line 109  Failed: missing ) at offset 4 Line 116  Failed: missing ) at offset 4
116  Failed: missing ) after comment at offset 7  Failed: missing ) after comment at offset 7
117    
118  /(?z)abc/  /(?z)abc/
119  Failed: unrecognized character after (? at offset 2  Failed: unrecognized character after (? or (?- at offset 2
120    
121  /.*b/I  /.*b/I
122  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
123  No options  No options
124  First char at start or follows newline  First char at start or follows newline
125  Need char = 'b'  Need char = 'b'
126    
127  /.*?b/I  /.*?b/I
128  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
129  No options  No options
130  First char at start or follows newline  First char at start or follows newline
131  Need char = 'b'  Need char = 'b'
# Line 310  No match Line 315  No match
315  No match  No match
316    
317  /ab(?z)cd/  /ab(?z)cd/
318  Failed: unrecognized character after (? at offset 4  Failed: unrecognized character after (? or (?- at offset 4
319    
320  /^abc|def/I  /^abc|def/I
321  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 324  No need char Line 329  No need char
329    
330  /.*((abc)$|(def))/I  /.*((abc)$|(def))/I
331  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
332  No options  No options
333  First char at start or follows newline  First char at start or follows newline
334  No need char  No need char
# Line 338  No need char Line 342  No need char
342   2: <unset>   2: <unset>
343   3: def   3: def
344    
345  /abc/IP  /abc/P
346      abc      abc
347   0: abc   0: abc
348      *** Failers      *** Failers
349  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
350    
351  /^abc|def/IP  /^abc|def/P
352      abcdef      abcdef
353   0: abc   0: abc
354      abcdef\B      abcdef\B
355   0: def   0: def
356    
357  /.*((abc)$|(def))/IP  /.*((abc)$|(def))/P
358      defabc      defabc
359   0: defabc   0: defabc
360   1: abc   1: abc
# Line 360  No match: POSIX code 17: match failed Line 364  No match: POSIX code 17: match failed
364   1: def   1: def
365   3: def   3: def
366    
367  /the quick brown fox/IP  /the quick brown fox/P
368      the quick brown fox      the quick brown fox
369   0: the quick brown fox   0: the quick brown fox
370      *** Failers      *** Failers
# Line 368  No match: POSIX code 17: match failed Line 372  No match: POSIX code 17: match failed
372      The Quick Brown Fox      The Quick Brown Fox
373  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
374    
375  /the quick brown fox/IPi  /the quick brown fox/Pi
376      the quick brown fox      the quick brown fox
377   0: the quick brown fox   0: the quick brown fox
378      The Quick Brown Fox      The Quick Brown Fox
379   0: The Quick Brown Fox   0: The Quick Brown Fox
380    
381  /abc.def/IP  /abc.def/P
382      *** Failers      *** Failers
383  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
384      abc\ndef      abc\ndef
385  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
386    
387  /abc$/IP  /abc$/P
388      abc      abc
389   0: abc   0: abc
390      abc\n      abc\n
391   0: abc   0: abc
392    
393  /(abc)\2/IP  /(abc)\2/P
394  Failed: POSIX code 15: bad back reference at offset 7  Failed: POSIX code 15: bad back reference at offset 7
395    
396  /(abc\1)/IP  /(abc\1)/P
397      abc      abc
398  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
399    
# Line 401  Failed: missing terminating ] for charac Line 405  Failed: missing terminating ] for charac
405    
406  /[^aeiou ]{3,}/I  /[^aeiou ]{3,}/I
407  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
408  No options  No options
409  No first char  No first char
410  No need char  No need char
# Line 410  No need char Line 413  No need char
413    
414  /<.*>/I  /<.*>/I
415  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
416  No options  No options
417  First char = '<'  First char = '<'
418  Need char = '>'  Need char = '>'
# Line 419  Need char = '>' Line 421  Need char = '>'
421    
422  /<.*?>/I  /<.*?>/I
423  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
424  No options  No options
425  First char = '<'  First char = '<'
426  Need char = '>'  Need char = '>'
# Line 428  Need char = '>' Line 429  Need char = '>'
429    
430  /<.*>/IU  /<.*>/IU
431  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
432  Options: ungreedy  Options: ungreedy
433  First char = '<'  First char = '<'
434  Need char = '>'  Need char = '>'
# Line 437  Need char = '>' Line 437  Need char = '>'
437    
438  /(?U)<.*>/I  /(?U)<.*>/I
439  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
440  Options: ungreedy  Options: ungreedy
441  First char = '<'  First char = '<'
442  Need char = '>'  Need char = '>'
# Line 446  Need char = '>' Line 445  Need char = '>'
445    
446  /<.*?>/IU  /<.*?>/IU
447  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
448  Options: ungreedy  Options: ungreedy
449  First char = '<'  First char = '<'
450  Need char = '>'  Need char = '>'
# Line 455  Need char = '>' Line 453  Need char = '>'
453    
454  /={3,}/IU  /={3,}/IU
455  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
456  Options: ungreedy  Options: ungreedy
457  First char = '='  First char = '='
458  Need char = '='  Need char = '='
# Line 464  Need char = '=' Line 461  Need char = '='
461    
462  /(?U)={3,}?/I  /(?U)={3,}?/I
463  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
464  Options: ungreedy  Options: ungreedy
465  First char = '='  First char = '='
466  Need char = '='  Need char = '='
# Line 522  No need char Line 518  No need char
518    
519  /(?s).*/I  /(?s).*/I
520  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
521  Options: anchored dotall  Options: anchored dotall
522  No first char  No first char
523  No need char  No need char
# Line 584  Failed: syntax error in subpattern name Line 579  Failed: syntax error in subpattern name
579  /((?s)blah)\s+\1/I  /((?s)blah)\s+\1/I
580  Capturing subpattern count = 1  Capturing subpattern count = 1
581  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
582  No options  No options
583  First char = 'b'  First char = 'b'
584  Need char = 'h'  Need char = 'h'
# Line 592  Need char = 'h' Line 586  Need char = 'h'
586  /((?i)blah)\s+\1/I  /((?i)blah)\s+\1/I
587  Capturing subpattern count = 1  Capturing subpattern count = 1
588  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
589  No options  No options
590  First char = 'b' (caseless)  First char = 'b' (caseless)
591  Need char = 'h' (caseless)  Need char = 'h' (caseless)
592    
593  /((?i)b)/IDZS  /((?i)b)/IDZS
594  ------------------------------------------------------------------  ------------------------------------------------------------------
595          Bra 0          Bra
596          Bra 1          CBra 1
597       01 Opt       01 Opt
598       NC b       NC b
599          Ket          Ket
# Line 616  Study returned NULL Line 609  Study returned NULL
609    
610  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
611  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
612  No options  No options
613  No first char  No first char
614  No need char  No need char
# Line 668  Need char = 'c' Line 660  Need char = 'c'
660    
661  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
662  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
663  Options: anchored  Options: anchored
664  No first char  No first char
665  No need char  No need char
# Line 703  Starting byte set: a b Line 694  Starting byte set: a b
694    
695  /(?<=foo\n)^bar/Im  /(?<=foo\n)^bar/Im
696  Capturing subpattern count = 0  Capturing subpattern count = 0
697    Contains explicit CR or LF match
698  Options: multiline  Options: multiline
699  No first char  No first char
700  Need char = 'r'  Need char = 'r'
# Line 719  No match Line 711  No match
711    
712  /^(?<=foo\n)bar/Im  /^(?<=foo\n)bar/Im
713  Capturing subpattern count = 0  Capturing subpattern count = 0
714    Contains explicit CR or LF match
715  Options: multiline  Options: multiline
716  First char at start or follows newline  First char at start or follows newline
717  Need char = 'r'  Need char = 'r'
# Line 782  No need char Line 775  No need char
775    
776  /(?>.*)(?<=(abcd)|(xyz))/I  /(?>.*)(?<=(abcd)|(xyz))/I
777  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
778  No options  No options
779  First char at start or follows newline  First char at start or follows newline
780  No need char  No need char
# Line 944  Failed: missing ) at offset 4 Line 936  Failed: missing ) at offset 4
936  Failed: unrecognized character after (?< at offset 3  Failed: unrecognized character after (?< at offset 3
937    
938  /a(?{)b/  /a(?{)b/
939  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
940    
941  /a(?{{})b/  /a(?{{})b/
942  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
943    
944  /a(?{}})b/  /a(?{}})b/
945  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
946    
947  /a(?{"{"})b/  /a(?{"{"})b/
948  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
949    
950  /a(?{"{"}})b/  /a(?{"{"}})b/
951  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
952    
953  /(?(1?)a|b)/  /(?(1?)a|b)/
954  Failed: malformed number or name after (?( at offset 4  Failed: malformed number or name after (?( at offset 4
955    
 /(?(1)a|b|c)/  
 Failed: conditional group contains more than two branches at offset 10  
   
956  /[a[:xyz:/  /[a[:xyz:/
957  Failed: missing terminating ] for character class at offset 8  Failed: missing terminating ] for character class at offset 8
958    
# Line 1004  copy substring 5 failed -7 Line 993  copy substring 5 failed -7
993    
994  /(.{20})/I  /(.{20})/I
995  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
996  No options  No options
997  No first char  No first char
998  No need char  No need char
# Line 1022  No need char Line 1010  No need char
1010    
1011  /(.{15})/I  /(.{15})/I
1012  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1013  No options  No options
1014  No first char  No first char
1015  No need char  No need char
# Line 1037  No need char Line 1024  No need char
1024    
1025  /(.{16})/I  /(.{16})/I
1026  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1027  No options  No options
1028  No first char  No first char
1029  No need char  No need char
# Line 1104  No need char Line 1090  No need char
1090  )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+  )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1091  )?)?)?)?)?)?)?)?)?otherword/I  )?)?)?)?)?)?)?)?)?otherword/I
1092  Capturing subpattern count = 8  Capturing subpattern count = 8
1093  Partial matching not supported  Contains explicit CR or LF match
1094  No options  No options
1095  First char = 'w'  First char = 'w'
1096  Need char = 'd'  Need char = 'd'
1097    
1098  /.*X/IDZ  /.*X/IDZ
1099  ------------------------------------------------------------------  ------------------------------------------------------------------
1100          Bra 0          Bra
1101          Any*          Any*
1102          X          X
1103          Ket          Ket
1104          End          End
1105  ------------------------------------------------------------------  ------------------------------------------------------------------
1106  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1107  No options  No options
1108  First char at start or follows newline  First char at start or follows newline
1109  Need char = 'X'  Need char = 'X'
1110    
1111  /.*X/IDZs  /.*X/IDZs
1112  ------------------------------------------------------------------  ------------------------------------------------------------------
1113          Bra 0          Bra
1114          Any*          AllAny*
1115          X          X
1116          Ket          Ket
1117          End          End
1118  ------------------------------------------------------------------  ------------------------------------------------------------------
1119  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1120  Options: anchored dotall  Options: anchored dotall
1121  No first char  No first char
1122  Need char = 'X'  Need char = 'X'
1123    
1124  /(.*X|^B)/IDZ  /(.*X|^B)/IDZ
1125  ------------------------------------------------------------------  ------------------------------------------------------------------
1126          Bra 0          Bra
1127          Bra 1          CBra 1
1128          Any*          Any*
1129          X          X
1130          Alt          Alt
# Line 1151  Need char = 'X' Line 1135  Need char = 'X'
1135          End          End
1136  ------------------------------------------------------------------  ------------------------------------------------------------------
1137  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1138  No options  No options
1139  First char at start or follows newline  First char at start or follows newline
1140  No need char  No need char
1141    
1142  /(.*X|^B)/IDZs  /(.*X|^B)/IDZs
1143  ------------------------------------------------------------------  ------------------------------------------------------------------
1144          Bra 0          Bra
1145          Bra 1          CBra 1
1146          Any*          AllAny*
1147          X          X
1148          Alt          Alt
1149          ^          ^
# Line 1170  No need char Line 1153  No need char
1153          End          End
1154  ------------------------------------------------------------------  ------------------------------------------------------------------
1155  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1156  Options: anchored dotall  Options: anchored dotall
1157  No first char  No first char
1158  No need char  No need char
1159    
1160  /(?s)(.*X|^B)/IDZ  /(?s)(.*X|^B)/IDZ
1161  ------------------------------------------------------------------  ------------------------------------------------------------------
1162          Bra 0          Bra
1163          Bra 1          CBra 1
1164          Any*          AllAny*
1165          X          X
1166          Alt          Alt
1167          ^          ^
# Line 1189  No need char Line 1171  No need char
1171          End          End
1172  ------------------------------------------------------------------  ------------------------------------------------------------------
1173  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1174  Options: anchored dotall  Options: anchored dotall
1175  No first char  No first char
1176  No need char  No need char
1177    
1178  /(?s:.*X|^B)/IDZ  /(?s:.*X|^B)/IDZ
1179  ------------------------------------------------------------------  ------------------------------------------------------------------
1180          Bra 0          Bra
1181          Bra 0          Bra
1182       04 Opt       04 Opt
1183          Any*          AllAny*
1184          X          X
1185          Alt          Alt
1186       04 Opt       04 Opt
# Line 1211  No need char Line 1192  No need char
1192          End          End
1193  ------------------------------------------------------------------  ------------------------------------------------------------------
1194  Capturing subpattern count = 0  Capturing subpattern count = 0
1195  Partial matching not supported  Options: anchored
1196  No options  No first char
 First char at start or follows newline  
1197  No need char  No need char
1198    
1199  /\Biss\B/I+  /\Biss\B/I+
# Line 1296  No need char Line 1276  No need char
1276    
1277  /.*iss/Ig+  /.*iss/Ig+
1278  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1279  No options  No options
1280  First char at start or follows newline  First char at start or follows newline
1281  Need char = 's'  Need char = 's'
# Line 1347  No need char Line 1326  No need char
1326    
1327  /^ab\n/Ig+  /^ab\n/Ig+
1328  Capturing subpattern count = 0  Capturing subpattern count = 0
1329    Contains explicit CR or LF match
1330  Options: anchored  Options: anchored
1331  No first char  No first char
1332  No need char  No need char
# Line 1356  No need char Line 1336  No need char
1336    
1337  /^ab\n/Img+  /^ab\n/Img+
1338  Capturing subpattern count = 0  Capturing subpattern count = 0
1339    Contains explicit CR or LF match
1340  Options: multiline  Options: multiline
1341  First char at start or follows newline  First char at start or follows newline
1342  Need char = 10  Need char = 10
# Line 1397  Need char = 'c' Line 1378  Need char = 'c'
1378    
1379  /a*/I  /a*/I
1380  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1381  No options  No options
1382  No first char  No first char
1383  No need char  No need char
1384    
1385  /a+/I  /a+/I
1386  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1387  No options  No options
1388  First char = 'a'  First char = 'a'
1389  No need char  No need char
1390    
1391  /(baa|a+)/I  /(baa|a+)/I
1392  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1393  No options  No options
1394  No first char  No first char
1395  Need char = 'a'  Need char = 'a'
1396    
1397  /a{0,3}/I  /a{0,3}/I
1398  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1399  No options  No options
1400  No first char  No first char
1401  No need char  No need char
1402    
1403  /baa{3,}/I  /baa{3,}/I
1404  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1405  No options  No options
1406  First char = 'b'  First char = 'b'
1407  Need char = 'a'  Need char = 'a'
1408    
1409  /"([^\\"]+|\\.)*"/I  /"([^\\"]+|\\.)*"/I
1410  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1411  No options  No options
1412  First char = '"'  First char = '"'
1413  Need char = '"'  Need char = '"'
# Line 1487  Need char = 'b' Line 1462  Need char = 'b'
1462    
1463  /abc*/I  /abc*/I
1464  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1465  No options  No options
1466  First char = 'a'  First char = 'a'
1467  Need char = 'b'  Need char = 'b'
1468    
1469  /ab.c*/I  /ab.c*/I
1470  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1471  No options  No options
1472  First char = 'a'  First char = 'a'
1473  Need char = 'b'  Need char = 'b'
1474    
1475  /a.c*/I  /a.c*/I
1476  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1477  No options  No options
1478  First char = 'a'  First char = 'a'
1479  No need char  No need char
1480    
1481  /.c*/I  /.c*/I
1482  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1483  No options  No options
1484  No first char  No first char
1485  No need char  No need char
1486    
1487  /ac*/I  /ac*/I
1488  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1489  No options  No options
1490  First char = 'a'  First char = 'a'
1491  No need char  No need char
1492    
1493  /(a.c*|b.c*)/I  /(a.c*|b.c*)/I
1494  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1495  No options  No options
1496  No first char  No first char
1497  No need char  No need char
1498    
1499  /a.c*|aba/I  /a.c*|aba/I
1500  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1501  No options  No options
1502  First char = 'a'  First char = 'a'
1503  No need char  No need char
1504    
1505  /.+a/I  /.+a/I
1506  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1507  No options  No options
1508  No first char  No first char
1509  Need char = 'a'  Need char = 'a'
1510    
1511  /(?=abcda)a.*/I  /(?=abcda)a.*/I
1512  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1513  No options  No options
1514  First char = 'a'  First char = 'a'
1515  Need char = 'a'  Need char = 'a'
1516    
1517  /(?=a)a.*/I  /(?=a)a.*/I
1518  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1519  No options  No options
1520  First char = 'a'  First char = 'a'
1521  No need char  No need char
# Line 1563  No need char Line 1528  No need char
1528    
1529  /a\d*/I  /a\d*/I
1530  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1531  No options  No options
1532  First char = 'a'  First char = 'a'
1533  No need char  No need char
1534    
1535  /ab\d*/I  /ab\d*/I
1536  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1537  No options  No options
1538  First char = 'a'  First char = 'a'
1539  Need char = 'b'  Need char = 'b'
# Line 1589  Need char = 'd' Line 1552  Need char = 'd'
1552    
1553  /ab\d+/I  /ab\d+/I
1554  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1555  No options  No options
1556  First char = 'a'  First char = 'a'
1557  Need char = 'b'  Need char = 'b'
1558    
1559  /a(?(1)b)/I  /a(?(1)b)(.)/I
1560  Capturing subpattern count = 0  Capturing subpattern count = 1
1561  No options  No options
1562  First char = 'a'  First char = 'a'
1563  No need char  No need char
1564    
1565  /a(?(1)bag|big)/I  /a(?(1)bag|big)(.)/I
1566  Capturing subpattern count = 0  Capturing subpattern count = 1
1567  No options  No options
1568  First char = 'a'  First char = 'a'
1569  Need char = 'g'  Need char = 'g'
1570    
1571  /a(?(1)bag|big)*/I  /a(?(1)bag|big)*(.)/I
1572  Capturing subpattern count = 0  Capturing subpattern count = 1
1573  No options  No options
1574  First char = 'a'  First char = 'a'
1575  No need char  No need char
1576    
1577  /a(?(1)bag|big)+/I  /a(?(1)bag|big)+(.)/I
1578  Capturing subpattern count = 0  Capturing subpattern count = 1
1579  No options  No options
1580  First char = 'a'  First char = 'a'
1581  Need char = 'g'  Need char = 'g'
1582    
1583  /a(?(1)b..|b..)/I  /a(?(1)b..|b..)(.)/I
1584  Capturing subpattern count = 0  Capturing subpattern count = 1
1585  No options  No options
1586  First char = 'a'  First char = 'a'
1587  Need char = 'b'  Need char = 'b'
# Line 1664  No need char Line 1626  No need char
1626      \Nabc      \Nabc
1627  No match  No match
1628    
1629  /a*(b+)(z)(z)/IP  /a*(b+)(z)(z)/P
1630      aaaabbbbzzzz      aaaabbbbzzzz
1631   0: aaaabbbbzz   0: aaaabbbbzz
1632   1: bbbb   1: bbbb
# Line 1707  Study returned NULL Line 1669  Study returned NULL
1669    \)            # Closing )    \)            # Closing )
1670    /Ix    /Ix
1671  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1672  Options: extended  Options: extended
1673  First char = '('  First char = '('
1674  Need char = ')'  Need char = ')'
# Line 1736  No match Line 1697  No match
1697    
1698  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg
1699  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1700  Options: extended  Options: extended
1701  First char = '('  First char = '('
1702  Need char = ')'  Need char = ')'
# Line 1751  Need char = ')' Line 1711  Need char = ')'
1711    
1712  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix
1713  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1714  Options: extended  Options: extended
1715  First char = '('  First char = '('
1716  Need char = ')'  Need char = ')'
# Line 1770  No match Line 1729  No match
1729    
1730  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix
1731  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1732  Options: extended  Options: extended
1733  First char = '('  First char = '('
1734  Need char = ')'  Need char = ')'
# Line 1781  Need char = ')' Line 1739  Need char = ')'
1739    
1740  /\(  ( (?>[^()]+) | (?R) )* \) /Ix  /\(  ( (?>[^()]+) | (?R) )* \) /Ix
1741  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1742  Options: extended  Options: extended
1743  First char = '('  First char = '('
1744  Need char = ')'  Need char = ')'
# Line 1791  Need char = ')' Line 1748  Need char = ')'
1748    
1749  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1750  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
1751  Options: extended  Options: extended
1752  First char = '('  First char = '('
1753  Need char = ')'  Need char = ')'
# Line 1802  Need char = ')' Line 1758  Need char = ')'
1758    
1759  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1760  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1761  Options: extended  Options: extended
1762  First char = '('  First char = '('
1763  Need char = ')'  Need char = ')'
# Line 1819  Need char = ')' Line 1774  Need char = ')'
1774    
1775  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
1776  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1777  Options: extended  Options: extended
1778  First char = '('  First char = '('
1779  Need char = ')'  Need char = ')'
# Line 1836  Need char = ')' Line 1790  Need char = ')'
1790    
1791  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
1792  Capturing subpattern count = 11  Capturing subpattern count = 11
 Partial matching not supported  
1793  Options: extended  Options: extended
1794  First char = '('  First char = '('
1795  Need char = ')'  Need char = ')'
# Line 1856  Need char = ')' Line 1809  Need char = ')'
1809    
1810  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
1811  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1812  Options: extended  Options: extended
1813  First char = '('  First char = '('
1814  Need char = ')'  Need char = ')'
# Line 1864  Need char = ')' Line 1816  Need char = ')'
1816   0: (abcd(xyz<p>qrs)123)   0: (abcd(xyz<p>qrs)123)
1817   1: abcd(xyz<p>qrs)123   1: abcd(xyz<p>qrs)123
1818   2: 123   2: 123
  3: <unset>  
1819    
1820  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
1821  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1822  Options: extended  Options: extended
1823  First char = '('  First char = '('
1824  Need char = ')'  Need char = ')'
# Line 1885  Need char = ')' Line 1835  Need char = ')'
1835    
1836  /^[[:alnum:]]/DZ  /^[[:alnum:]]/DZ
1837  ------------------------------------------------------------------  ------------------------------------------------------------------
1838          Bra 0          Bra
1839          ^          ^
1840          [0-9A-Za-z]          [0-9A-Za-z]
1841          Ket          Ket
# Line 1898  No need char Line 1848  No need char
1848    
1849  /^[[:^alnum:]]/DZ  /^[[:^alnum:]]/DZ
1850  ------------------------------------------------------------------  ------------------------------------------------------------------
1851          Bra 0          Bra
1852          ^          ^
1853          [\x00-/:-@[-`{-\xff]          [\x00-/:-@[-`{-\xff] (neg)
1854          Ket          Ket
1855          End          End
1856  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1911  No need char Line 1861  No need char
1861    
1862  /^[[:alpha:]]/DZ  /^[[:alpha:]]/DZ
1863  ------------------------------------------------------------------  ------------------------------------------------------------------
1864          Bra 0          Bra
1865          ^          ^
1866          [A-Za-z]          [A-Za-z]
1867          Ket          Ket
# Line 1924  No need char Line 1874  No need char
1874    
1875  /^[[:^alpha:]]/DZ  /^[[:^alpha:]]/DZ
1876  ------------------------------------------------------------------  ------------------------------------------------------------------
1877          Bra 0          Bra
1878          ^          ^
1879          [\x00-@[-`{-\xff]          [\x00-@[-`{-\xff] (neg)
1880          Ket          Ket
1881          End          End
1882  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1945  Starting byte set: A B C D E F G H I J K Line 1895  Starting byte set: A B C D E F G H I J K
1895    
1896  /^[[:ascii:]]/DZ  /^[[:ascii:]]/DZ
1897  ------------------------------------------------------------------  ------------------------------------------------------------------
1898          Bra 0          Bra
1899          ^          ^
1900          [\x00-\x7f]          [\x00-\x7f]
1901          Ket          Ket
# Line 1958  No need char Line 1908  No need char
1908    
1909  /^[[:^ascii:]]/DZ  /^[[:^ascii:]]/DZ
1910  ------------------------------------------------------------------  ------------------------------------------------------------------
1911          Bra 0          Bra
1912          ^          ^
1913          [\x80-\xff]          [\x80-\xff] (neg)
1914          Ket          Ket
1915          End          End
1916  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1971  No need char Line 1921  No need char
1921    
1922  /^[[:blank:]]/DZ  /^[[:blank:]]/DZ
1923  ------------------------------------------------------------------  ------------------------------------------------------------------
1924          Bra 0          Bra
1925          ^          ^
1926          [\x09 ]          [\x09 ]
1927          Ket          Ket
# Line 1984  No need char Line 1934  No need char
1934    
1935  /^[[:^blank:]]/DZ  /^[[:^blank:]]/DZ
1936  ------------------------------------------------------------------  ------------------------------------------------------------------
1937          Bra 0          Bra
1938          ^          ^
1939          [\x00-\x08\x0a-\x1f!-\xff]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
1940          Ket          Ket
1941          End          End
1942  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1997  No need char Line 1947  No need char
1947    
1948  /[\n\x0b\x0c\x0d[:blank:]]/IS  /[\n\x0b\x0c\x0d[:blank:]]/IS
1949  Capturing subpattern count = 0  Capturing subpattern count = 0
1950    Contains explicit CR or LF match
1951  No options  No options
1952  No first char  No first char
1953  No need char  No need char
# Line 2004  Starting byte set: \x09 \x0a \x0b \x0c \ Line 1955  Starting byte set: \x09 \x0a \x0b \x0c \
1955    
1956  /^[[:cntrl:]]/DZ  /^[[:cntrl:]]/DZ
1957  ------------------------------------------------------------------  ------------------------------------------------------------------
1958          Bra 0          Bra
1959          ^          ^
1960          [\x00-\x1f\x7f]          [\x00-\x1f\x7f]
1961          Ket          Ket
# Line 2017  No need char Line 1968  No need char
1968    
1969  /^[[:digit:]]/DZ  /^[[:digit:]]/DZ
1970  ------------------------------------------------------------------  ------------------------------------------------------------------
1971          Bra 0          Bra
1972          ^          ^
1973          [0-9]          [0-9]
1974          Ket          Ket
# Line 2030  No need char Line 1981  No need char
1981    
1982  /^[[:graph:]]/DZ  /^[[:graph:]]/DZ
1983  ------------------------------------------------------------------  ------------------------------------------------------------------
1984          Bra 0          Bra
1985          ^          ^
1986          [!-~]          [!-~]
1987          Ket          Ket
# Line 2043  No need char Line 1994  No need char
1994    
1995  /^[[:lower:]]/DZ  /^[[:lower:]]/DZ
1996  ------------------------------------------------------------------  ------------------------------------------------------------------
1997          Bra 0          Bra
1998          ^          ^
1999          [a-z]          [a-z]
2000          Ket          Ket
# Line 2056  No need char Line 2007  No need char
2007    
2008  /^[[:print:]]/DZ  /^[[:print:]]/DZ
2009  ------------------------------------------------------------------  ------------------------------------------------------------------
2010          Bra 0          Bra
2011          ^          ^
2012          [ -~]          [ -~]
2013          Ket          Ket
# Line 2069  No need char Line 2020  No need char
2020    
2021  /^[[:punct:]]/DZ  /^[[:punct:]]/DZ
2022  ------------------------------------------------------------------  ------------------------------------------------------------------
2023          Bra 0          Bra
2024          ^          ^
2025          [!-/:-@[-`{-~]          [!-/:-@[-`{-~]
2026          Ket          Ket
# Line 2082  No need char Line 2033  No need char
2033    
2034  /^[[:space:]]/DZ  /^[[:space:]]/DZ
2035  ------------------------------------------------------------------  ------------------------------------------------------------------
2036          Bra 0          Bra
2037          ^          ^
2038          [\x09-\x0d ]          [\x09-\x0d ]
2039          Ket          Ket
# Line 2095  No need char Line 2046  No need char
2046    
2047  /^[[:upper:]]/DZ  /^[[:upper:]]/DZ
2048  ------------------------------------------------------------------  ------------------------------------------------------------------
2049          Bra 0          Bra
2050          ^          ^
2051          [A-Z]          [A-Z]
2052          Ket          Ket
# Line 2108  No need char Line 2059  No need char
2059    
2060  /^[[:xdigit:]]/DZ  /^[[:xdigit:]]/DZ
2061  ------------------------------------------------------------------  ------------------------------------------------------------------
2062          Bra 0          Bra
2063          ^          ^
2064          [0-9A-Fa-f]          [0-9A-Fa-f]
2065          Ket          Ket
# Line 2121  No need char Line 2072  No need char
2072    
2073  /^[[:word:]]/DZ  /^[[:word:]]/DZ
2074  ------------------------------------------------------------------  ------------------------------------------------------------------
2075          Bra 0          Bra
2076          ^          ^
2077          [0-9A-Z_a-z]          [0-9A-Z_a-z]
2078          Ket          Ket
# Line 2134  No need char Line 2085  No need char
2085    
2086  /^[[:^cntrl:]]/DZ  /^[[:^cntrl:]]/DZ
2087  ------------------------------------------------------------------  ------------------------------------------------------------------
2088          Bra 0          Bra
2089          ^          ^
2090          [ -~\x80-\xff]          [ -~\x80-\xff] (neg)
2091          Ket          Ket
2092          End          End
2093  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2147  No need char Line 2098  No need char
2098    
2099  /^[12[:^digit:]]/DZ  /^[12[:^digit:]]/DZ
2100  ------------------------------------------------------------------  ------------------------------------------------------------------
2101          Bra 0          Bra
2102          ^          ^
2103          [\x00-/12:-\xff]          [\x00-/12:-\xff] (neg)
2104          Ket          Ket
2105          End          End
2106  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2160  No need char Line 2111  No need char
2111    
2112  /^[[:^blank:]]/DZ  /^[[:^blank:]]/DZ
2113  ------------------------------------------------------------------  ------------------------------------------------------------------
2114          Bra 0          Bra
2115          ^          ^
2116          [\x00-\x08\x0a-\x1f!-\xff]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
2117          Ket          Ket
2118          End          End
2119  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2173  No need char Line 2124  No need char
2124    
2125  /[01[:alpha:]%]/DZ  /[01[:alpha:]%]/DZ
2126  ------------------------------------------------------------------  ------------------------------------------------------------------
2127          Bra 0          Bra
2128          [%01A-Za-z]          [%01A-Za-z]
2129          Ket          Ket
2130          End          End
# Line 2246  Need char = 'd' Line 2197  Need char = 'd'
2197  /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/I  /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/I
2198  Capturing subpattern count = 271  Capturing subpattern count = 271
2199  Max back reference = 270  Max back reference = 270
 Partial matching not supported  
2200  No options  No options
2201  No first char  No first char
2202  No need char  No need char
# Line 2694  Need char = '-' Line 2644  Need char = '-'
2644    
2645  /#/IxDZ  /#/IxDZ
2646  ------------------------------------------------------------------  ------------------------------------------------------------------
2647          Bra 0          Bra
2648          Ket          Ket
2649          End          End
2650  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2705  No need char Line 2655  No need char
2655    
2656  /a#/IxDZ  /a#/IxDZ
2657  ------------------------------------------------------------------  ------------------------------------------------------------------
2658          Bra 0          Bra
2659          a          a
2660          Ket          Ket
2661          End          End
# Line 2717  No need char Line 2667  No need char
2667    
2668  /[\s]/DZ  /[\s]/DZ
2669  ------------------------------------------------------------------  ------------------------------------------------------------------
2670          Bra 0          Bra
2671          [\x09\x0a\x0c\x0d ]          [\x09\x0a\x0c\x0d ]
2672          Ket          Ket
2673          End          End
# Line 2729  No need char Line 2679  No need char
2679    
2680  /[\S]/DZ  /[\S]/DZ
2681  ------------------------------------------------------------------  ------------------------------------------------------------------
2682          Bra 0          Bra
2683          [\x00-\x08\x0b\x0e-\x1f!-\xff]          [\x00-\x08\x0b\x0e-\x1f!-\xff] (neg)
2684          Ket          Ket
2685          End          End
2686  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2741  No need char Line 2691  No need char
2691    
2692  /a(?i)b/DZ  /a(?i)b/DZ
2693  ------------------------------------------------------------------  ------------------------------------------------------------------
2694          Bra 0          Bra
2695          a          a
2696       01 Opt       01 Opt
2697       NC b       NC b
# Line 2763  No match Line 2713  No match
2713    
2714  /(a(?i)b)/DZ  /(a(?i)b)/DZ
2715  ------------------------------------------------------------------  ------------------------------------------------------------------
2716          Bra 0          Bra
2717          Bra 1          CBra 1
2718          a          a
2719       01 Opt       01 Opt
2720       NC b       NC b
# Line 2790  No match Line 2740  No match
2740    
2741  /   (?i)abc/IxDZ  /   (?i)abc/IxDZ
2742  ------------------------------------------------------------------  ------------------------------------------------------------------
2743          Bra 0          Bra
2744       NC abc       NC abc
2745          Ket          Ket
2746          End          End
# Line 2803  Need char = 'c' (caseless) Line 2753  Need char = 'c' (caseless)
2753  /#this is a comment  /#this is a comment
2754    (?i)abc/IxDZ    (?i)abc/IxDZ
2755  ------------------------------------------------------------------  ------------------------------------------------------------------
2756          Bra 0          Bra
2757       NC abc       NC abc
2758          Ket          Ket
2759          End          End
# Line 2815  Need char = 'c' (caseless) Line 2765  Need char = 'c' (caseless)
2765    
2766  /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ  /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
2767  ------------------------------------------------------------------  ------------------------------------------------------------------
2768          Bra 0          Bra
2769          123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890          123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2770          Ket          Ket
2771          End          End
# Line 2827  Need char = '0' Line 2777  Need char = '0'
2777    
2778  /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ  /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
2779  ------------------------------------------------------------------  ------------------------------------------------------------------
2780          Bra 0          Bra
2781          123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890          123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2782          Ket          Ket
2783          End          End
# Line 2839  Need char = '0' Line 2789  Need char = '0'
2789    
2790  /\Q\E/DZ  /\Q\E/DZ
2791  ------------------------------------------------------------------  ------------------------------------------------------------------
2792          Bra 0          Bra
2793          Ket          Ket
2794          End          End
2795  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2852  No need char Line 2802  No need char
2802    
2803  /\Q\Ex/DZ  /\Q\Ex/DZ
2804  ------------------------------------------------------------------  ------------------------------------------------------------------
2805          Bra 0          Bra
2806          x          x
2807          Ket          Ket
2808          End          End
# Line 2864  No need char Line 2814  No need char
2814    
2815  / \Q\E/DZ  / \Q\E/DZ
2816  ------------------------------------------------------------------  ------------------------------------------------------------------
2817          Bra 0          Bra
2818    
2819          Ket          Ket
2820          End          End
# Line 2876  No need char Line 2826  No need char
2826    
2827  /a\Q\E/DZ  /a\Q\E/DZ
2828  ------------------------------------------------------------------  ------------------------------------------------------------------
2829          Bra 0          Bra
2830          a          a
2831          Ket          Ket
2832          End          End
# Line 2894  No need char Line 2844  No need char
2844    
2845  /a\Q\Eb/DZ  /a\Q\Eb/DZ
2846  ------------------------------------------------------------------  ------------------------------------------------------------------
2847          Bra 0          Bra
2848          ab          ab
2849          Ket          Ket
2850          End          End
# Line 2908  Need char = 'b' Line 2858  Need char = 'b'
2858    
2859  /\Q\Eabc/DZ  /\Q\Eabc/DZ
2860  ------------------------------------------------------------------  ------------------------------------------------------------------
2861          Bra 0          Bra
2862          abc          abc
2863          Ket          Ket
2864          End          End
# Line 2920  Need char = 'c' Line 2870  Need char = 'c'
2870    
2871  /x*+\w/DZ  /x*+\w/DZ
2872  ------------------------------------------------------------------  ------------------------------------------------------------------
2873          Bra 0          Bra
2874          x*+          x*+
2875          \w          \w
2876          Ket          Ket
2877          End          End
2878  ------------------------------------------------------------------  ------------------------------------------------------------------
2879  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2880  No options  No options
2881  No first char  No first char
2882  No need char  No need char
# Line 2938  No match Line 2887  No match
2887    
2888  /x?+/DZ  /x?+/DZ
2889  ------------------------------------------------------------------  ------------------------------------------------------------------
2890          Bra 0          Bra
2891          x?+          x?+
2892          Ket          Ket
2893          End          End
# Line 2950  No need char Line 2899  No need char
2899    
2900  /x++/DZ  /x++/DZ
2901  ------------------------------------------------------------------  ------------------------------------------------------------------
2902          Bra 0          Bra
2903          x++          x++
2904          Ket          Ket
2905          End          End
2906  ------------------------------------------------------------------  ------------------------------------------------------------------
2907  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2908  No options  No options
2909  First char = 'x'  First char = 'x'
2910  No need char  No need char
2911    
2912  /x{1,3}+/DZ  /x{1,3}+/DZ
2913  ------------------------------------------------------------------  ------------------------------------------------------------------
2914          Bra 0          Bra
2915          Once          Once
2916          x          x
2917          x{0,2}          x{0,2}
# Line 2972  No need char Line 2920  No need char
2920          End          End
2921  ------------------------------------------------------------------  ------------------------------------------------------------------
2922  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2923  No options  No options
2924  First char = 'x'  First char = 'x'
2925  No need char  No need char
2926    
2927  /(x)*+/DZ  /(x)*+/DZ
2928  ------------------------------------------------------------------  ------------------------------------------------------------------
2929          Bra 0          Bra
2930          Once          Once
2931          Brazero          Brazero
2932          Bra 1          CBra 1
2933          x          x
2934          KetRmax          KetRmax
2935          Ket          Ket
# Line 2996  No need char Line 2943  No need char
2943    
2944  /^(\w++|\s++)*$/I  /^(\w++|\s++)*$/I
2945  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2946  Options: anchored  Options: anchored
2947  No first char  No first char
2948  No need char  No need char
# Line 3010  No match Line 2956  No match
2956    
2957  /(\d++)(\w)/I  /(\d++)(\w)/I
2958  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
2959  No options  No options
2960  No first char  No first char
2961  No need char  No need char
# Line 3025  No match Line 2970  No match
2970    
2971  /a++b/I  /a++b/I
2972  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2973  No options  No options
2974  First char = 'a'  First char = 'a'
2975  Need char = 'b'  Need char = 'b'
# Line 3034  Need char = 'b' Line 2978  Need char = 'b'
2978    
2979  /(a++b)/I  /(a++b)/I
2980  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2981  No options  No options
2982  First char = 'a'  First char = 'a'
2983  Need char = 'b'  Need char = 'b'
# Line 3044  Need char = 'b' Line 2987  Need char = 'b'
2987    
2988  /(a++)b/I  /(a++)b/I
2989  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2990  No options  No options
2991  First char = 'a'  First char = 'a'
2992  Need char = 'b'  Need char = 'b'
# Line 3054  Need char = 'b' Line 2996  Need char = 'b'
2996    
2997  /([^()]++|\([^()]*\))+/I  /([^()]++|\([^()]*\))+/I
2998  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2999  No options  No options
3000  No first char  No first char
3001  No need char  No need char
# Line 3064  No need char Line 3005  No need char
3005    
3006  /\(([^()]++|\([^()]+\))+\)/I  /\(([^()]++|\([^()]+\))+\)/I
3007  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3008  No options  No options
3009  First char = '('  First char = '('
3010  Need char = ')'  Need char = ')'
# Line 3081  No match Line 3021  No match
3021    
3022  /(abc){1,3}+/DZ  /(abc){1,3}+/DZ
3023  ------------------------------------------------------------------  ------------------------------------------------------------------
3024          Bra 0          Bra
3025          Once          Once
3026          Bra 1          CBra 1
3027          abc          abc
3028          Ket          Ket
3029          Brazero          Brazero
3030          Bra 0          Bra
3031          Bra 1          CBra 1
3032          abc          abc
3033          Ket          Ket
3034          Brazero          Brazero
3035          Bra 1          CBra 1
3036          abc          abc
3037          Ket          Ket
3038          Ket          Ket
# Line 3119  Failed: nothing to repeat at offset 7 Line 3059  Failed: nothing to repeat at offset 7
3059    
3060  /x(?U)a++b/DZ  /x(?U)a++b/DZ
3061  ------------------------------------------------------------------  ------------------------------------------------------------------
3062          Bra 0          Bra
3063          x          x
3064          a++          a++
3065          b          b
# Line 3127  Failed: nothing to repeat at offset 7 Line 3067  Failed: nothing to repeat at offset 7
3067          End          End
3068  ------------------------------------------------------------------  ------------------------------------------------------------------
3069  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3070  No options  No options
3071  First char = 'x'  First char = 'x'
3072  Need char = 'b'  Need char = 'b'
# Line 3136  Need char = 'b' Line 3075  Need char = 'b'
3075    
3076  /(?U)xa++b/DZ  /(?U)xa++b/DZ
3077  ------------------------------------------------------------------  ------------------------------------------------------------------
3078          Bra 0          Bra
3079          x          x
3080          a++          a++
3081          b          b
# Line 3144  Need char = 'b' Line 3083  Need char = 'b'
3083          End          End
3084  ------------------------------------------------------------------  ------------------------------------------------------------------
3085  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3086  Options: ungreedy  Options: ungreedy
3087  First char = 'x'  First char = 'x'
3088  Need char = 'b'  Need char = 'b'
# Line 3153  Need char = 'b' Line 3091  Need char = 'b'
3091    
3092  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
3093  ------------------------------------------------------------------  ------------------------------------------------------------------
3094          Bra 0          Bra
3095          ^          ^
3096          Bra 1          CBra 1
3097          Bra 2          CBra 2
3098          a+          a+
3099          Ket          Ket
3100          Bra 3          CBra 3
3101          [ab]+?          [ab]+?
3102          Ket          Ket
3103          Bra 4          CBra 4
3104          [bc]+          [bc]+
3105          Ket          Ket
3106          Bra 5          CBra 5
3107          \w*          \w*
3108          Ket          Ket
3109          Ket          Ket
# Line 3173  Need char = 'b' Line 3111  Need char = 'b'
3111          End          End
3112  ------------------------------------------------------------------  ------------------------------------------------------------------
3113  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
3114  Options: anchored  Options: anchored
3115  No first char  No first char
3116  No need char  No need char
3117    
3118  /^x(?U)a+b/DZ  /^x(?U)a+b/DZ
3119  ------------------------------------------------------------------  ------------------------------------------------------------------
3120          Bra 0          Bra
3121          ^          ^
3122          x          x
3123          a++          a++
# Line 3189  No need char Line 3126  No need char
3126          End          End
3127  ------------------------------------------------------------------  ------------------------------------------------------------------
3128  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3129  Options: anchored  Options: anchored
3130  No first char  No first char
3131  Need char = 'b'  Need char = 'b'
3132    
3133  /^x(?U)(a+)b/DZ  /^x(?U)(a+)b/DZ
3134  ------------------------------------------------------------------  ------------------------------------------------------------------
3135          Bra 0          Bra
3136          ^          ^
3137          x          x
3138          Bra 1          CBra 1
3139          a+?          a+?
3140          Ket          Ket
3141          b          b
# Line 3207  Need char = 'b' Line 3143  Need char = 'b'
3143          End          End
3144  ------------------------------------------------------------------  ------------------------------------------------------------------
3145  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3146  Options: anchored  Options: anchored
3147  No first char  No first char
3148  Need char = 'b'  Need char = 'b'
# Line 3247  Failed: missing terminating ] for charac Line 3182  Failed: missing terminating ] for charac
3182    
3183  /[\s]/IDZ  /[\s]/IDZ
3184  ------------------------------------------------------------------  ------------------------------------------------------------------
3185          Bra 0          Bra
3186          [\x09\x0a\x0c\x0d ]          [\x09\x0a\x0c\x0d ]
3187          Ket          Ket
3188          End          End
# Line 3259  No need char Line 3194  No need char
3194    
3195  /[[:space:]]/IDZ  /[[:space:]]/IDZ
3196  ------------------------------------------------------------------  ------------------------------------------------------------------
3197          Bra 0          Bra
3198          [\x09-\x0d ]          [\x09-\x0d ]
3199          Ket          Ket
3200          End          End
# Line 3271  No need char Line 3206  No need char
3206    
3207  /[[:space:]abcde]/IDZ  /[[:space:]abcde]/IDZ
3208  ------------------------------------------------------------------  ------------------------------------------------------------------
3209          Bra 0          Bra
3210          [\x09-\x0d a-e]          [\x09-\x0d a-e]
3211          Ket          Ket
3212          End          End
# Line 3283  No need char Line 3218  No need char
3218    
3219  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix
3220  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3221  Options: extended  Options: extended
3222  First char = '<'  First char = '<'
3223  Need char = '>'  Need char = '>'
# Line 3306  No match Line 3240  No match
3240    
3241  |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ  |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
3242  ------------------------------------------------------------------  ------------------------------------------------------------------
3243          Bra 0          Bra
3244          8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X          8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
3245          \b          \b
3246          Ket          Ket
# Line 3319  Need char = 'X' Line 3253  Need char = 'X'
3253    
3254  |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ  |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
3255  ------------------------------------------------------------------  ------------------------------------------------------------------
3256          Bra 0          Bra
3257          $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X          $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
3258          \b          \b
3259          Ket          Ket
# Line 3333  Need char = 'X' Line 3267  Need char = 'X'
3267  /(.*)\d+\1/I  /(.*)\d+\1/I
3268  Capturing subpattern count = 1  Capturing subpattern count = 1
3269  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3270  No options  No options
3271  No first char  No first char
3272  No need char  No need char
3273    
3274  /(.*)\d+/I  /(.*)\d+/I
3275  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3276  No options  No options
3277  First char at start or follows newline  First char at start or follows newline
3278  No need char  No need char
# Line 3348  No need char Line 3280  No need char
3280  /(.*)\d+\1/Is  /(.*)\d+\1/Is
3281  Capturing subpattern count = 1  Capturing subpattern count = 1
3282  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3283  Options: dotall  Options: dotall
3284  No first char  No first char
3285  No need char  No need char
3286    
3287  /(.*)\d+/Is  /(.*)\d+/Is
3288  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3289  Options: anchored dotall  Options: anchored dotall
3290  No first char  No first char
3291  No need char  No need char
# Line 3363  No need char Line 3293  No need char
3293  /(.*(xyz))\d+\2/I  /(.*(xyz))\d+\2/I
3294  Capturing subpattern count = 2  Capturing subpattern count = 2
3295  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
3296  No options  No options
3297  First char at start or follows newline  First char at start or follows newline
3298  Need char = 'z'  Need char = 'z'
# Line 3371  Need char = 'z' Line 3300  Need char = 'z'
3300  /((.*))\d+\1/I  /((.*))\d+\1/I
3301  Capturing subpattern count = 2  Capturing subpattern count = 2
3302  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3303  No options  No options
3304  No first char  No first char
3305  No need char  No need char
# Line 3388  Need char = 'b' Line 3316  Need char = 'b'
3316    
3317  /(?=a).*/I  /(?=a).*/I
3318  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3319  No options  No options
3320  First char = 'a'  First char = 'a'
3321  No need char  No need char
# Line 3435  No options Line 3362  No options
3362  No first char  No first char
3363  Need char = 'a'  Need char = 'a'
3364    
3365  /(?(1)ab|ac)/I  /(?(1)ab|ac)(.)/I
3366  Capturing subpattern count = 0  Capturing subpattern count = 1
3367  No options  No options
3368  First char = 'a'  First char = 'a'
3369  No need char  No need char
3370    
3371  /(?(1)abz|acz)/I  /(?(1)abz|acz)(.)/I
3372  Capturing subpattern count = 0  Capturing subpattern count = 1
3373  No options  No options
3374  First char = 'a'  First char = 'a'
3375  Need char = 'z'  Need char = 'z'
3376    
3377  /(?(1)abz)/I  /(?(1)abz)(.)/I
3378  Capturing subpattern count = 0  Capturing subpattern count = 1
3379  No options  No options
3380  No first char  No first char
3381  No need char  No need char
3382    
3383  /(?(1)abz)123/I  /(?(1)abz)(1)23/I
3384  Capturing subpattern count = 0  Capturing subpattern count = 1
3385  No options  No options
3386  No first char  No first char
3387  Need char = '3'  Need char = '3'
# Line 3710  No need char Line 3637  No need char
3637    
3638  /(\d{3}(?C))*/I  /(\d{3}(?C))*/I
3639  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3640  No options  No options
3641  No first char  No first char
3642  No need char  No need char
# Line 3839  Callout 0: last capture = 1 Line 3765  Callout 0: last capture = 1
3765    
3766  /a(b+)(c*)(?C1)/I  /a(b+)(c*)(?C1)/I
3767  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3768  No options  No options
3769  First char = 'a'  First char = 'a'
3770  Need char = 'b'  Need char = 'b'
# Line 3865  No match Line 3790  No match
3790    
3791  /a(b+?)(c*?)(?C1)/I  /a(b+?)(c*?)(?C1)/I
3792  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3793  No options  No options
3794  First char = 'a'  First char = 'a'
3795  Need char = 'b'  Need char = 'b'
# Line 3991  Need char = '<' Line 3915  Need char = '<'
3915    
3916  /(a(?1)b)/DZ  /(a(?1)b)/DZ
3917  ------------------------------------------------------------------  ------------------------------------------------------------------
3918          Bra 0          Bra
3919          Bra 1          CBra 1
3920          a          a
3921          Once          Once
3922          Recurse          Recurse
# Line 4009  Need char = 'b' Line 3933  Need char = 'b'
3933    
3934  /(a(?1)+b)/DZ  /(a(?1)+b)/DZ
3935  ------------------------------------------------------------------  ------------------------------------------------------------------
3936          Bra 0          Bra
3937          Bra 1          CBra 1
3938          a          a
3939          Once          Once
3940          Recurse          Recurse
# Line 4025  No options Line 3949  No options
3949  First char = 'a'  First char = 'a'
3950  Need char = 'b'  Need char = 'b'
3951    
 /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii  
 Capturing subpattern count = 4  
 Max back reference = 4  
 Partial matching not supported  
 Options: anchored caseless  
 No first char  
 No need char  
     1221  
  0: 1221  
  1: 1221  
  2: 1  
     Satan, oscillate my metallic sonatas!  
  0: Satan, oscillate my metallic sonatas!  
  1: <unset>  
  2: <unset>  
  3: Satan, oscillate my metallic sonatas  
  4: S  
     A man, a plan, a canal: Panama!  
  0: A man, a plan, a canal: Panama!  
  1: <unset>  
  2: <unset>  
  3: A man, a plan, a canal: Panama  
  4: A  
     Able was I ere I saw Elba.  
  0: Able was I ere I saw Elba.  
  1: <unset>  
  2: <unset>  
  3: Able was I ere I saw Elba  
  4: A  
     *** Failers  
 No match  
     The quick brown fox  
 No match  
   
3952  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
3953  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3954  Options: anchored  Options: anchored
3955  No first char  No first char
3956  No need char  No need char
# Line 4102  No match Line 3991  No match
3991    
3992  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix
3993  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3994  Options: extended  Options: extended
3995  First char = '<'  First char = '<'
3996  Need char = '>'  Need char = '>'
# Line 4185  No need char Line 4073  No need char
4073    
4074  /a(?P<name1>b|c)d(?P<longername2>e)/DZ  /a(?P<name1>b|c)d(?P<longername2>e)/DZ
4075  ------------------------------------------------------------------  ------------------------------------------------------------------
4076          Bra 0          Bra
4077          a          a
4078          Bra 1          CBra 1
4079          b          b
4080          Alt          Alt
4081          c          c
4082          Ket          Ket
4083          d          d
4084          Bra 2          CBra 2
4085          e          e
4086          Ket          Ket
4087          Ket          Ket
# Line 4217  Need char = 'e' Line 4105  Need char = 'e'
4105    
4106  /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ  /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
4107  ------------------------------------------------------------------  ------------------------------------------------------------------
4108          Bra 0          Bra
4109          Bra 0          Bra
4110          a          a
4111          Bra 1          CBra 1
4112          c          c
4113          Bra 2          CBra 2
4114          d          d
4115          Ket          Ket
4116          Ket          Ket
4117          Ket          Ket
4118          Bra 3          CBra 3
4119          a          a
4120          Ket          Ket
4121          Ket          Ket
# Line 4244  Need char = 'a' Line 4132  Need char = 'a'
4132    
4133  /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ  /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
4134  ------------------------------------------------------------------  ------------------------------------------------------------------
4135          Bra 0          Bra
4136          Bra 1          CBra 1
4137          a          a
4138          Ket          Ket
4139          Any          Any
# Line 4276  Named capturing subpatterns: Line 4164  Named capturing subpatterns:
4164    one     1    one     1
4165    three   3    three   3
4166    two     2    two     2
 Partial matching not supported  
4167  Options: anchored caseless  Options: anchored caseless
4168  No first char  No first char
4169  No need char  No need char
# Line 4322  No need char Line 4209  No need char
4209    
4210  /(.*)a/Is  /(.*)a/Is
4211  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
4212  Options: anchored dotall  Options: anchored dotall
4213  No first char  No first char
4214  Need char = 'a'  Need char = 'a'
# Line 4330  Need char = 'a' Line 4216  Need char = 'a'
4216  /(.*)a\1/Is  /(.*)a\1/Is
4217  Capturing subpattern count = 1  Capturing subpattern count = 1
4218  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
4219  Options: dotall  Options: dotall
4220  No first char  No first char
4221  Need char = 'a'  Need char = 'a'
# Line 4338  Need char = 'a' Line 4223  Need char = 'a'
4223  /(.*)a(b)\2/Is  /(.*)a(b)\2/Is
4224  Capturing subpattern count = 2  Capturing subpattern count = 2
4225  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
4226  Options: anchored dotall  Options: anchored dotall
4227  No first char  No first char
4228  Need char = 'b'  Need char = 'b'
4229    
4230  /((.*)a|(.*)b)z/Is  /((.*)a|(.*)b)z/Is
4231  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4232  Options: anchored dotall  Options: anchored dotall
4233  No first char  No first char
4234  Need char = 'z'  Need char = 'z'
# Line 4353  Need char = 'z' Line 4236  Need char = 'z'
4236  /((.*)a|(.*)b)z\1/Is  /((.*)a|(.*)b)z\1/Is
4237  Capturing subpattern count = 3  Capturing subpattern count = 3
4238  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
4239  Options: dotall  Options: dotall
4240  No first char  No first char
4241  Need char = 'z'  Need char = 'z'
# Line 4361  Need char = 'z' Line 4243  Need char = 'z'
4243  /((.*)a|(.*)b)z\2/Is  /((.*)a|(.*)b)z\2/Is
4244  Capturing subpattern count = 3  Capturing subpattern count = 3
4245  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
4246  Options: dotall  Options: dotall
4247  No first char  No first char
4248  Need char = 'z'  Need char = 'z'
# Line 4369  Need char = 'z' Line 4250  Need char = 'z'
4250  /((.*)a|(.*)b)z\3/Is  /((.*)a|(.*)b)z\3/Is
4251  Capturing subpattern count = 3  Capturing subpattern count = 3
4252  Max back reference = 3  Max back reference = 3
 Partial matching not supported  
4253  Options: dotall  Options: dotall
4254  No first char  No first char
4255  Need char = 'z'  Need char = 'z'
# Line 4377  Need char = 'z' Line 4257  Need char = 'z'
4257  /((.*)a|^(.*)b)z\3/Is  /((.*)a|^(.*)b)z\3/Is
4258  Capturing subpattern count = 3  Capturing subpattern count = 3
4259  Max back reference = 3  Max back reference = 3
 Partial matching not supported  
4260  Options: anchored dotall  Options: anchored dotall
4261  No first char  No first char
4262  Need char = 'z'  Need char = 'z'
4263    
4264  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4265  Capturing subpattern count = 31  Capturing subpattern count = 31
 Partial matching not supported  
4266  Options: anchored dotall  Options: anchored dotall
4267  No first char  No first char
4268  No need char  No need char
# Line 4392  No need char Line 4270  No need char
4270  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4271  Capturing subpattern count = 31  Capturing subpattern count = 31
4272  Max back reference = 31  Max back reference = 31
 Partial matching not supported  
4273  Options: dotall  Options: dotall
4274  No first char  No first char
4275  No need char  No need char
# Line 4400  No need char Line 4277  No need char
4277  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4278  Capturing subpattern count = 32  Capturing subpattern count = 32
4279  Max back reference = 32  Max back reference = 32
 Partial matching not supported  
4280  Options: dotall  Options: dotall
4281  No first char  No first char
4282  No need char  No need char
4283    
4284  /(a)(bc)/INDZ  /(a)(bc)/INDZ
4285  ------------------------------------------------------------------  ------------------------------------------------------------------
4286          Bra 0          Bra
4287          Bra 0          Bra
4288          a          a
4289          Ket          Ket
4290          Bra 0          Bra
4291          bc          bc
4292          Ket          Ket
4293          Ket          Ket
# Line 4426  Need char = 'c' Line 4302  Need char = 'c'
4302    
4303  /(?P<one>a)(bc)/INDZ  /(?P<one>a)(bc)/INDZ
4304  ------------------------------------------------------------------  ------------------------------------------------------------------
4305          Bra 0          Bra
4306          Bra 1          CBra 1
4307          a          a
4308          Ket          Ket
4309          Bra 0          Bra
4310          bc          bc
4311          Ket          Ket
4312          Ket          Ket
# Line 4448  Need char = 'c' Line 4324  Need char = 'c'
4324    
4325  /(a)(?P<named>bc)/INDZ  /(a)(?P<named>bc)/INDZ
4326  ------------------------------------------------------------------  ------------------------------------------------------------------
4327          Bra 0          Bra
4328          Bra 0          Bra
4329          a          a
4330          Ket          Ket
4331          Bra 1          CBra 1
4332          bc          bc
4333          Ket          Ket
4334          Ket          Ket
# Line 4467  Need char = 'c' Line 4343  Need char = 'c'
4343    
4344  /(a+)*zz/I  /(a+)*zz/I
4345  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
4346  No options  No options
4347  No first char  No first char
4348  Need char = 'z'  Need char = 'z'
# Line 4541  copy substring three failed -7 Line 4416  copy substring three failed -7
4416    
4417  /(?P<Tes>)(?P<Test>)/DZ  /(?P<Tes>)(?P<Test>)/DZ
4418  ------------------------------------------------------------------  ------------------------------------------------------------------
4419          Bra 0          Bra
4420          Bra 1          CBra 1
4421          Ket          Ket
4422          Bra 2          CBra 2
4423          Ket          Ket
4424          Ket          Ket
4425          End          End
# Line 4559  No need char Line 4434  No need char
4434    
4435  /(?P<Test>)(?P<Tes>)/DZ  /(?P<Test>)(?P<Tes>)/DZ
4436  ------------------------------------------------------------------  ------------------------------------------------------------------
4437          Bra 0          Bra
4438          Bra 1          CBra 1
4439          Ket          Ket
4440          Bra 2          CBra 2
4441          Ket          Ket
4442          Ket          Ket
4443          End          End
# Line 4604  Failed: two named subpatterns have the s Line 4479  Failed: two named subpatterns have the s
4479  Capturing subpattern count = 3  Capturing subpattern count = 3
4480  Named capturing subpatterns:  Named capturing subpatterns:
4481    elem   2    elem   2
 Partial matching not supported  
4482  No options  No options
4483  First char = '['  First char = '['
4484  Need char = ']'  Need char = ']'
# Line 4622  No match Line 4496  No match
4496  Capturing subpattern count = 3  Capturing subpattern count = 3
4497  Named capturing subpatterns:  Named capturing subpatterns:
4498    elem   2    elem   2
 Partial matching not supported  
4499  No options  No options
4500  First char = '['  First char = '['
4501  Need char = ']'  Need char = ']'
# Line 4636  Need char = ']' Line 4509  Need char = ']'
4509    
4510  /(a(b(?2)c))?/DZ  /(a(b(?2)c))?/DZ
4511  ------------------------------------------------------------------  ------------------------------------------------------------------
4512          Bra 0          Bra
4513          Brazero          Brazero
4514          Bra 1          CBra 1
4515          a          a
4516          Bra 2          CBra 2
4517          b          b
4518          Once          Once
4519          Recurse          Recurse
# Line 4658  No need char Line 4531  No need char
4531    
4532  /(a(b(?2)c))*/DZ  /(a(b(?2)c))*/DZ
4533  ------------------------------------------------------------------  ------------------------------------------------------------------
4534          Bra 0          Bra
4535          Brazero          Brazero
4536          Bra 1          CBra 1
4537          a          a
4538          Bra 2          CBra 2
4539          b          b
4540          Once          Once
4541          Recurse          Recurse
# Line 4680  No need char Line 4553  No need char
4553    
4554  /(a(b(?2)c)){0,2}/DZ  /(a(b(?2)c)){0,2}/DZ
4555  ------------------------------------------------------------------  ------------------------------------------------------------------
4556          Bra 0          Bra
4557          Brazero          Brazero
4558          Bra 0          Bra
4559          Bra 1          CBra 1
4560          a          a
4561          Bra 2          CBra 2
4562          b          b
4563          Once          Once
4564          Recurse          Recurse
# Line 4694  No need char Line 4567  No need char
4567          Ket          Ket
4568          Ket          Ket
4569          Brazero          Brazero
4570          Bra 1          CBra 1
4571          a          a
4572          Bra 2          CBra 2
4573          b          b
4574          Once          Once
4575          Recurse          Recurse
# Line 4715  No need char Line 4588  No need char
4588    
4589  /[ab]{1}+/DZ  /[ab]{1}+/DZ
4590  ------------------------------------------------------------------  ------------------------------------------------------------------
4591          Bra 0          Bra
4592          Once          Once
4593          [ab]{1,1}          [ab]{1,1}
4594          Ket          Ket
# Line 4729  No need char Line 4602  No need char
4602    
4603  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4604  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4605  Options: caseless  Options: caseless
4606  No first char  No first char
4607  Need char = 'g' (caseless)  Need char = 'g' (caseless)
# Line 4739  Need char = 'g' (caseless) Line 4611  Need char = 'g' (caseless)
4611    
4612  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
4613  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4614  Options: caseless  Options: caseless
4615  No first char  No first char
4616  Need char = 'g' (caseless)  Need char = 'g' (caseless)
# Line 4750  Study returned NULL Line 4621  Study returned NULL
4621    
4622  /a*.*b/ISDZ  /a*.*b/ISDZ
4623  ------------------------------------------------------------------  ------------------------------------------------------------------
4624          Bra 0          Bra
4625          a*          a*
4626          Any*          Any*
4627          b          b
# Line 4758  Study returned NULL Line 4629  Study returned NULL
4629          End          End
4630  ------------------------------------------------------------------  ------------------------------------------------------------------
4631  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4632  No options  No options
4633  No first char  No first char
4634  Need char = 'b'  Need char = 'b'
# Line 4766  Study returned NULL Line 4636  Study returned NULL
4636    
4637  /(a|b)*.?c/ISDZ  /(a|b)*.?c/ISDZ
4638  ------------------------------------------------------------------  ------------------------------------------------------------------
4639          Bra 0          Bra
4640          Brazero          Brazero
4641          Bra 1          CBra 1
4642          a          a
4643          Alt          Alt
4644          b          b
# Line 4786  Study returned NULL Line 4656  Study returned NULL
4656    
4657  /abc(?C255)de(?C)f/DZ  /abc(?C255)de(?C)f/DZ
4658  ------------------------------------------------------------------  ------------------------------------------------------------------
4659          Bra 0          Bra
4660          abc          abc
4661          Callout 255 10 1          Callout 255 10 1
4662          de          de
# Line 4802  Need char = 'f' Line 4672  Need char = 'f'
4672    
4673  /abcde/ICDZ  /abcde/ICDZ
4674  ------------------------------------------------------------------  ------------------------------------------------------------------
4675          Bra 0          Bra
4676          Callout 255 0 1          Callout 255 0 1
4677          a          a
4678          Callout 255 1 1          Callout 255 1 1
# Line 4841  No match Line 4711  No match
4711    
4712  /a*b/ICDZ  /a*b/ICDZ
4713  ------------------------------------------------------------------  ------------------------------------------------------------------
4714          Bra 0          Bra
4715          Callout 255 0 2          Callout 255 0 2
4716          a*+          a*+
4717          Callout 255 2 1          Callout 255 2 1
# Line 4851  No match Line 4721  No match
4721          End          End
4722  ------------------------------------------------------------------  ------------------------------------------------------------------
4723  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4724  Options:  Options:
4725  No first char  No first char
4726  Need char = 'b'  Need char = 'b'
# Line 4886  Need char = 'b' Line 4755  Need char = 'b'
4755    
4756  /a+b/ICDZ  /a+b/ICDZ
4757  ------------------------------------------------------------------  ------------------------------------------------------------------
4758          Bra 0          Bra
4759          Callout 255 0 2          Callout 255 0 2
4760          a++          a++
4761          Callout 255 2 1          Callout 255 2 1
# Line 4896  Need char = 'b' Line 4765  Need char = 'b'
4765          End          End
4766  ------------------------------------------------------------------  ------------------------------------------------------------------
4767  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4768  Options:  Options:
4769  First char = 'a'  First char = 'a'
4770  Need char = 'b'  Need char = 'b'
# Line 4926  No match Line 4794  No match
4794    
4795  /(abc|def)x/ICDZ  /(abc|def)x/ICDZ
4796  ------------------------------------------------------------------  ------------------------------------------------------------------
4797          Bra 0          Bra
4798          Callout 255 0 9          Callout 255 0 9
4799          Bra 1          CBra 1
4800          Callout 255 1 1          Callout 255 1 1
4801          a          a
4802          Callout 255 2 1          Callout 255 2 1
# Line 5080  No need char Line 4948  No need char
4948    
4949  /([ab]{,4}c|xy)/ICDZ  /([ab]{,4}c|xy)/ICDZ
4950  ------------------------------------------------------------------  ------------------------------------------------------------------
4951          Bra 0          Bra
4952          Callout 255 0 14          Callout 255 0 14
4953          Bra 1          CBra 1
4954          Callout 255 1 4          Callout 255 1 4
4955          [ab]          [ab]
4956          Callout 255 5 1          Callout 255 5 1
# Line 5255  No match Line 5123  No match
5123    
5124  /([ab]{1,4}c|xy){4,5}?123/ICDZ  /([ab]{1,4}c|xy){4,5}?123/ICDZ
5125  ------------------------------------------------------------------  ------------------------------------------------------------------
5126          Bra 0          Bra
5127          Callout 255 0 21          Callout 255 0 21
5128          Bra 1          CBra 1
5129          Callout 255 1 9          Callout 255 1 9
5130          [ab]{1,4}          [ab]{1,4}
5131          Callout 255 10 1          Callout 255 10 1
# Line 5270  No match Line 5138  No match
5138          y          y
5139          Callout 255 14 0          Callout 255 14 0
5140          Ket          Ket
5141          Bra 1          CBra 1
5142          Callout 255 1 9          Callout 255 1 9
5143          [ab]{1,4}          [ab]{1,4}
5144          Callout 255 10 1          Callout 255 10 1
# Line 5283  No match Line 5151  No match
5151          y          y
5152          Callout 255 14 0          Callout 255 14 0
5153          Ket          Ket
5154          Bra 1          CBra 1
5155          Callout 255 1 9          Callout 255 1 9
5156          [ab]{1,4}          [ab]{1,4}
5157          Callout 255 10 1          Callout 255 10 1
# Line 5296  No match Line 5164  No match
5164          y          y
5165          Callout 255 14 0          Callout 255 14 0
5166          Ket          Ket
5167          Bra 1          CBra 1
5168          Callout 255 1 9          Callout 255 1 9
5169          [ab]{1,4}          [ab]{1,4}
5170          Callout 255 10 1          Callout 255 10 1
# Line 5310  No match Line 5178  No match
5178          Callout 255 14 0          Callout 255 14 0
5179          Ket          Ket
5180          Braminzero          Braminzero
5181          Bra 1          CBra 1
5182          Callout 255 1 9          Callout 255 1 9
5183          [ab]{1,4}          [ab]{1,4}
5184          Callout 255 10 1          Callout 255 10 1
# Line 5334  No match Line 5202  No match
5202          End          End
5203  ------------------------------------------------------------------  ------------------------------------------------------------------
5204  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
5205  Options:  Options:
5206  No first char  No first char
5207  Need char = '3'  Need char = '3'
# Line 5366  Need char = '3' Line 5233  Need char = '3'
5233    
5234  /\b.*/I  /\b.*/I
5235  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5236  No options  No options
5237  No first char  No first char
5238  No need char  No need char
# Line 5375  No need char Line 5241  No need char
5241    
5242  /\b.*/Is  /\b.*/Is
5243  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5244  Options: dotall  Options: dotall
5245  No first char  No first char
5246  No need char  No need char
# Line 5384  No need char Line 5249  No need char
5249    
5250  /(?!.bcd).*/I  /(?!.bcd).*/I
5251  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5252  No options  No options
5253  No first char  No first char
5254  No need char  No need char
# Line 5397  No options Line 5261  No options
5261  First char = 'a'  First char = 'a'
5262  Need char = 'e'  Need char = 'e'
5263      ab\P      ab\P
5264  Partial match  Partial match: ab
5265      abc\P      abc\P
5266  Partial match  Partial match: abc
5267      abcd\P      abcd\P
5268  Partial match  Partial match: abcd
5269      abcde\P      abcde\P
5270   0: abcde   0: abcde
5271      the quick brown abc\P      the quick brown abc\P
5272  Partial match  Partial match: abc
5273      ** Failers\P      ** Failers\P
5274  No match  No match
5275      the quick brown abxyz fox\P      the quick brown abxyz fox\P
# Line 5430  Need char = '/' Line 5294  Need char = '/'
5294   1: 02   1: 02
5295   2: 05   2: 05
5296      1\P      1\P
5297  Partial match  Partial match: 1
5298      1/2\P      1/2\P
5299  Partial match  Partial match: 1/2
5300      1/2/0\P      1/2/0\P
5301  Partial match  Partial match: 1/2/0
5302      1/2/04\P      1/2/04\P
5303   0: 1/2/04   0: 1/2/04
5304   1: 1   1: 1
5305   2: 2   2: 2
5306      0\P      0\P
5307  Partial match  Partial match: 0
5308      02/\P      02/\P
5309  Partial match  Partial match: 02/
5310      02/0\P      02/0\P
5311  Partial match  Partial match: 02/0
5312      02/1\P      02/1\P
5313  Partial match  Partial match: 02/1
5314      ** Failers\P      ** Failers\P
5315  No match  No match
5316      \P      \P
# Line 5468  No match Line 5332  No match
5332    
5333  /0{0,2}ABC/I  /0{0,2}ABC/I
5334  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5335  No options  No options
5336  No first char  No first char
5337  Need char = 'C'  Need char = 'C'
5338    
5339  /\d{3,}ABC/I  /\d{3,}ABC/I
5340  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5341  No options  No options
5342  No first char  No first char
5343  Need char = 'C'  Need char = 'C'
5344    
5345  /\d*ABC/I  /\d*ABC/I
5346  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5347  No options  No options
5348  No first char  No first char
5349  Need char = 'C'  Need char = 'C'
5350    
5351  /[abc]+DE/I  /[abc]+DE/I
5352  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5353  No options  No options
5354  No first char  No first char
5355  Need char = 'E'  Need char = 'E'
# Line 5502  Need char = '3' Line 5362  Need char = '3'
5362      123\P      123\P
5363   0: 123   0: 123
5364      a\P      a\P
5365  Partial match  Partial match: a
5366      b\P      b\P
5367  Partial match  Partial match: b
5368      c\P      c\P
5369  Partial match  Partial match: c
5370      c12\P      c12\P
5371  Partial match  Partial match: c12
5372      c123\P      c123\P
5373   0: c123   0: c123
5374    
# Line 5518  Options: anchored Line 5378  Options: anchored
5378  No first char  No first char
5379  Need char = 'X'  Need char = 'X'
5380      1\P      1\P
5381  Partial match  Partial match: 1
5382      123\P      123\P
5383  Partial match  Partial match: 123
5384      123X      123X
5385   0: 123X   0: 123X
5386      1234\P      1234\P
5387  Partial match  Partial match: 1234
5388      1234X      1234X
5389   0: 1234X   0: 1234X
5390      12345\P      12345\P
5391  Partial match  Partial match: 12345
5392      12345X      12345X
5393   0: 12345X   0: 12345X
5394      *** Failers      *** Failers
# Line 5613  No match Line 5473  No match
5473  ~<(\w+)/?>(.)*</(\1)>~smgI  ~<(\w+)/?>(.)*</(\1)>~smgI
5474  Capturing subpattern count = 3  Capturing subpattern count = 3
5475  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
5476  Options: multiline dotall  Options: multiline dotall
5477  First char = '<'  First char = '<'
5478  Need char = '>'  Need char = '>'
# Line 5631  No need char Line 5490  No need char
5490    
5491  /line\nbreak/I  /line\nbreak/I
5492  Capturing subpattern count = 0  Capturing subpattern count = 0
5493    Contains explicit CR or LF match
5494  No options  No options
5495  First char = 'l'  First char = 'l'
5496  Need char = 'k'  Need char = 'k'
# Line 5641  Need char = 'k' Line 5501  Need char = 'k'
5501    
5502  /line\nbreak/If  /line\nbreak/If
5503  Capturing subpattern count = 0  Capturing subpattern count = 0
5504    Contains explicit CR or LF match
5505  Options: firstline  Options: firstline
5506  First char = 'l'  First char = 'l'
5507  Need char = 'k'  Need char = 'k'
# Line 5653  No match Line 5514  No match
5514    
5515  /line\nbreak/Imf  /line\nbreak/Imf
5516  Capturing subpattern count = 0  Capturing subpattern count = 0
5517    Contains explicit CR or LF match
5518  Options: multiline firstline  Options: multiline firstline
5519  First char = 'l'  First char = 'l'
5520  Need char = 'k'  Need char = 'k'
# Line 5663  No match Line 5525  No match
5525      line one\nthis is a line\nbreak in the second line      line one\nthis is a line\nbreak in the second line
5526  No match  No match
5527    
5528  /ab.cd/IP  /ab.cd/P
5529      ab-cd      ab-cd
5530   0: ab-cd   0: ab-cd
5531      ab=cd      ab=cd
# Line 5673  No match: POSIX code 17: match failed Line 5535  No match: POSIX code 17: match failed
5535      ab\ncd      ab\ncd
5536  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
5537    
5538  /ab.cd/IPs  /ab.cd/Ps
5539      ab-cd      ab-cd
5540   0: ab-cd   0: ab-cd
5541      ab=cd      ab=cd
# Line 5917  Matched, but too many substrings Line 5779  Matched, but too many substrings
5779    
5780  /[^()]*(?:\((?R)\)[^()]*)*/I  /[^()]*(?:\((?R)\)[^()]*)*/I
5781  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5782  No options  No options
5783  No first char  No first char
5784  No need char  No need char
# Line 5930  No need char Line 5791  No need char
5791    
5792  /[^()]*(?:\((?>(?R))\)[^()]*)*/I  /[^()]*(?:\((?>(?R))\)[^()]*)*/I
5793  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5794  No options  No options
5795  No first char  No first char
5796  No need char  No need char
# Line 5941  No need char Line 5801  No need char
5801    
5802  /[^()]*(?:\((?R)\))*[^()]*/I  /[^()]*(?:\((?R)\))*[^()]*/I
5803  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5804  No options  No options
5805  No first char  No first char
5806  No need char  No need char
# Line 5952  No need char Line 5811  No need char
5811    
5812  /(?:\((?R)\))*[^()]*/I  /(?:\((?R)\))*[^()]*/I
5813  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5814  No options  No options
5815  No first char  No first char
5816  No need char  No need char
# Line 5965  No need char Line 5823  No need char
5823    
5824  /(?:\((?R)\))|[^()]*/I  /(?:\((?R)\))|[^()]*/I
5825  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5826  No options  No options
5827  No first char  No first char
5828  No need char  No need char
# Line 5978  No need char Line 5835  No need char
5835      ((this))      ((this))
5836   0: ((this))   0: ((this))
5837    
5838  /a(b)c/IPN  /a(b)c/PN
5839      abc      abc
5840  Matched with REG_NOSUB  Matched with REG_NOSUB
5841    
5842  /a(?P<name>b)c/IPN  /a(?P<name>b)c/PN
5843      abc      abc
5844  Matched with REG_NOSUB  Matched with REG_NOSUB
5845    
# Line 6160  Named capturing subpatterns: Line 6017  Named capturing subpatterns:
6017    A   2    A   2
6018    A   3    A   3
6019  Options: anchored dupnames  Options: anchored dupnames
6020    Duplicate name status changes
6021  No first char  No first char
6022  No need char  No need char
6023      a1b\CA      a1b\CA
# Line 6193  Named capturing subpatterns: Line 6051  Named capturing subpatterns:
6051    B   3    B   3
6052    C   4    C   4
6053  Options: anchored  Options: anchored
6054    Duplicate name status changes
6055  No first char  No first char
6056  No need char  No need char
6057      a bc d\CA\CB\CC      a bc d\CA\CB\CC
# Line 6305  Failed: octal value is greater than \377 Line 6164  Failed: octal value is greater than \377
6164    
6165  /\s*,\s*/IS  /\s*,\s*/IS
6166  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6167  No options  No options
6168  No first char  No first char
6169  Need char = ','  Need char = ','
# Line 6435  Unknown newline type at: <bad> Line 6293  Unknown newline type at: <bad>
6293    
6294  /.*/I<lf>  /.*/I<lf>
6295  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6296  Options:  Options:
6297  Forced newline sequence: LF  Forced newline sequence: LF
6298  First char at start or follows newline  First char at start or follows newline
# Line 6461  No need char Line 6318  No need char
6318    
6319  /\w+(.)(.)?def/Is  /\w+(.)(.)?def/Is
6320  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
6321  Options: dotall  Options: dotall
6322  No first char  No first char
6323  Need char = 'f'  Need char = 'f'
# Line 6478  Need char = 'f' Line 6334  Need char = 'f'
6334    
6335  +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I  +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
6336  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6337  No options  No options
6338  No first char  No first char
6339  No need char  No need char
# Line 6613  No need char Line 6468  No need char
6468    
6469  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
6470  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6471  No options  No options
6472  No first char  No first char
6473  No need char  No need char
# Line 6663  Starting byte set: a b c d Line 6517  Starting byte set: a b c d
6517    
6518  /^a*b\d/DZ  /^a*b\d/DZ
6519  ------------------------------------------------------------------  ------------------------------------------------------------------
6520          Bra 0          Bra
6521          ^          ^
6522          a*+          a*+
6523          b          b
# Line 6672  Starting byte set: a b c d Line 6526  Starting byte set: a b c d
6526          End          End
6527  ------------------------------------------------------------------  ------------------------------------------------------------------
6528  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6529  Options: anchored  Options: anchored
6530  No first char  No first char
6531  Need char = 'b'  Need char = 'b'
6532    
6533  /^a*+b\d/DZ  /^a*+b\d/DZ
6534  ------------------------------------------------------------------  ------------------------------------------------------------------
6535          Bra 0          Bra
6536          ^          ^
6537          a*+          a*+
6538          b          b
# Line 6688  Need char = 'b' Line 6541  Need char = 'b'
6541          End          End
6542  ------------------------------------------------------------------  ------------------------------------------------------------------
6543  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6544  Options: anchored  Options: anchored
6545  No first char  No first char
6546  Need char = 'b'  Need char = 'b'
6547    
6548  /^a*?b\d/DZ  /^a*?b\d/DZ
6549  ------------------------------------------------------------------  ------------------------------------------------------------------
6550          Bra 0          Bra
6551          ^          ^
6552          a*+          a*+
6553          b          b
# Line 6704  Need char = 'b' Line 6556  Need char = 'b'
6556          End          End
6557  ------------------------------------------------------------------  ------------------------------------------------------------------
6558  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6559  Options: anchored  Options: anchored
6560  No first char  No first char
6561  Need char = 'b'  Need char = 'b'
6562    
6563  /^a+A\d/DZ  /^a+A\d/DZ
6564  ------------------------------------------------------------------  ------------------------------------------------------------------
6565          Bra 0          Bra
6566          ^          ^
6567          a++          a++
6568          A          A
# Line 6720  Need char = 'b' Line 6571  Need char = 'b'
6571          End          End
6572  ------------------------------------------------------------------  ------------------------------------------------------------------
6573  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6574  Options: anchored  Options: anchored
6575  No first char  No first char
6576  Need char = 'A'  Need char = 'A'
# Line 6733  No match Line 6583  No match
6583    
6584  /^a*A\d/IiDZ  /^a*A\d/IiDZ
6585  ------------------------------------------------------------------  ------------------------------------------------------------------
6586          Bra 0          Bra
6587          ^          ^
6588          a*          a*
6589       NC A       NC A
# Line 6742  No match Line 6592  No match
6592          End          End
6593  ------------------------------------------------------------------  ------------------------------------------------------------------
6594  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6595  Options: anchored caseless  Options: anchored caseless
6596  No first char  No first char
6597  Need char = 'A' (caseless)  Need char = 'A' (caseless)
# Line 6753  Need char = 'A' (caseless) Line 6602  Need char = 'A' (caseless)
6602    
6603  /(a*|b*)[cd]/IS  /(a*|b*)[cd]/IS
6604  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6605  No options  No options
6606  No first char  No first char
6607  No need char  No need char
# Line 6761  Starting byte set: a b c d Line 6609  Starting byte set: a b c d
6609    
6610  /(a+|b*)[cd]/IS  /(a+|b*)[cd]/IS
6611  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6612  No options  No options
6613  No first char  No first char
6614  No need char  No need char
# Line 6769  Starting byte set: a b c d Line 6616  Starting byte set: a b c d
6616    
6617  /(a*|b+)[cd]/IS  /(a*|b+)[cd]/IS
6618  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6619  No options  No options
6620  No first char  No first char
6621  No need char  No need char
# Line 6777  Starting byte set: a b c d Line 6623  Starting byte set: a b c d
6623    
6624  /(a+|b+)[cd]/IS  /(a+|b+)[cd]/IS
6625  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6626  No options  No options
6627  No first char  No first char
6628  No need char  No need char
# Line 6815  Matched, but too many substrings Line 6660  Matched, but too many substrings
6660    
6661  /a*\d/BZ  /a*\d/BZ
6662  ------------------------------------------------------------------  ------------------------------------------------------------------
6663          Bra 0          Bra
6664          a*+          a*+
6665          \d          \d
6666          Ket          Ket
# Line 6824  Matched, but too many substrings Line 6669  Matched, but too many substrings
6669    
6670  /a*\D/BZ  /a*\D/BZ
6671  ------------------------------------------------------------------  ------------------------------------------------------------------
6672          Bra 0          Bra
6673          a*          a*
6674          \D          \D
6675          Ket          Ket
# Line 6833  Matched, but too many substrings Line 6678  Matched, but too many substrings
6678    
6679  /0*\d/BZ  /0*\d/BZ
6680  ------------------------------------------------------------------  ------------------------------------------------------------------
6681          Bra 0          Bra
6682          0*          0*
6683          \d          \d
6684          Ket          Ket
# Line 6842  Matched, but too many substrings Line 6687  Matched, but too many substrings
6687    
6688  /0*\D/BZ  /0*\D/BZ
6689  ------------------------------------------------------------------  ------------------------------------------------------------------
6690          Bra 0          Bra
6691          0*+          0*+
6692          \D          \D
6693          Ket          Ket
# Line 6851  Matched, but too many substrings Line 6696  Matched, but too many substrings
6696    
6697  /a*\s/BZ  /a*\s/BZ
6698  ------------------------------------------------------------------  ------------------------------------------------------------------
6699          Bra 0          Bra
6700          a*+          a*+
6701          \s          \s
6702          Ket          Ket
# Line 6860  Matched, but too many substrings Line 6705  Matched, but too many substrings
6705    
6706  /a*\S/BZ  /a*\S/BZ
6707  ------------------------------------------------------------------  ------------------------------------------------------------------
6708          Bra 0          Bra
6709          a*          a*
6710          \S          \S
6711          Ket          Ket
# Line 6869  Matched, but too many substrings Line 6714  Matched, but too many substrings
6714    
6715  / *\s/BZ  / *\s/BZ
6716  ------------------------------------------------------------------  ------------------------------------------------------------------
6717          Bra 0          Bra
6718           *           *
6719          \s          \s
6720          Ket          Ket
# Line 6878  Matched, but too many substrings Line 6723  Matched, but too many substrings
6723    
6724  / *\S/BZ  / *\S/BZ
6725  ------------------------------------------------------------------  ------------------------------------------------------------------
6726          Bra 0          Bra
6727           *+           *+
6728          \S          \S
6729          Ket          Ket
# Line 6887  Matched, but too many substrings Line 6732  Matched, but too many substrings
6732    
6733  /a*\w/BZ  /a*\w/BZ
6734  ------------------------------------------------------------------  ------------------------------------------------------------------
6735          Bra 0          Bra
6736          a*          a*
6737          \w          \w
6738          Ket          Ket
# Line 6896  Matched, but too many substrings Line 6741  Matched, but too many substrings
6741    
6742  /a*\W/BZ  /a*\W/BZ
6743  ------------------------------------------------------------------  ------------------------------------------------------------------
6744          Bra 0          Bra
6745          a*+          a*+
6746          \W          \W
6747          Ket          Ket
# Line 6905  Matched, but too many substrings Line 6750  Matched, but too many substrings
6750    
6751  /=*\w/BZ  /=*\w/BZ
6752  ------------------------------------------------------------------  ------------------------------------------------------------------
6753          Bra 0          Bra
6754          =*+          =*+
6755          \w          \w
6756          Ket          Ket
# Line 6914  Matched, but too many substrings Line 6759  Matched, but too many substrings
6759    
6760  /=*\W/BZ  /=*\W/BZ
6761  ------------------------------------------------------------------  ------------------------------------------------------------------
6762          Bra 0          Bra
6763          =*          =*
6764          \W          \W
6765          Ket          Ket
# Line 6923  Matched, but too many substrings Line 6768  Matched, but too many substrings
6768    
6769  /\d*a/BZ  /\d*a/BZ
6770  ------------------------------------------------------------------  ------------------------------------------------------------------
6771          Bra 0          Bra
6772          \d*+          \d*+
6773          a          a
6774          Ket          Ket
# Line 6932  Matched, but too many substrings Line 6777  Matched, but too many substrings
6777    
6778  /\d*2/BZ  /\d*2/BZ
6779  ------------------------------------------------------------------  ------------------------------------------------------------------
6780          Bra 0          Bra
6781          \d*          \d*
6782          2          2
6783          Ket          Ket
# Line 6941  Matched, but too many substrings Line 6786  Matched, but too many substrings
6786    
6787  /\d*\d/BZ  /\d*\d/BZ
6788  ------------------------------------------------------------------  ------------------------------------------------------------------
6789          Bra 0          Bra
6790          \d*          \d*
6791          \d          \d
6792          Ket          Ket
# Line 6950  Matched, but too many substrings Line 6795  Matched, but too many substrings
6795    
6796  /\d*\D/BZ  /\d*\D/BZ
6797  ------------------------------------------------------------------  ------------------------------------------------------------------
6798          Bra 0          Bra
6799          \d*+          \d*+
6800          \D          \D
6801          Ket          Ket
# Line 6959  Matched, but too many substrings Line 6804  Matched, but too many substrings
6804    
6805  /\d*\s/BZ  /\d*\s/BZ
6806  ------------------------------------------------------------------  ------------------------------------------------------------------
6807          Bra 0          Bra
6808          \d*+          \d*+
6809          \s          \s
6810          Ket          Ket
# Line 6968  Matched, but too many substrings Line 6813  Matched, but too many substrings
6813    
6814  /\d*\S/BZ  /\d*\S/BZ
6815  ------------------------------------------------------------------  ------------------------------------------------------------------
6816          Bra 0          Bra
6817          \d*          \d*
6818          \S          \S
6819          Ket          Ket
# Line 6977  Matched, but too many substrings Line 6822  Matched, but too many substrings
6822    
6823  /\d*\w/BZ  /\d*\w/BZ
6824  ------------------------------------------------------------------  ------------------------------------------------------------------
6825          Bra 0          Bra
6826          \d*          \d*
6827          \w          \w
6828          Ket          Ket
# Line 6986  Matched, but too many substrings Line 6831  Matched, but too many substrings
6831    
6832  /\d*\W/BZ  /\d*\W/BZ
6833  ------------------------------------------------------------------  ------------------------------------------------------------------
6834          Bra 0          Bra
6835          \d*+          \d*+
6836          \W          \W
6837          Ket          Ket
# Line 6995  Matched, but too many substrings Line 6840  Matched, but too many substrings
6840    
6841  /\D*a/BZ  /\D*a/BZ
6842  ------------------------------------------------------------------  ------------------------------------------------------------------
6843          Bra 0          Bra
6844          \D*          \D*
6845          a          a
6846          Ket          Ket
# Line 7004  Matched, but too many substrings Line 6849  Matched, but too many substrings
6849    
6850  /\D*2/BZ  /\D*2/BZ
6851  ------------------------------------------------------------------  ------------------------------------------------------------------
6852          Bra 0          Bra
6853          \D*+          \D*+
6854          2          2
6855          Ket          Ket
# Line 7013  Matched, but too many substrings Line 6858  Matched, but too many substrings
6858    
6859  /\D*\d/BZ  /\D*\d/BZ
6860  ------------------------------------------------------------------  ------------------------------------------------------------------
6861          Bra 0          Bra
6862          \D*+          \D*+
6863          \d          \d
6864          Ket          Ket
# Line 7022  Matched, but too many substrings Line 6867  Matched, but too many substrings
6867    
6868  /\D*\D/BZ  /\D*\D/BZ
6869  ------------------------------------------------------------------  ------------------------------------------------------------------
6870          Bra 0          Bra
6871          \D*          \D*
6872          \D          \D
6873          Ket          Ket
# Line 7031  Matched, but too many substrings Line 6876  Matched, but too many substrings
6876    
6877  /\D*\s/BZ  /\D*\s/BZ
6878  ------------------------------------------------------------------  ------------------------------------------------------------------
6879          Bra 0          Bra
6880          \D*          \D*
6881          \s          \s
6882          Ket          Ket
# Line 7040  Matched, but too many substrings Line 6885  Matched, but too many substrings
6885    
6886  /\D*\S/BZ  /\D*\S/BZ
6887  ------------------------------------------------------------------  ------------------------------------------------------------------
6888          Bra 0          Bra
6889          \D*          \D*
6890          \S          \S
6891          Ket          Ket
# Line 7049  Matched, but too many substrings Line 6894  Matched, but too many substrings
6894    
6895  /\D*\w/BZ  /\D*\w/BZ
6896  ------------------------------------------------------------------  ------------------------------------------------------------------
6897          Bra 0          Bra
6898          \D*          \D*
6899          \w          \w
6900          Ket          Ket
# Line 7058  Matched, but too many substrings Line 6903  Matched, but too many substrings
6903    
6904  /\D*\W/BZ  /\D*\W/BZ
6905  ------------------------------------------------------------------  ------------------------------------------------------------------
6906          Bra 0          Bra
6907          \D*          \D*
6908          \W          \W
6909          Ket          Ket
# Line 7067  Matched, but too many substrings Line 6912  Matched, but too many substrings
6912    
6913  /\s*a/BZ  /\s*a/BZ
6914  ------------------------------------------------------------------  ------------------------------------------------------------------
6915          Bra 0          Bra
6916          \s*+          \s*+
6917          a          a
6918          Ket          Ket
# Line 7076  Matched, but too many substrings Line 6921  Matched, but too many substrings
6921    
6922  /\s*2/BZ  /\s*2/BZ
6923  ------------------------------------------------------------------  ------------------------------------------------------------------
6924          Bra 0          Bra
6925          \s*+          \s*+
6926          2          2
6927          Ket          Ket
# Line 7085  Matched, but too many substrings Line 6930  Matched, but too many substrings
6930    
6931  /\s*\d/BZ  /\s*\d/BZ
6932  ------------------------------------------------------------------  ------------------------------------------------------------------
6933          Bra 0          Bra
6934          \s*+          \s*+
6935          \d          \d
6936          Ket          Ket
# Line 7094  Matched, but too many substrings Line 6939  Matched, but too many substrings
6939    
6940  /\s*\D/BZ  /\s*\D/BZ
6941  ------------------------------------------------------------------  ------------------------------------------------------------------
6942          Bra 0          Bra
6943          \s*          \s*
6944          \D          \D
6945          Ket          Ket
# Line 7103  Matched, but too many substrings Line 6948  Matched, but too many substrings
6948    
6949  /\s*\s/BZ  /\s*\s/BZ
6950  ------------------------------------------------------------------  ------------------------------------------------------------------
6951          Bra 0          Bra
6952          \s*          \s*
6953          \s          \s
6954          Ket          Ket
# Line 7112  Matched, but too many substrings Line 6957  Matched, but too many substrings
6957    
6958  /\s*\S/BZ  /\s*\S/BZ
6959  ------------------------------------------------------------------  ------------------------------------------------------------------
6960          Bra 0          Bra
6961          \s*+          \s*+
6962          \S          \S
6963          Ket          Ket
# Line 7121  Matched, but too many substrings Line 6966  Matched, but too many substrings
6966    
6967  /\s*\w/BZ  /\s*\w/BZ
6968  ------------------------------------------------------------------  ------------------------------------------------------------------
6969          Bra 0          Bra
6970          \s*+          \s*+
6971          \w          \w
6972          Ket          Ket
# Line 7130  Matched, but too many substrings Line 6975  Matched, but too many substrings
6975    
6976  /\s*\W/BZ  /\s*\W/BZ
6977  ------------------------------------------------------------------  ------------------------------------------------------------------
6978          Bra 0          Bra
6979          \s*          \s*
6980          \W          \W
6981          Ket          Ket
# Line 7139  Matched, but too many substrings Line 6984  Matched, but too many substrings
6984    
6985  /\S*a/BZ  /\S*a/BZ
6986  ------------------------------------------------------------------  ------------------------------------------------------------------
6987          Bra 0          Bra
6988          \S*          \S*
6989          a          a
6990          Ket          Ket
# Line 7148  Matched, but too many substrings Line 6993  Matched, but too many substrings
6993    
6994  /\S*2/BZ  /\S*2/BZ
6995  ------------------------------------------------------------------  ------------------------------------------------------------------
6996          Bra 0          Bra
6997          \S*          \S*
6998          2          2
6999          Ket          Ket
# Line 7157  Matched, but too many substrings Line 7002  Matched, but too many substrings
7002    
7003  /\S*\d/BZ  /\S*\d/BZ
7004  ------------------------------------------------------------------  ------------------------------------------------------------------
7005          Bra 0          Bra
7006          \S*          \S*
7007          \d          \d
7008          Ket          Ket
# Line 7166  Matched, but too many substrings Line 7011  Matched, but too many substrings
7011    
7012  /\S*\D/BZ  /\S*\D/BZ
7013  ------------------------------------------------------------------  ------------------------------------------------------------------
7014          Bra 0          Bra
7015          \S*          \S*
7016          \D          \D
7017          Ket          Ket
# Line 7175  Matched, but too many substrings Line 7020  Matched, but too many substrings
7020    
7021  /\S*\s/BZ  /\S*\s/BZ
7022  ------------------------------------------------------------------  ------------------------------------------------------------------
7023          Bra 0          Bra
7024          \S*+          \S*+
7025          \s          \s
7026          Ket          Ket
# Line 7184  Matched, but too many substrings Line 7029  Matched, but too many substrings
7029    
7030  /\S*\S/BZ  /\S*\S/BZ
7031  ------------------------------------------------------------------  ------------------------------------------------------------------
7032          Bra 0          Bra
7033          \S*          \S*
7034          \S          \S
7035          Ket          Ket
# Line 7193  Matched, but too many substrings Line 7038  Matched, but too many substrings
7038    
7039  /\S*\w/BZ  /\S*\w/BZ
7040  ------------------------------------------------------------------  ------------------------------------------------------------------
7041          Bra 0          Bra
7042          \S*          \S*
7043          \w          \w
7044          Ket          Ket
# Line 7202  Matched, but too many substrings Line 7047  Matched, but too many substrings
7047    
7048  /\S*\W/BZ  /\S*\W/BZ
7049  ------------------------------------------------------------------  ------------------------------------------------------------------
7050          Bra 0          Bra
7051          \S*          \S*
7052          \W          \W
7053          Ket          Ket
# Line 7211  Matched, but too many substrings Line 7056  Matched, but too many substrings
7056    
7057  /\w*a/BZ  /\w*a/BZ
7058  ------------------------------------------------------------------  ------------------------------------------------------------------
7059          Bra 0          Bra
7060          \w*          \w*
7061          a          a
7062          Ket          Ket
# Line 7220  Matched, but too many substrings Line 7065  Matched, but too many substrings
7065    
7066  /\w*2/BZ  /\w*2/BZ
7067  ------------------------------------------------------------------  ------------------------------------------------------------------
7068          Bra 0          Bra
7069          \w*          \w*
7070          2          2
7071          Ket          Ket
# Line 7229  Matched, but too many substrings Line 7074  Matched, but too many substrings
7074    
7075  /\w*\d/BZ  /\w*\d/BZ
7076  ------------------------------------------------------------------  ------------------------------------------------------------------
7077          Bra 0          Bra
7078          \w*          \w*
7079          \d          \d
7080          Ket          Ket
# Line 7238  Matched, but too many substrings Line 7083  Matched, but too many substrings
7083    
7084  /\w*\D/BZ  /\w*\D/BZ
7085  ------------------------------------------------------------------  ------------------------------------------------------------------
7086          Bra 0          Bra
7087          \w*          \w*
7088          \D          \D
7089          Ket          Ket
# Line 7247  Matched, but too many substrings Line 7092  Matched, but too many substrings
7092    
7093  /\w*\s/BZ  /\w*\s/BZ
7094  ------------------------------------------------------------------  ------------------------------------------------------------------
7095          Bra 0          Bra
7096          \w*+          \w*+
7097          \s          \s
7098          Ket          Ket
# Line 7256  Matched, but too many substrings Line 7101  Matched, but too many substrings
7101    
7102  /\w*\S/BZ  /\w*\S/BZ
7103  ------------------------------------------------------------------  ------------------------------------------------------------------
7104          Bra 0          Bra
7105          \w*          \w*
7106          \S          \S
7107          Ket          Ket
# Line 7265  Matched, but too many substrings Line 7110  Matched, but too many substrings
7110    
7111  /\w*\w/BZ  /\w*\w/BZ
7112  ------------------------------------------------------------------  ------------------------------------------------------------------
7113          Bra 0          Bra
7114          \w*          \w*
7115          \w          \w
7116          Ket          Ket
# Line 7274  Matched, but too many substrings Line 7119  Matched, but too many substrings
7119    
7120  /\w*\W/BZ  /\w*\W/BZ
7121  ------------------------------------------------------------------  ------------------------------------------------------------------
7122          Bra 0          Bra
7123          \w*+          \w*+
7124          \W          \W
7125          Ket          Ket
# Line 7283  Matched, but too many substrings Line 7128  Matched, but too many substrings
7128    
7129  /\W*a/BZ  /\W*a/BZ
7130  ------------------------------------------------------------------  ------------------------------------------------------------------
7131          Bra 0          Bra
7132          \W*+          \W*+
7133          a          a
7134          Ket          Ket
# Line 7292  Matched, but too many substrings Line 7137  Matched, but too many substrings
7137    
7138  /\W*2/BZ  /\W*2/BZ
7139  ------------------------------------------------------------------  ------------------------------------------------------------------
7140          Bra 0          Bra
7141          \W*+          \W*+
7142          2          2
7143          Ket          Ket
# Line 7301  Matched, but too many substrings Line 7146  Matched, but too many substrings
7146    
7147  /\W*\d/BZ  /\W*\d/BZ
7148  ------------------------------------------------------------------  ------------------------------------------------------------------
7149          Bra 0          Bra
7150          \W*+          \W*+
7151          \d          \d
7152          Ket          Ket
# Line 7310  Matched, but too many substrings Line 7155  Matched, but too many substrings
7155    
7156  /\W*\D/BZ  /\W*\D/BZ
7157  ------------------------------------------------------------------  ------------------------------------------------------------------
7158          Bra 0          Bra
7159          \W*          \W*
7160          \D          \D
7161          Ket          Ket
# Line 7319  Matched, but too many substrings Line 7164  Matched, but too many substrings
7164    
7165  /\W*\s/BZ  /\W*\s/BZ
7166  ------------------------------------------------------------------  ------------------------------------------------------------------
7167          Bra 0          Bra
7168          \W*          \W*
7169          \s          \s
7170          Ket          Ket
# Line 7328  Matched, but too many substrings Line 7173  Matched, but too many substrings
7173    
7174  /\W*\S/BZ  /\W*\S/BZ
7175  ------------------------------------------------------------------  ------------------------------------------------------------------
7176          Bra 0          Bra
7177          \W*          \W*
7178          \S          \S
7179          Ket          Ket
# Line 7337  Matched, but too many substrings Line 7182  Matched, but too many substrings
7182    
7183  /\W*\w/BZ  /\W*\w/BZ
7184  ------------------------------------------------------------------  ------------------------------------------------------------------
7185          Bra 0          Bra
7186          \W*+          \W*+
7187          \w          \w
7188          Ket          Ket
# Line 7346  Matched, but too many substrings Line 7191  Matched, but too many substrings
7191    
7192  /\W*\W/BZ  /\W*\W/BZ
7193  ------------------------------------------------------------------  ------------------------------------------------------------------
7194          Bra 0          Bra
7195          \W*          \W*
7196          \W          \W
7197          Ket          Ket
# Line 7355  Matched, but too many substrings Line 7200  Matched, but too many substrings
7200    
7201  /[^a]+a/BZ  /[^a]+a/BZ
7202  ------------------------------------------------------------------  ------------------------------------------------------------------
7203          Bra 0          Bra
7204          [^a]++          [^a]++
7205          a          a
7206          Ket          Ket
# Line 7364  Matched, but too many substrings Line 7209  Matched, but too many substrings
7209    
7210  /[^a]+a/BZi  /[^a]+a/BZi
7211  ------------------------------------------------------------------  ------------------------------------------------------------------
7212          Bra 0          Bra
7213          [^A]++          [^A]++
7214       NC a       NC a
7215          Ket          Ket
# Line 7373  Matched, but too many substrings Line 7218  Matched, but too many substrings
7218    
7219  /[^a]+A/BZi  /[^a]+A/BZi
7220  ------------------------------------------------------------------  ------------------------------------------------------------------
7221          Bra 0          Bra
7222          [^A]++          [^A]++
7223       NC A       NC A
7224          Ket          Ket
# Line 7382  Matched, but too many substrings Line 7227  Matched, but too many substrings
7227    
7228  /[^a]+b/BZ  /[^a]+b/BZ
7229  ------------------------------------------------------------------  ------------------------------------------------------------------
7230          Bra 0          Bra
7231          [^a]+          [^a]+
7232          b          b
7233          Ket          Ket
# Line 7391  Matched, but too many substrings Line 7236  Matched, but too many substrings
7236    
7237  /[^a]+\d/BZ  /[^a]+\d/BZ
7238  ------------------------------------------------------------------  ------------------------------------------------------------------
7239          Bra 0          Bra
7240          [^a]+          [^a]+
7241          \d          \d
7242          Ket          Ket
# Line 7400  Matched, but too many substrings Line 7245  Matched, but too many substrings
7245    
7246  /a*[^a]/BZ  /a*[^a]/BZ
7247  ------------------------------------------------------------------  ------------------------------------------------------------------
7248          Bra 0          Bra
7249          a*          a*
7250          [^a]          [^a]
7251          Ket          Ket
# Line 7541  No match Line 7386  No match
7386    
7387  /^[\E\Qa\E-\Qz\E]+/BZ  /^[\E\Qa\E-\Qz\E]+/BZ
7388  ------------------------------------------------------------------  ------------------------------------------------------------------
7389          Bra 0          Bra
7390          ^          ^
7391          [a-z]+          [a-z]+
7392          Ket          Ket
# Line 7550  No match Line 7395  No match
7395    
7396  /^[a\Q]bc\E]/BZ  /^[a\Q]bc\E]/BZ
7397  ------------------------------------------------------------------  ------------------------------------------------------------------
7398          Bra 0          Bra
7399          ^          ^
7400          [\]a-c]          [\]a-c]
7401          Ket          Ket
# Line 7559  No match Line 7404  No match
7404    
7405  /^[a-\Q\E]/BZ  /^[a-\Q\E]/BZ
7406  ------------------------------------------------------------------  ------------------------------------------------------------------
7407          Bra 0          Bra
7408          ^          ^
7409          [\-a]          [\-a]
7410          Ket          Ket
# Line 7568  No match Line 7413  No match
7413    
7414  /^(?P>abc)[()](?<abc>)/BZ  /^(?P>abc)[()](?<abc>)/BZ
7415  ------------------------------------------------------------------  ------------------------------------------------------------------
7416          Bra 0          Bra
7417          ^          ^
7418          Once          Once
7419          Recurse          Recurse
7420          Ket          Ket
7421          [()]          [()]
7422          Bra 1          CBra 1
7423          Ket          Ket
7424          Ket          Ket
7425          End          End
# Line 7582  No match Line 7427  No match
7427    
7428  /^((?(abc)y)[()](?P<abc>x))+/BZ  /^((?(abc)y)[()](?P<abc>x))+/BZ
7429  ------------------------------------------------------------------  ------------------------------------------------------------------
7430          Bra 0          Bra
7431          ^          ^
7432          Bra 1          CBra 1
7433          Cond          Cond
7434        2 Cond ref        2 Cond ref
7435          y          y
7436          Ket          Ket
7437          [()]          [()]
7438          Bra 2          CBra 2
7439          x          x
7440          Ket          Ket
7441          KetRmax          KetRmax
# Line 7604  No match Line 7449  No match
7449    
7450  /^(?P>abc)\Q()\E(?<abc>)/BZ  /^(?P>abc)\Q()\E(?<abc>)/BZ
7451  ------------------------------------------------------------------  ------------------------------------------------------------------
7452          Bra 0          Bra
7453          ^          ^
7454          Once          Once
7455          Recurse          Recurse
7456          Ket          Ket
7457          ()          ()
7458          Bra 1          CBra 1
7459          Ket          Ket
7460          Ket          Ket
7461          End          End
# Line 7618  No match Line 7463  No match
7463    
7464  /^(?P>abc)[a\Q(]\E(](?<abc>)/BZ  /^(?P>abc)[a\Q(]\E(](?<abc>)/BZ
7465  ------------------------------------------------------------------  ------------------------------------------------------------------
7466          Bra 0          Bra
7467          ^          ^
7468          Once          Once
7469          Recurse          Recurse
7470          Ket          Ket
7471          [(\]a]          [(\]a]
7472          Bra 1          CBra 1
7473          Ket          Ket
7474          Ket          Ket
7475          End          End
# Line 7633  No match Line 7478  No match
7478  /^(?P>abc) # this is (a comment)  /^(?P>abc) # this is (a comment)
7479    (?<abc>)/BZx    (?<abc>)/BZx
7480  ------------------------------------------------------------------  ------------------------------------------------------------------
7481          Bra 0          Bra
7482          ^          ^
7483          Once          Once
7484          Recurse          Recurse
7485          Ket          Ket
7486          Bra 1          CBra 1
7487          Ket          Ket
7488          Ket          Ket
7489          End          End
# Line 7652  Named capturing subpatterns: Line 7497  Named capturing subpatterns:
7497    one     1    one     1
7498    three   3    three   3
7499    two     2    two     2
 Partial matching not supported  
7500  Options: anchored caseless  Options: anchored caseless
7501  No first char  No first char
7502  No need char  No need char
# Line 7686  No match Line 7530  No match
7530  /(?=(\w+))\1:/I  /(?=(\w+))\1:/I
7531  Capturing subpattern count = 1  Capturing subpattern count = 1
7532  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
7533  No options  No options
7534  No first char  No first char
7535  Need char = ':'  Need char = ':'
# Line 7699  Capturing subpattern count = 1 Line 7542  Capturing subpattern count = 1
7542  Max back reference = 1  Max back reference = 1
7543  Named capturing subpatterns:  Named capturing subpatterns:
7544    abc   1    abc   1
 Partial matching not supported  
7545  No options  No options
7546  No first char  No first char
7547  Need char = ':'  Need char = ':'
# Line 7707  Need char = ':' Line 7549  Need char = ':'
7549   0: abcd:   0: abcd:
7550   1: abcd   1: abcd
7551    
 /(?'abc'\w+):\k<abc>{2}/  
     a:aaxyz  
  0: a:aa  
  1: a  
     ab:ababxyz  
  0: ab:abab  
  1: ab  
     ** Failers  
 No match  
     a:axyz  
 No match  
     ab:abxyz  
 No match  
   
7552  /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J  /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J
7553      adaa      adaa
7554   0: adaa   0: adaa
# Line 7747  No match Line 7575  No match
7575      bddd      bddd
7576  No match  No match
7577    
 /^(?<ab>a)? (?(<ab>)b|c) (?('ab')d|e)/x  
     abd  
  0: abd  
  1: a  
     ce  
  0: ce  
   
7578  /(?(<bc))/  /(?(<bc))/
7579  Failed: malformed number or name after (?( at offset 6  Failed: malformed number or name after (?( at offset 6
7580    
# Line 7784  Failed: reference to non-existent subpat Line 7605  Failed: reference to non-existent subpat
7605   1: abcabc1Xabc2XabcX   1: abcabc1Xabc2XabcX
7606   2: abcabc1Xabc2XabcX   2: abcabc1Xabc2XabcX
7607    
 /^(?(DEFINE) (?<A> a) (?<B> b) )  (?&A) (?&B) /x  
     abcd  
  0: ab  
  1: <unset>  
  2: <unset>  
   
 /(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT))  
   (?(DEFINE)  
   (?<NAME_PAT>[a-z]+)  
   (?<ADDRESS_PAT>\d+)  
   )/x  
     metcalfe 33  
  0: metcalfe 33  
  1: metcalfe  
  2: 33  
  3: <unset>  
  4: <unset>  
   
7608  /^(?(DEFINE) abc | xyz ) /x  /^(?(DEFINE) abc | xyz ) /x
7609  Failed: DEFINE group contains more than one branch at offset 22  Failed: DEFINE group contains more than one branch at offset 22
7610    
# Line 7843  No match Line 7646  No match
7646  No match  No match
7647    
7648  /^abc./mgx<any>  /^abc./mgx<any>
7649      abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 \x{2028}abc8 \x{2029}abc9 JUNK      abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
7650   0: abc1   0: abc1
7651   0: abc2   0: abc2
7652   0: abc3   0: abc3
# Line 7853  No match Line 7656  No match
7656   0: abc7   0: abc7
7657    
7658  /abc.$/mgx<any>  /abc.$/mgx<any>
7659      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9
7660   0: abc1   0: abc1
7661   0: abc2   0: abc2
7662   0: abc3   0: abc3
# Line 7867  No match Line 7670  No match
7670  /a/<any><crlf>  /a/<any><crlf>
7671  Failed: inconsistent NEWLINE options at offset 0  Failed: inconsistent NEWLINE options at offset 0
7672    
7673  /^a\Rb/  /^a\Rb/<bsr_unicode>
7674      a\nb      a\nb
7675   0: a\x0ab   0: a\x0ab
7676      a\rb      a\rb
# Line 7885  No match Line 7688  No match
7688      a\n\rb      a\n\rb
7689  No match  No match
7690    
7691  /^a\R*b/  /^a\R*b/<bsr_unicode>
7692      ab      ab
7693   0: ab   0: ab
7694      a\nb      a\nb
# Line 7905  No match Line 7708  No match
7708      a\n\r\x85\x0cb      a\n\r\x85\x0cb
7709   0: a\x0a\x0d\x85\x0cb   0: a\x0a\x0d\x85\x0cb
7710    
7711  /^a\R+b/  /^a\R+b/<bsr_unicode>
7712      a\nb      a\nb
7713   0: a\x0ab   0: a\x0ab
7714      a\rb      a\rb
# Line 7927  No match Line 7730  No match
7730      ab      ab
7731  No match  No match
7732    
7733  /^a\R{1,3}b/  /^a\R{1,3}b/<bsr_unicode>
7734      a\nb      a\nb
7735   0: a\x0ab   0: a\x0ab
7736      a\n\rb      a\n\rb
# Line 7949  No match Line 7752  No match
7752      a\r      a\r
7753  No match  No match
7754    
7755  /^a[\R]b/  /^a[\R]b/<bsr_unicode>
7756      aRb      aRb
7757   0: aRb   0: aRb
7758      ** Failers      ** Failers
# Line 7979  Need char = 'P' Line 7782  Need char = 'P'
7782   0: PXP   0: PXP
7783   1: P   1: P
7784    
 /(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))\b(?&byte)(\.(?&byte)){3}/  
     1.2.3.4  
  0: 1.2.3.4  
  1: <unset>  
  2: .4  
     131.111.10.206  
  0: 131.111.10.206  
  1: <unset>  
  2: .206  
     10.0.0.0  
  0: 10.0.0.0  
  1: <unset>  
  2: .0  
     ** Failers  
 No match  
     10.6  
 No match  
     455.3.4.5  
 No match  
   
 /\b(?&byte)(\.(?&byte)){3}(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))/  
     1.2.3.4  
  0: 1.2.3.4  
  1: .4  
  2: <unset>  
     131.111.10.206  
  0: 131.111.10.206  
  1: .206  
  2: <unset>  
     10.0.0.0  
  0: 10.0.0.0  
  1: .0  
  2: <unset>  
     ** Failers  
 No match  
     10.6  
 No match  
     455.3.4.5  
 No match  
   
7785  /(?:a(?&abc)b)*(?<abc>x)/  /(?:a(?&abc)b)*(?<abc>x)/
7786      123axbaxbaxbx456      123axbaxbaxbx456
7787   0: axbaxbaxbx   0: axbaxbaxbx
# Line 8056  No match Line 7819  No match
7819     DEFabcABCXYZ     DEFabcABCXYZ
7820  No match  No match
7821    
 /^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/  
     ababababbbabZXXXX  
  0: ababababbbabZ  
  1: ab  
  2: b  
   
7822  /^(a)\g-2/  /^(a)\g-2/
7823  Failed: reference to non-existent subpattern at offset 4  Failed: reference to non-existent subpattern at offset 7
7824    
7825  /^(a)\g/  /^(a)\g/
7826  Failed: \g is not followed by an (optionally braced) non-zero number at offset 4  Failed: a numbered reference must not be zero at offset 5
7827    
7828  /^(a)\g{0}/  /^(a)\g{0}/
7829  Failed: \g is not followed by an (optionally braced) non-zero number at offset 4  Failed: a numbered reference must not be zero at offset 8
7830    
7831  /^(a)\g{3/  /^(a)\g{3/
7832  Failed: \g is not followed by an (optionally braced) non-zero number at offset 4  Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 8
7833    
7834  /^(a)\g{4a}/  /^(a)\g{4a}/
7835  Failed: \g is not followed by an (optionally braced) non-zero number at offset 4  Failed: reference to non-existent subpattern at offset 9
7836    
7837  /^a.b/<lf>  /^a.b/<lf>
7838      a\rb      a\rb
# Line 8155  No match Line 7912  No match
7912   0+   0+
7913    
7914  /abc.$/mgx<anycrlf>  /abc.$/mgx<anycrlf>
7915      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
7916   0: abc1   0: abc1
7917   0: abc4   0: abc4
7918   0: abc5   0: abc5
# Line 8169  No match Line 7926  No match
7926      XABC\B      XABC\B
7927  No match  No match
7928    
7929  / End of testinput2 /  /(ab|c)(?-1)/BZ
7930    ------------------------------------------------------------------
7931            Bra
7932            CBra 1
7933            ab
7934            Alt
7935            c
7936            Ket
7937            Once
7938            Recurse
7939            Ket
7940            Ket
7941            End
7942    ------------------------------------------------------------------
7943        abc
7944     0: abc
7945     1: ab
7946    
7947    /xy(?+1)(abc)/BZ
7948    ------------------------------------------------------------------
7949            Bra
7950            xy
7951            Once
7952            Recurse
7953            Ket
7954            CBra 1
7955            abc
7956            Ket
7957            Ket
7958            End
7959    ------------------------------------------------------------------
7960        xyabcabc
7961     0: xyabcabc
7962     1: abc
7963        ** Failers
7964    No match
7965        xyabc
7966    No match
7967    
7968    /x(?-0)y/
7969    Failed: a numbered reference must not be zero at offset 5
7970    
7971    /x(?-1)y/
7972    Failed: reference to non-existent subpattern at offset 5
7973    
7974    /x(?+0)y/
7975    Failed: a numbered reference must not be zero at offset 5
7976    
7977    /x(?+1)y/
7978    Failed: reference to non-existent subpattern at offset 5
7979    
7980    /^(abc)?(?(-1)X|Y)/BZ
7981    ------------------------------------------------------------------
7982            Bra
7983            ^
7984            Brazero
7985            CBra 1
7986            abc
7987            Ket
7988            Cond
7989          1 Cond ref
7990            X
7991            Alt
7992            Y
7993            Ket
7994            Ket
7995            End
7996    ------------------------------------------------------------------
7997        abcX
7998     0: abcX
7999     1: abc
8000        Y
8001     0: Y
8002        ** Failers
8003    No match
8004        abcY
8005    No match
8006    
8007    /^((?(+1)X|Y)(abc))+/BZ
8008    ------------------------------------------------------------------
8009            Bra
8010            ^
8011            CBra 1
8012            Cond
8013          2 Cond ref
8014            X
8015            Alt
8016            Y
8017            Ket
8018            CBra 2
8019            abc
8020            Ket
8021            KetRmax
8022            Ket
8023            End
8024    ------------------------------------------------------------------
8025        YabcXabc
8026     0: YabcXabc
8027     1: Xabc
8028     2: abc
8029        YabcXabcXabc
8030     0: YabcXabcXabc
8031     1: Xabc
8032     2: abc
8033        ** Failers
8034    No match
8035        XabcXabc
8036    No match
8037    
8038    /(?(-1)a)/BZ
8039    Failed: reference to non-existent subpattern at offset 6
8040    
8041    /((?(-1)a))/BZ
8042    ------------------------------------------------------------------
8043            Bra
8044            CBra 1
8045            Cond
8046          1 Cond ref
8047            a
8048            Ket
8049            Ket
8050            Ket
8051            End
8052    ------------------------------------------------------------------
8053    
8054    /((?(-2)a))/BZ
8055    Failed: reference to non-existent subpattern at offset 7
8056    
8057    /^(?(+1)X|Y)(.)/BZ
8058    ------------------------------------------------------------------
8059            Bra
8060            ^
8061            Cond
8062          1 Cond ref
8063            X
8064            Alt
8065            Y
8066            Ket
8067            CBra 1
8068            Any
8069            Ket
8070            Ket
8071            End
8072    ------------------------------------------------------------------
8073        Y!
8074     0: Y!
8075     1: !
8076    
8077    /(?<A>tom|bon)-\k{A}/
8078        tom-tom
8079     0: tom-tom
8080     1: tom
8081        bon-bon
8082     0: bon-bon
8083     1: bon
8084        ** Failers
8085    No match
8086        tom-bon
8087    No match
8088    
8089    /\g{A/
8090    Failed: syntax error in subpattern name (missing terminator) at offset 4
8091    
8092    /(?|(abc)|(xyz))/BZ
8093    ------------------------------------------------------------------
8094            Bra
8095            Bra
8096            CBra 1
8097            abc
8098            Ket
8099            Alt
8100            CBra 1
8101            xyz
8102            Ket
8103            Ket
8104            Ket
8105            End
8106    ------------------------------------------------------------------
8107       >abc<
8108     0: abc
8109     1: abc
8110       >xyz<
8111     0: xyz
8112     1: xyz
8113    
8114    /(x)(?|(abc)|(xyz))(x)/BZ
8115    ------------------------------------------------------------------
8116            Bra
8117            CBra 1
8118            x
8119            Ket
8120            Bra
8121            CBra 2
8122            abc
8123            Ket
8124            Alt
8125            CBra 2
8126            xyz
8127            Ket
8128            Ket
8129            CBra 3
8130            x
8131            Ket
8132            Ket
8133            End
8134    ------------------------------------------------------------------
8135        xabcx
8136     0: xabcx
8137     1: x
8138     2: abc
8139     3: x
8140        xxyzx
8141     0: xxyzx
8142     1: x
8143     2: xyz
8144     3: x
8145    
8146    /(x)(?|(abc)(pqr)|(xyz))(x)/BZ
8147    ------------------------------------------------------------------
8148            Bra
8149            CBra 1
8150            x
8151            Ket
8152            Bra
8153            CBra 2
8154            abc
8155            Ket
8156            CBra 3
8157            pqr
8158            Ket
8159            Alt
8160            CBra 2
8161            xyz
8162            Ket
8163