/[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 269 by ph10, Fri Nov 16 16:22:24 2007 UTC revision 448 by ph10, Tue Sep 15 19:11:48 2009 UTC
# Line 40  No match Line 40  No match
40    
41  /a+bc/I  /a+bc/I
42  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
43  No options  No options
44  First char = 'a'  First char = 'a'
45  Need char = 'c'  Need char = 'c'
46    
47  /a*bc/I  /a*bc/I
48  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
49  No options  No options
50  No first char  No first char
51  Need char = 'c'  Need char = 'c'
52    
53  /a{3}bc/I  /a{3}bc/I
54  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
55  No options  No options
56  First char = 'a'  First char = 'a'
57  Need char = 'c'  Need char = 'c'
58    
59  /(abc|a+z)/I  /(abc|a+z)/I
60  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
61  No options  No options
62  First char = 'a'  First char = 'a'
63  No need char  No need char
# Line 113  Failed: unrecognized character after (? Line 109  Failed: unrecognized character after (?
109    
110  /.*b/I  /.*b/I
111  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
112  No options  No options
113  First char at start or follows newline  First char at start or follows newline
114  Need char = 'b'  Need char = 'b'
115    
116  /.*?b/I  /.*?b/I
117  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
118  No options  No options
119  First char at start or follows newline  First char at start or follows newline
120  Need char = 'b'  Need char = 'b'
# Line 324  No need char Line 318  No need char
318    
319  /.*((abc)$|(def))/I  /.*((abc)$|(def))/I
320  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
321  No options  No options
322  First char at start or follows newline  First char at start or follows newline
323  No need char  No need char
# Line 338  No need char Line 331  No need char
331   2: <unset>   2: <unset>
332   3: def   3: def
333    
334  /abc/IP  /abc/P
335      abc      abc
336   0: abc   0: abc
337      *** Failers      *** Failers
338  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
339    
340  /^abc|def/IP  /^abc|def/P
341      abcdef      abcdef
342   0: abc   0: abc
343      abcdef\B      abcdef\B
344   0: def   0: def
345    
346  /.*((abc)$|(def))/IP  /.*((abc)$|(def))/P
347      defabc      defabc
348   0: defabc   0: defabc
349   1: abc   1: abc
# Line 360  No match: POSIX code 17: match failed Line 353  No match: POSIX code 17: match failed
353   1: def   1: def
354   3: def   3: def
355    
356  /the quick brown fox/IP  /the quick brown fox/P
357      the quick brown fox      the quick brown fox
358   0: the quick brown fox   0: the quick brown fox
359      *** Failers      *** Failers
# Line 368  No match: POSIX code 17: match failed Line 361  No match: POSIX code 17: match failed
361      The Quick Brown Fox      The Quick Brown Fox
362  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
363    
364  /the quick brown fox/IPi  /the quick brown fox/Pi
365      the quick brown fox      the quick brown fox
366   0: the quick brown fox   0: the quick brown fox
367      The Quick Brown Fox      The Quick Brown Fox
368   0: The Quick Brown Fox   0: The Quick Brown Fox
369    
370  /abc.def/IP  /abc.def/P
371      *** Failers      *** Failers
372  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
373      abc\ndef      abc\ndef
374  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
375    
376  /abc$/IP  /abc$/P
377      abc      abc
378   0: abc   0: abc
379      abc\n      abc\n
380   0: abc   0: abc
381    
382  /(abc)\2/IP  /(abc)\2/P
383  Failed: POSIX code 15: bad back reference at offset 7  Failed: POSIX code 15: bad back reference at offset 7
384    
385  /(abc\1)/IP  /(abc\1)/P
386      abc      abc
387  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
388    
# Line 401  Failed: missing terminating ] for charac Line 394  Failed: missing terminating ] for charac
394    
395  /[^aeiou ]{3,}/I  /[^aeiou ]{3,}/I
396  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
397  No options  No options
398  No first char  No first char
399  No need char  No need char
# Line 410  No need char Line 402  No need char
402    
403  /<.*>/I  /<.*>/I
404  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
405  No options  No options
406  First char = '<'  First char = '<'
407  Need char = '>'  Need char = '>'
# Line 419  Need char = '>' Line 410  Need char = '>'
410    
411  /<.*?>/I  /<.*?>/I
412  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
413  No options  No options
414  First char = '<'  First char = '<'
415  Need char = '>'  Need char = '>'
# Line 428  Need char = '>' Line 418  Need char = '>'
418    
419  /<.*>/IU  /<.*>/IU
420  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
421  Options: ungreedy  Options: ungreedy
422  First char = '<'  First char = '<'
423  Need char = '>'  Need char = '>'
# Line 437  Need char = '>' Line 426  Need char = '>'
426    
427  /(?U)<.*>/I  /(?U)<.*>/I
428  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
429  Options: ungreedy  Options: ungreedy
430  First char = '<'  First char = '<'
431  Need char = '>'  Need char = '>'
# Line 446  Need char = '>' Line 434  Need char = '>'
434    
435  /<.*?>/IU  /<.*?>/IU
436  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
437  Options: ungreedy  Options: ungreedy
438  First char = '<'  First char = '<'
439  Need char = '>'  Need char = '>'
# Line 455  Need char = '>' Line 442  Need char = '>'
442    
443  /={3,}/IU  /={3,}/IU
444  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
445  Options: ungreedy  Options: ungreedy
446  First char = '='  First char = '='
447  Need char = '='  Need char = '='
# Line 464  Need char = '=' Line 450  Need char = '='
450    
451  /(?U)={3,}?/I  /(?U)={3,}?/I
452  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
453  Options: ungreedy  Options: ungreedy
454  First char = '='  First char = '='
455  Need char = '='  Need char = '='
# Line 522  No need char Line 507  No need char
507    
508  /(?s).*/I  /(?s).*/I
509  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
510  Options: anchored dotall  Options: anchored dotall
511  No first char  No first char
512  No need char  No need char
# Line 584  Failed: syntax error in subpattern name Line 568  Failed: syntax error in subpattern name
568  /((?s)blah)\s+\1/I  /((?s)blah)\s+\1/I
569  Capturing subpattern count = 1  Capturing subpattern count = 1
570  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
571  No options  No options
572  First char = 'b'  First char = 'b'
573  Need char = 'h'  Need char = 'h'
# Line 592  Need char = 'h' Line 575  Need char = 'h'
575  /((?i)blah)\s+\1/I  /((?i)blah)\s+\1/I
576  Capturing subpattern count = 1  Capturing subpattern count = 1
577  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
578  No options  No options
579  First char = 'b' (caseless)  First char = 'b' (caseless)
580  Need char = 'h' (caseless)  Need char = 'h' (caseless)
# Line 616  Study returned NULL Line 598  Study returned NULL
598    
599  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
600  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
601  No options  No options
602  No first char  No first char
603  No need char  No need char
# Line 668  Need char = 'c' Line 649  Need char = 'c'
649    
650  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
651  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
652  Options: anchored  Options: anchored
653  No first char  No first char
654  No need char  No need char
# Line 784  No need char Line 764  No need char
764    
765  /(?>.*)(?<=(abcd)|(xyz))/I  /(?>.*)(?<=(abcd)|(xyz))/I
766  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
767  No options  No options
768  First char at start or follows newline  First char at start or follows newline
769  No need char  No need char
# Line 963  Failed: unrecognized character after (? Line 942  Failed: unrecognized character after (?
942  /(?(1?)a|b)/  /(?(1?)a|b)/
943  Failed: malformed number or name after (?( at offset 4  Failed: malformed number or name after (?( at offset 4
944    
 /(?(1)a|b|c)/  
 Failed: conditional group contains more than two branches at offset 10  
   
945  /[a[:xyz:/  /[a[:xyz:/
946  Failed: missing terminating ] for character class at offset 8  Failed: missing terminating ] for character class at offset 8
947    
# Line 1006  copy substring 5 failed -7 Line 982  copy substring 5 failed -7
982    
983  /(.{20})/I  /(.{20})/I
984  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
985  No options  No options
986  No first char  No first char
987  No need char  No need char
# Line 1024  No need char Line 999  No need char
999    
1000  /(.{15})/I  /(.{15})/I
1001  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1002  No options  No options
1003  No first char  No first char
1004  No need char  No need char
# Line 1039  No need char Line 1013  No need char
1013    
1014  /(.{16})/I  /(.{16})/I
1015  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1016  No options  No options
1017  No first char  No first char
1018  No need char  No need char
# Line 1106  No need char Line 1079  No need char
1079  )((?:[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]+
1080  )?)?)?)?)?)?)?)?)?otherword/I  )?)?)?)?)?)?)?)?)?otherword/I
1081  Capturing subpattern count = 8  Capturing subpattern count = 8
 Partial matching not supported  
1082  Contains explicit CR or LF match  Contains explicit CR or LF match
1083  No options  No options
1084  First char = 'w'  First char = 'w'
# Line 1121  Need char = 'd' Line 1093  Need char = 'd'
1093          End          End
1094  ------------------------------------------------------------------  ------------------------------------------------------------------
1095  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1096  No options  No options
1097  First char at start or follows newline  First char at start or follows newline
1098  Need char = 'X'  Need char = 'X'
# Line 1129  Need char = 'X' Line 1100  Need char = 'X'
1100  /.*X/IDZs  /.*X/IDZs
1101  ------------------------------------------------------------------  ------------------------------------------------------------------
1102          Bra          Bra
1103          Any*          AllAny*
1104          X          X
1105          Ket          Ket
1106          End          End
1107  ------------------------------------------------------------------  ------------------------------------------------------------------
1108  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1109  Options: anchored dotall  Options: anchored dotall
1110  No first char  No first char
1111  Need char = 'X'  Need char = 'X'
# Line 1154  Need char = 'X' Line 1124  Need char = 'X'
1124          End          End
1125  ------------------------------------------------------------------  ------------------------------------------------------------------
1126  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1127  No options  No options
1128  First char at start or follows newline  First char at start or follows newline
1129  No need char  No need char
# Line 1163  No need char Line 1132  No need char
1132  ------------------------------------------------------------------  ------------------------------------------------------------------
1133          Bra          Bra
1134          CBra 1          CBra 1
1135          Any*          AllAny*
1136          X          X
1137          Alt          Alt
1138          ^          ^
# Line 1173  No need char Line 1142  No need char
1142          End          End
1143  ------------------------------------------------------------------  ------------------------------------------------------------------
1144  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1145  Options: anchored dotall  Options: anchored dotall
1146  No first char  No first char
1147  No need char  No need char
# Line 1182  No need char Line 1150  No need char
1150  ------------------------------------------------------------------  ------------------------------------------------------------------
1151          Bra          Bra
1152          CBra 1          CBra 1
1153          Any*          AllAny*
1154          X          X
1155          Alt          Alt
1156          ^          ^
# Line 1192  No need char Line 1160  No need char
1160          End          End
1161  ------------------------------------------------------------------  ------------------------------------------------------------------
1162  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1163  Options: anchored dotall  Options: anchored dotall
1164  No first char  No first char
1165  No need char  No need char
# Line 1202  No need char Line 1169  No need char
1169          Bra          Bra
1170          Bra          Bra
1171       04 Opt       04 Opt
1172          Any*          AllAny*
1173          X          X
1174          Alt          Alt
1175       04 Opt       04 Opt
# Line 1214  No need char Line 1181  No need char
1181          End          End
1182  ------------------------------------------------------------------  ------------------------------------------------------------------
1183  Capturing subpattern count = 0  Capturing subpattern count = 0
1184  Partial matching not supported  Options: anchored
1185  No options  No first char
 First char at start or follows newline  
1186  No need char  No need char
1187    
1188  /\Biss\B/I+  /\Biss\B/I+
# Line 1299  No need char Line 1265  No need char
1265    
1266  /.*iss/Ig+  /.*iss/Ig+
1267  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1268  No options  No options
1269  First char at start or follows newline  First char at start or follows newline
1270  Need char = 's'  Need char = 's'
# Line 1402  Need char = 'c' Line 1367  Need char = 'c'
1367    
1368  /a*/I  /a*/I
1369  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1370  No options  No options
1371  No first char  No first char
1372  No need char  No need char
1373    
1374  /a+/I  /a+/I
1375  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1376  No options  No options
1377  First char = 'a'  First char = 'a'
1378  No need char  No need char
1379    
1380  /(baa|a+)/I  /(baa|a+)/I
1381  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1382  No options  No options
1383  No first char  No first char
1384  Need char = 'a'  Need char = 'a'
1385    
1386  /a{0,3}/I  /a{0,3}/I
1387  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1388  No options  No options
1389  No first char  No first char
1390  No need char  No need char
1391    
1392  /baa{3,}/I  /baa{3,}/I
1393  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1394  No options  No options
1395  First char = 'b'  First char = 'b'
1396  Need char = 'a'  Need char = 'a'
1397    
1398  /"([^\\"]+|\\.)*"/I  /"([^\\"]+|\\.)*"/I
1399  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1400  No options  No options
1401  First char = '"'  First char = '"'
1402  Need char = '"'  Need char = '"'
# Line 1492  Need char = 'b' Line 1451  Need char = 'b'
1451    
1452  /abc*/I  /abc*/I
1453  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1454  No options  No options
1455  First char = 'a'  First char = 'a'
1456  Need char = 'b'  Need char = 'b'
1457    
1458  /ab.c*/I  /ab.c*/I
1459  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1460  No options  No options
1461  First char = 'a'  First char = 'a'
1462  Need char = 'b'  Need char = 'b'
1463    
1464  /a.c*/I  /a.c*/I
1465  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1466  No options  No options
1467  First char = 'a'  First char = 'a'
1468  No need char  No need char
1469    
1470  /.c*/I  /.c*/I
1471  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1472  No options  No options
1473  No first char  No first char
1474  No need char  No need char
1475    
1476  /ac*/I  /ac*/I
1477  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1478  No options  No options
1479  First char = 'a'  First char = 'a'
1480  No need char  No need char
1481    
1482  /(a.c*|b.c*)/I  /(a.c*|b.c*)/I
1483  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1484  No options  No options
1485  No first char  No first char
1486  No need char  No need char
1487    
1488  /a.c*|aba/I  /a.c*|aba/I
1489  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1490  No options  No options
1491  First char = 'a'  First char = 'a'
1492  No need char  No need char
1493    
1494  /.+a/I  /.+a/I
1495  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1496  No options  No options
1497  No first char  No first char
1498  Need char = 'a'  Need char = 'a'
1499    
1500  /(?=abcda)a.*/I  /(?=abcda)a.*/I
1501  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1502  No options  No options
1503  First char = 'a'  First char = 'a'
1504  Need char = 'a'  Need char = 'a'
1505    
1506  /(?=a)a.*/I  /(?=a)a.*/I
1507  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1508  No options  No options
1509  First char = 'a'  First char = 'a'
1510  No need char  No need char
# Line 1568  No need char Line 1517  No need char
1517    
1518  /a\d*/I  /a\d*/I
1519  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1520  No options  No options
1521  First char = 'a'  First char = 'a'
1522  No need char  No need char
1523    
1524  /ab\d*/I  /ab\d*/I
1525  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1526  No options  No options
1527  First char = 'a'  First char = 'a'
1528  Need char = 'b'  Need char = 'b'
# Line 1594  Need char = 'd' Line 1541  Need char = 'd'
1541    
1542  /ab\d+/I  /ab\d+/I
1543  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1544  No options  No options
1545  First char = 'a'  First char = 'a'
1546  Need char = 'b'  Need char = 'b'
1547    
1548  /a(?(1)b)/I  /a(?(1)b)(.)/I
1549  Capturing subpattern count = 0  Capturing subpattern count = 1
1550  No options  No options
1551  First char = 'a'  First char = 'a'
1552  No need char  No need char
1553    
1554  /a(?(1)bag|big)/I  /a(?(1)bag|big)(.)/I
1555  Capturing subpattern count = 0  Capturing subpattern count = 1
1556  No options  No options
1557  First char = 'a'  First char = 'a'
1558  Need char = 'g'  Need char = 'g'
1559    
1560  /a(?(1)bag|big)*/I  /a(?(1)bag|big)*(.)/I
1561  Capturing subpattern count = 0  Capturing subpattern count = 1
1562  No options  No options
1563  First char = 'a'  First char = 'a'
1564  No need char  No need char
1565    
1566  /a(?(1)bag|big)+/I  /a(?(1)bag|big)+(.)/I
1567  Capturing subpattern count = 0  Capturing subpattern count = 1
1568  No options  No options
1569  First char = 'a'  First char = 'a'
1570  Need char = 'g'  Need char = 'g'
1571    
1572  /a(?(1)b..|b..)/I  /a(?(1)b..|b..)(.)/I
1573  Capturing subpattern count = 0  Capturing subpattern count = 1
1574  No options  No options
1575  First char = 'a'  First char = 'a'
1576  Need char = 'b'  Need char = 'b'
# Line 1669  No need char Line 1615  No need char
1615      \Nabc      \Nabc
1616  No match  No match
1617    
1618  /a*(b+)(z)(z)/IP  /a*(b+)(z)(z)/P
1619      aaaabbbbzzzz      aaaabbbbzzzz
1620   0: aaaabbbbzz   0: aaaabbbbzz
1621   1: bbbb   1: bbbb
# Line 1712  Study returned NULL Line 1658  Study returned NULL
1658    \)            # Closing )    \)            # Closing )
1659    /Ix    /Ix
1660  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1661  Options: extended  Options: extended
1662  First char = '('  First char = '('
1663  Need char = ')'  Need char = ')'
# Line 1741  No match Line 1686  No match
1686    
1687  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg
1688  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1689  Options: extended  Options: extended
1690  First char = '('  First char = '('
1691  Need char = ')'  Need char = ')'
# Line 1756  Need char = ')' Line 1700  Need char = ')'
1700    
1701  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix
1702  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1703  Options: extended  Options: extended
1704  First char = '('  First char = '('
1705  Need char = ')'  Need char = ')'
# Line 1775  No match Line 1718  No match
1718    
1719  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix
1720  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1721  Options: extended  Options: extended
1722  First char = '('  First char = '('
1723  Need char = ')'  Need char = ')'
# Line 1786  Need char = ')' Line 1728  Need char = ')'
1728    
1729  /\(  ( (?>[^()]+) | (?R) )* \) /Ix  /\(  ( (?>[^()]+) | (?R) )* \) /Ix
1730  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1731  Options: extended  Options: extended
1732  First char = '('  First char = '('
1733  Need char = ')'  Need char = ')'
# Line 1796  Need char = ')' Line 1737  Need char = ')'
1737    
1738  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1739  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
1740  Options: extended  Options: extended
1741  First char = '('  First char = '('
1742  Need char = ')'  Need char = ')'
# Line 1807  Need char = ')' Line 1747  Need char = ')'
1747    
1748  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1749  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1750  Options: extended  Options: extended
1751  First char = '('  First char = '('
1752  Need char = ')'  Need char = ')'
# Line 1824  Need char = ')' Line 1763  Need char = ')'
1763    
1764  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
1765  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1766  Options: extended  Options: extended
1767  First char = '('  First char = '('
1768  Need char = ')'  Need char = ')'
# Line 1841  Need char = ')' Line 1779  Need char = ')'
1779    
1780  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
1781  Capturing subpattern count = 11  Capturing subpattern count = 11
 Partial matching not supported  
1782  Options: extended  Options: extended
1783  First char = '('  First char = '('
1784  Need char = ')'  Need char = ')'
# Line 1861  Need char = ')' Line 1798  Need char = ')'
1798    
1799  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
1800  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1801  Options: extended  Options: extended
1802  First char = '('  First char = '('
1803  Need char = ')'  Need char = ')'
# Line 1869  Need char = ')' Line 1805  Need char = ')'
1805   0: (abcd(xyz<p>qrs)123)   0: (abcd(xyz<p>qrs)123)
1806   1: abcd(xyz<p>qrs)123   1: abcd(xyz<p>qrs)123
1807   2: 123   2: 123
  3: <unset>  
1808    
1809  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
1810  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1811  Options: extended  Options: extended
1812  First char = '('  First char = '('
1813  Need char = ')'  Need char = ')'
# Line 2252  Need char = 'd' Line 2186  Need char = 'd'
2186  /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
2187  Capturing subpattern count = 271  Capturing subpattern count = 271
2188  Max back reference = 270  Max back reference = 270
 Partial matching not supported  
2189  No options  No options
2190  No first char  No first char
2191  No need char  No need char
# Line 2933  Need char = 'c' Line 2866  Need char = 'c'
2866          End          End
2867  ------------------------------------------------------------------  ------------------------------------------------------------------
2868  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2869  No options  No options
2870  No first char  No first char
2871  No need char  No need char
# Line 2962  No need char Line 2894  No need char
2894          End          End
2895  ------------------------------------------------------------------  ------------------------------------------------------------------
2896  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2897  No options  No options
2898  First char = 'x'  First char = 'x'
2899  No need char  No need char
# Line 2978  No need char Line 2909  No need char
2909          End          End
2910  ------------------------------------------------------------------  ------------------------------------------------------------------
2911  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2912  No options  No options
2913  First char = 'x'  First char = 'x'
2914  No need char  No need char
# Line 3002  No need char Line 2932  No need char
2932    
2933  /^(\w++|\s++)*$/I  /^(\w++|\s++)*$/I
2934  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2935  Options: anchored  Options: anchored
2936  No first char  No first char
2937  No need char  No need char
# Line 3016  No match Line 2945  No match
2945    
2946  /(\d++)(\w)/I  /(\d++)(\w)/I
2947  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
2948  No options  No options
2949  No first char  No first char
2950  No need char  No need char
# Line 3031  No match Line 2959  No match
2959    
2960  /a++b/I  /a++b/I
2961  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2962  No options  No options
2963  First char = 'a'  First char = 'a'
2964  Need char = 'b'  Need char = 'b'
# Line 3040  Need char = 'b' Line 2967  Need char = 'b'
2967    
2968  /(a++b)/I  /(a++b)/I
2969  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2970  No options  No options
2971  First char = 'a'  First char = 'a'
2972  Need char = 'b'  Need char = 'b'
# Line 3050  Need char = 'b' Line 2976  Need char = 'b'
2976    
2977  /(a++)b/I  /(a++)b/I
2978  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2979  No options  No options
2980  First char = 'a'  First char = 'a'
2981  Need char = 'b'  Need char = 'b'
# Line 3060  Need char = 'b' Line 2985  Need char = 'b'
2985    
2986  /([^()]++|\([^()]*\))+/I  /([^()]++|\([^()]*\))+/I
2987  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2988  No options  No options
2989  No first char  No first char
2990  No need char  No need char
# Line 3070  No need char Line 2994  No need char
2994    
2995  /\(([^()]++|\([^()]+\))+\)/I  /\(([^()]++|\([^()]+\))+\)/I
2996  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2997  No options  No options
2998  First char = '('  First char = '('
2999  Need char = ')'  Need char = ')'
# Line 3133  Failed: nothing to repeat at offset 7 Line 3056  Failed: nothing to repeat at offset 7
3056          End          End
3057  ------------------------------------------------------------------  ------------------------------------------------------------------
3058  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3059  No options  No options
3060  First char = 'x'  First char = 'x'
3061  Need char = 'b'  Need char = 'b'
# Line 3150  Need char = 'b' Line 3072  Need char = 'b'
3072          End          End
3073  ------------------------------------------------------------------  ------------------------------------------------------------------
3074  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3075  Options: ungreedy  Options: ungreedy
3076  First char = 'x'  First char = 'x'
3077  Need char = 'b'  Need char = 'b'
# Line 3179  Need char = 'b' Line 3100  Need char = 'b'
3100          End          End
3101  ------------------------------------------------------------------  ------------------------------------------------------------------
3102  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
3103  Options: anchored  Options: anchored
3104  No first char  No first char
3105  No need char  No need char
# Line 3195  No need char Line 3115  No need char
3115          End          End
3116  ------------------------------------------------------------------  ------------------------------------------------------------------
3117  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3118  Options: anchored  Options: anchored
3119  No first char  No first char
3120  Need char = 'b'  Need char = 'b'
# Line 3213  Need char = 'b' Line 3132  Need char = 'b'
3132          End          End
3133  ------------------------------------------------------------------  ------------------------------------------------------------------
3134  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3135  Options: anchored  Options: anchored
3136  No first char  No first char
3137  Need char = 'b'  Need char = 'b'
# Line 3289  No need char Line 3207  No need char
3207    
3208  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix
3209  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3210  Options: extended  Options: extended
3211  First char = '<'  First char = '<'
3212  Need char = '>'  Need char = '>'
# Line 3339  Need char = 'X' Line 3256  Need char = 'X'
3256  /(.*)\d+\1/I  /(.*)\d+\1/I
3257  Capturing subpattern count = 1  Capturing subpattern count = 1
3258  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3259  No options  No options
3260  No first char  No first char
3261  No need char  No need char
3262    
3263  /(.*)\d+/I  /(.*)\d+/I
3264  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3265  No options  No options
3266  First char at start or follows newline  First char at start or follows newline
3267  No need char  No need char
# Line 3354  No need char Line 3269  No need char
3269  /(.*)\d+\1/Is  /(.*)\d+\1/Is
3270  Capturing subpattern count = 1  Capturing subpattern count = 1
3271  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3272  Options: dotall  Options: dotall
3273  No first char  No first char
3274  No need char  No need char
3275    
3276  /(.*)\d+/Is  /(.*)\d+/Is
3277  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3278  Options: anchored dotall  Options: anchored dotall
3279  No first char  No first char
3280  No need char  No need char
# Line 3369  No need char Line 3282  No need char
3282  /(.*(xyz))\d+\2/I  /(.*(xyz))\d+\2/I
3283  Capturing subpattern count = 2  Capturing subpattern count = 2
3284  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
3285  No options  No options
3286  First char at start or follows newline  First char at start or follows newline
3287  Need char = 'z'  Need char = 'z'
# Line 3377  Need char = 'z' Line 3289  Need char = 'z'
3289  /((.*))\d+\1/I  /((.*))\d+\1/I
3290  Capturing subpattern count = 2  Capturing subpattern count = 2
3291  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3292  No options  No options
3293  No first char  No first char
3294  No need char  No need char
# Line 3394  Need char = 'b' Line 3305  Need char = 'b'
3305    
3306  /(?=a).*/I  /(?=a).*/I
3307  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3308  No options  No options
3309  First char = 'a'  First char = 'a'
3310  No need char  No need char
# Line 3441  No options Line 3351  No options
3351  No first char  No first char
3352  Need char = 'a'  Need char = 'a'
3353    
3354  /(?(1)ab|ac)/I  /(?(1)ab|ac)(.)/I
3355  Capturing subpattern count = 0  Capturing subpattern count = 1
3356  No options  No options
3357  First char = 'a'  First char = 'a'
3358  No need char  No need char
3359    
3360  /(?(1)abz|acz)/I  /(?(1)abz|acz)(.)/I
3361  Capturing subpattern count = 0  Capturing subpattern count = 1
3362  No options  No options
3363  First char = 'a'  First char = 'a'
3364  Need char = 'z'  Need char = 'z'
3365    
3366  /(?(1)abz)/I  /(?(1)abz)(.)/I
3367  Capturing subpattern count = 0  Capturing subpattern count = 1
3368  No options  No options
3369  No first char  No first char
3370  No need char  No need char
3371    
3372  /(?(1)abz)123/I  /(?(1)abz)(1)23/I
3373  Capturing subpattern count = 0  Capturing subpattern count = 1
3374  No options  No options
3375  No first char  No first char
3376  Need char = '3'  Need char = '3'
# Line 3716  No need char Line 3626  No need char
3626    
3627  /(\d{3}(?C))*/I  /(\d{3}(?C))*/I
3628  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3629  No options  No options
3630  No first char  No first char
3631  No need char  No need char
# Line 3845  Callout 0: last capture = 1 Line 3754  Callout 0: last capture = 1
3754    
3755  /a(b+)(c*)(?C1)/I  /a(b+)(c*)(?C1)/I
3756  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3757  No options  No options
3758  First char = 'a'  First char = 'a'
3759  Need char = 'b'  Need char = 'b'
# Line 3871  No match Line 3779  No match
3779    
3780  /a(b+?)(c*?)(?C1)/I  /a(b+?)(c*?)(?C1)/I
3781  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3782  No options  No options
3783  First char = 'a'  First char = 'a'
3784  Need char = 'b'  Need char = 'b'
# Line 4034  Need char = 'b' Line 3941  Need char = 'b'
3941  /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii  /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii
3942  Capturing subpattern count = 4  Capturing subpattern count = 4
3943  Max back reference = 4  Max back reference = 4
 Partial matching not supported  
3944  Options: anchored caseless  Options: anchored caseless
3945  No first char  No first char
3946  No need char  No need char
# Line 4067  No match Line 3973  No match
3973    
3974  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
3975  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3976  Options: anchored  Options: anchored
3977  No first char  No first char
3978  No need char  No need char
# Line 4108  No match Line 4013  No match
4013    
4014  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix
4015  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
4016  Options: extended  Options: extended
4017  First char = '<'  First char = '<'
4018  Need char = '>'  Need char = '>'
# Line 4282  Named capturing subpatterns: Line 4186  Named capturing subpatterns:
4186    one     1    one     1
4187    three   3    three   3
4188    two     2    two     2
 Partial matching not supported  
4189  Options: anchored caseless  Options: anchored caseless
4190  No first char  No first char
4191  No need char  No need char
# Line 4328  No need char Line 4231  No need char
4231    
4232  /(.*)a/Is  /(.*)a/Is
4233  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
4234  Options: anchored dotall  Options: anchored dotall
4235  No first char  No first char
4236  Need char = 'a'  Need char = 'a'
# Line 4336  Need char = 'a' Line 4238  Need char = 'a'
4238  /(.*)a\1/Is  /(.*)a\1/Is
4239  Capturing subpattern count = 1  Capturing subpattern count = 1
4240  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
4241  Options: dotall  Options: dotall
4242  No first char  No first char
4243  Need char = 'a'  Need char = 'a'
# Line 4344  Need char = 'a' Line 4245  Need char = 'a'
4245  /(.*)a(b)\2/Is  /(.*)a(b)\2/Is
4246  Capturing subpattern count = 2  Capturing subpattern count = 2
4247  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
4248  Options: anchored dotall  Options: anchored dotall
4249  No first char  No first char
4250  Need char = 'b'  Need char = 'b'
4251    
4252  /((.*)a|(.*)b)z/Is  /((.*)a|(.*)b)z/Is
4253  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4254  Options: anchored dotall  Options: anchored dotall
4255  No first char  No first char
4256  Need char = 'z'  Need char = 'z'
# Line 4359  Need char = 'z' Line 4258  Need char = 'z'
4258  /((.*)a|(.*)b)z\1/Is  /((.*)a|(.*)b)z\1/Is
4259  Capturing subpattern count = 3  Capturing subpattern count = 3
4260  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
4261  Options: dotall  Options: dotall
4262  No first char  No first char
4263  Need char = 'z'  Need char = 'z'
# Line 4367  Need char = 'z' Line 4265  Need char = 'z'
4265  /((.*)a|(.*)b)z\2/Is  /((.*)a|(.*)b)z\2/Is
4266  Capturing subpattern count = 3  Capturing subpattern count = 3
4267  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
4268  Options: dotall  Options: dotall
4269  No first char  No first char
4270  Need char = 'z'  Need char = 'z'
# Line 4375  Need char = 'z' Line 4272  Need char = 'z'
4272  /((.*)a|(.*)b)z\3/Is  /((.*)a|(.*)b)z\3/Is
4273  Capturing subpattern count = 3  Capturing subpattern count = 3
4274  Max back reference = 3  Max back reference = 3
 Partial matching not supported  
4275  Options: dotall  Options: dotall
4276  No first char  No first char
4277  Need char = 'z'  Need char = 'z'
# Line 4383  Need char = 'z' Line 4279  Need char = 'z'
4279  /((.*)a|^(.*)b)z\3/Is  /((.*)a|^(.*)b)z\3/Is
4280  Capturing subpattern count = 3  Capturing subpattern count = 3
4281  Max back reference = 3  Max back reference = 3
 Partial matching not supported  
4282  Options: anchored dotall  Options: anchored dotall
4283  No first char  No first char
4284  Need char = 'z'  Need char = 'z'
4285    
4286  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4287  Capturing subpattern count = 31  Capturing subpattern count = 31
 Partial matching not supported  
4288  Options: anchored dotall  Options: anchored dotall
4289  No first char  No first char
4290  No need char  No need char
# Line 4398  No need char Line 4292  No need char
4292  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4293  Capturing subpattern count = 31  Capturing subpattern count = 31
4294  Max back reference = 31  Max back reference = 31
 Partial matching not supported  
4295  Options: dotall  Options: dotall
4296  No first char  No first char
4297  No need char  No need char
# Line 4406  No need char Line 4299  No need char
4299  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4300  Capturing subpattern count = 32  Capturing subpattern count = 32
4301  Max back reference = 32  Max back reference = 32
 Partial matching not supported  
4302  Options: dotall  Options: dotall
4303  No first char  No first char
4304  No need char  No need char
# Line 4473  Need char = 'c' Line 4365  Need char = 'c'
4365    
4366  /(a+)*zz/I  /(a+)*zz/I
4367  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
4368  No options  No options
4369  No first char  No first char
4370  Need char = 'z'  Need char = 'z'
# Line 4610  Failed: two named subpatterns have the s Line 4501  Failed: two named subpatterns have the s
4501  Capturing subpattern count = 3  Capturing subpattern count = 3
4502  Named capturing subpatterns:  Named capturing subpatterns:
4503    elem   2    elem   2
 Partial matching not supported  
4504  No options  No options
4505  First char = '['  First char = '['
4506  Need char = ']'  Need char = ']'
# Line 4628  No match Line 4518  No match
4518  Capturing subpattern count = 3  Capturing subpattern count = 3
4519  Named capturing subpatterns:  Named capturing subpatterns:
4520    elem   2    elem   2
 Partial matching not supported  
4521  No options  No options
4522  First char = '['  First char = '['
4523  Need char = ']'  Need char = ']'
# Line 4735  No need char Line 4624  No need char
4624    
4625  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4626  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4627  Options: caseless  Options: caseless
4628  No first char  No first char
4629  Need char = 'g' (caseless)  Need char = 'g' (caseless)
# Line 4745  Need char = 'g' (caseless) Line 4633  Need char = 'g' (caseless)
4633    
4634  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
4635  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4636  Options: caseless  Options: caseless
4637  No first char  No first char
4638  Need char = 'g' (caseless)  Need char = 'g' (caseless)
# Line 4764  Study returned NULL Line 4651  Study returned NULL
4651          End          End
4652  ------------------------------------------------------------------  ------------------------------------------------------------------
4653  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4654  No options  No options
4655  No first char  No first char
4656  Need char = 'b'  Need char = 'b'
# Line 4857  No match Line 4743  No match
4743          End          End
4744  ------------------------------------------------------------------  ------------------------------------------------------------------
4745  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4746  Options:  Options:
4747  No first char  No first char
4748  Need char = 'b'  Need char = 'b'
# Line 4902  Need char = 'b' Line 4787  Need char = 'b'
4787          End          End
4788  ------------------------------------------------------------------  ------------------------------------------------------------------
4789  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4790  Options:  Options:
4791  First char = 'a'  First char = 'a'
4792  Need char = 'b'  Need char = 'b'
# Line 5340  No match Line 5224  No match
5224          End          End
5225  ------------------------------------------------------------------  ------------------------------------------------------------------
5226  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
5227  Options:  Options:
5228  No first char  No first char
5229  Need char = '3'  Need char = '3'
# Line 5372  Need char = '3' Line 5255  Need char = '3'
5255    
5256  /\b.*/I  /\b.*/I
5257  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5258  No options  No options
5259  No first char  No first char
5260  No need char  No need char
# Line 5381  No need char Line 5263  No need char
5263    
5264  /\b.*/Is  /\b.*/Is
5265  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5266  Options: dotall  Options: dotall
5267  No first char  No first char
5268  No need char  No need char
# Line 5390  No need char Line 5271  No need char
5271    
5272  /(?!.bcd).*/I  /(?!.bcd).*/I
5273  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5274  No options  No options
5275  No first char  No first char
5276  No need char  No need char
# Line 5403  No options Line 5283  No options
5283  First char = 'a'  First char = 'a'
5284  Need char = 'e'  Need char = 'e'
5285      ab\P      ab\P
5286  Partial match  Partial match: ab
5287      abc\P      abc\P
5288  Partial match  Partial match: abc
5289      abcd\P      abcd\P
5290  Partial match  Partial match: abcd
5291      abcde\P      abcde\P
5292   0: abcde   0: abcde
5293      the quick brown abc\P      the quick brown abc\P
5294  Partial match  Partial match: abc
5295      ** Failers\P      ** Failers\P
5296  No match  No match
5297      the quick brown abxyz fox\P      the quick brown abxyz fox\P
# Line 5436  Need char = '/' Line 5316  Need char = '/'
5316   1: 02   1: 02
5317   2: 05   2: 05
5318      1\P      1\P
5319  Partial match  Partial match: 1
5320      1/2\P      1/2\P
5321  Partial match  Partial match: 1/2
5322      1/2/0\P      1/2/0\P
5323  Partial match  Partial match: 1/2/0
5324      1/2/04\P      1/2/04\P
5325   0: 1/2/04   0: 1/2/04
5326   1: 1   1: 1
5327   2: 2   2: 2
5328      0\P      0\P
5329  Partial match  Partial match: 0
5330      02/\P      02/\P
5331  Partial match  Partial match: 02/
5332      02/0\P      02/0\P
5333  Partial match  Partial match: 02/0
5334      02/1\P      02/1\P
5335  Partial match  Partial match: 02/1
5336      ** Failers\P      ** Failers\P
5337  No match  No match
5338      \P      \P
# Line 5474  No match Line 5354  No match
5354    
5355  /0{0,2}ABC/I  /0{0,2}ABC/I
5356  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5357  No options  No options
5358  No first char  No first char
5359  Need char = 'C'  Need char = 'C'
5360    
5361  /\d{3,}ABC/I  /\d{3,}ABC/I
5362  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5363  No options  No options
5364  No first char  No first char
5365  Need char = 'C'  Need char = 'C'
5366    
5367  /\d*ABC/I  /\d*ABC/I
5368  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5369  No options  No options
5370  No first char  No first char
5371  Need char = 'C'  Need char = 'C'
5372    
5373  /[abc]+DE/I  /[abc]+DE/I
5374  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5375  No options  No options
5376  No first char  No first char
5377  Need char = 'E'  Need char = 'E'
# Line 5508  Need char = '3' Line 5384  Need char = '3'
5384      123\P      123\P
5385   0: 123   0: 123
5386      a\P      a\P
5387  Partial match  Partial match: a
5388      b\P      b\P
5389  Partial match  Partial match: b
5390      c\P      c\P
5391  Partial match  Partial match: c
5392      c12\P      c12\P
5393  Partial match  Partial match: c12
5394      c123\P      c123\P
5395   0: c123   0: c123
5396    
# Line 5524  Options: anchored Line 5400  Options: anchored
5400  No first char  No first char
5401  Need char = 'X'  Need char = 'X'
5402      1\P      1\P
5403  Partial match  Partial match: 1
5404      123\P      123\P
5405  Partial match  Partial match: 123
5406      123X      123X
5407   0: 123X   0: 123X
5408      1234\P      1234\P
5409  Partial match  Partial match: 1234
5410      1234X      1234X
5411   0: 1234X   0: 1234X
5412      12345\P      12345\P
5413  Partial match  Partial match: 12345
5414      12345X      12345X
5415   0: 12345X   0: 12345X
5416      *** Failers      *** Failers
# Line 5619  No match Line 5495  No match
5495  ~<(\w+)/?>(.)*</(\1)>~smgI  ~<(\w+)/?>(.)*</(\1)>~smgI
5496  Capturing subpattern count = 3  Capturing subpattern count = 3
5497  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
5498  Options: multiline dotall  Options: multiline dotall
5499  First char = '<'  First char = '<'
5500  Need char = '>'  Need char = '>'
# Line 5672  No match Line 5547  No match
5547      line one\nthis is a line\nbreak in the second line      line one\nthis is a line\nbreak in the second line
5548  No match  No match
5549    
5550  /ab.cd/IP  /ab.cd/P
5551      ab-cd      ab-cd
5552   0: ab-cd   0: ab-cd
5553      ab=cd      ab=cd
# Line 5682  No match: POSIX code 17: match failed Line 5557  No match: POSIX code 17: match failed
5557      ab\ncd      ab\ncd
5558  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
5559    
5560  /ab.cd/IPs  /ab.cd/Ps
5561      ab-cd      ab-cd
5562   0: ab-cd   0: ab-cd
5563      ab=cd      ab=cd
# Line 5926  Matched, but too many substrings Line 5801  Matched, but too many substrings
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 5939  No need char Line 5813  No need char
5813    
5814  /[^()]*(?:\((?>(?R))\)[^()]*)*/I  /[^()]*(?:\((?>(?R))\)[^()]*)*/I
5815  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5816  No options  No options
5817  No first char  No first char
5818  No need char  No need char
# Line 5950  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 5961  No need char Line 5833  No need char
5833    
5834  /(?:\((?R)\))*[^()]*/I  /(?:\((?R)\))*[^()]*/I
5835  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5836  No options  No options
5837  No first char  No first char
5838  No need char  No need char
# Line 5974  No need char Line 5845  No need char
5845    
5846  /(?:\((?R)\))|[^()]*/I  /(?:\((?R)\))|[^()]*/I
5847  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5848  No options  No options
5849  No first char  No first char
5850  No need char  No need char
# Line 5987  No need char Line 5857  No need char
5857      ((this))      ((this))
5858   0: ((this))   0: ((this))
5859    
5860  /a(b)c/IPN  /a(b)c/PN
5861      abc      abc
5862  Matched with REG_NOSUB  Matched with REG_NOSUB
5863    
5864  /a(?P<name>b)c/IPN  /a(?P<name>b)c/PN
5865      abc      abc
5866  Matched with REG_NOSUB  Matched with REG_NOSUB
5867    
# Line 6316  Failed: octal value is greater than \377 Line 6186  Failed: octal value is greater than \377
6186    
6187  /\s*,\s*/IS  /\s*,\s*/IS
6188  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6189  No options  No options
6190  No first char  No first char
6191  Need char = ','  Need char = ','
# Line 6446  Unknown newline type at: <bad> Line 6315  Unknown newline type at: <bad>
6315    
6316  /.*/I<lf>  /.*/I<lf>
6317  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6318  Options:  Options:
6319  Forced newline sequence: LF  Forced newline sequence: LF
6320  First char at start or follows newline  First char at start or follows newline
# Line 6472  No need char Line 6340  No need char
6340    
6341  /\w+(.)(.)?def/Is  /\w+(.)(.)?def/Is
6342  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
6343  Options: dotall  Options: dotall
6344  No first char  No first char
6345  Need char = 'f'  Need char = 'f'
# Line 6489  Need char = 'f' Line 6356  Need char = 'f'
6356    
6357  +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I  +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
6358  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6359  No options  No options
6360  No first char  No first char
6361  No need char  No need char
# Line 6624  No need char Line 6490  No need char
6490    
6491  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
6492  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6493  No options  No options
6494  No first char  No first char
6495  No need char  No need char
# Line 6683  Starting byte set: a b c d Line 6548  Starting byte set: a b c d
6548          End          End
6549  ------------------------------------------------------------------  ------------------------------------------------------------------
6550  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6551  Options: anchored  Options: anchored
6552  No first char  No first char
6553  Need char = 'b'  Need char = 'b'
# Line 6699  Need char = 'b' Line 6563  Need char = 'b'
6563          End          End
6564  ------------------------------------------------------------------  ------------------------------------------------------------------
6565  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6566  Options: anchored  Options: anchored
6567  No first char  No first char
6568  Need char = 'b'  Need char = 'b'
# Line 6715  Need char = 'b' Line 6578  Need char = 'b'
6578          End          End
6579  ------------------------------------------------------------------  ------------------------------------------------------------------
6580  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6581  Options: anchored  Options: anchored
6582  No first char  No first char
6583  Need char = 'b'  Need char = 'b'
# Line 6731  Need char = 'b' Line 6593  Need char = 'b'
6593          End          End
6594  ------------------------------------------------------------------  ------------------------------------------------------------------
6595  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6596  Options: anchored  Options: anchored
6597  No first char  No first char
6598  Need char = 'A'  Need char = 'A'
# Line 6753  No match Line 6614  No match
6614          End          End
6615  ------------------------------------------------------------------  ------------------------------------------------------------------
6616  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
6617  Options: anchored caseless  Options: anchored caseless
6618  No first char  No first char
6619  Need char = 'A' (caseless)  Need char = 'A' (caseless)
# Line 6764  Need char = 'A' (caseless) Line 6624  Need char = 'A' (caseless)
6624    
6625  /(a*|b*)[cd]/IS  /(a*|b*)[cd]/IS
6626  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6627  No options  No options
6628  No first char  No first char
6629  No need char  No need char
# Line 6772  Starting byte set: a b c d Line 6631  Starting byte set: a b c d
6631    
6632  /(a+|b*)[cd]/IS  /(a+|b*)[cd]/IS
6633  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6634  No options  No options
6635  No first char  No first char
6636  No need char  No need char
# Line 6780  Starting byte set: a b c d Line 6638  Starting byte set: a b c d
6638    
6639  /(a*|b+)[cd]/IS  /(a*|b+)[cd]/IS
6640  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6641  No options  No options
6642  No first char  No first char
6643  No need char  No need char
# Line 6788  Starting byte set: a b c d Line 6645  Starting byte set: a b c d
6645    
6646  /(a+|b+)[cd]/IS  /(a+|b+)[cd]/IS
6647  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
6648  No options  No options
6649  No first char  No first char
6650  No need char  No need char
# Line 7663  Named capturing subpatterns: Line 7519  Named capturing subpatterns:
7519    one     1    one     1
7520    three   3    three   3
7521    two     2    two     2
 Partial matching not supported  
7522  Options: anchored caseless  Options: anchored caseless
7523  No first char  No first char
7524  No need char  No need char
# Line 7697  No match Line 7552  No match
7552  /(?=(\w+))\1:/I  /(?=(\w+))\1:/I
7553  Capturing subpattern count = 1  Capturing subpattern count = 1
7554  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
7555  No options  No options
7556  No first char  No first char
7557  Need char = ':'  Need char = ':'
# Line 7710  Capturing subpattern count = 1 Line 7564  Capturing subpattern count = 1
7564  Max back reference = 1  Max back reference = 1
7565  Named capturing subpatterns:  Named capturing subpatterns:
7566    abc   1    abc   1
 Partial matching not supported  
7567  No options  No options
7568  No first char  No first char
7569  Need char = ':'  Need char = ':'
# Line 7718  Need char = ':' Line 7571  Need char = ':'
7571   0: abcd:   0: abcd:
7572   1: abcd   1: abcd
7573    
 /(?'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  
   
7574  /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J  /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J
7575      adaa      adaa
7576   0: adaa   0: adaa
# Line 7758  No match Line 7597  No match
7597      bddd      bddd
7598  No match  No match
7599    
 /^(?<ab>a)? (?(<ab>)b|c) (?('ab')d|e)/x  
     abd  
  0: abd  
  1: a  
     ce  
  0: ce  
   
7600  /(?(<bc))/  /(?(<bc))/
7601  Failed: malformed number or name after (?( at offset 6  Failed: malformed number or name after (?( at offset 6
7602    
# Line 7795  Failed: reference to non-existent subpat Line 7627  Failed: reference to non-existent subpat
7627   1: abcabc1Xabc2XabcX   1: abcabc1Xabc2XabcX
7628   2: abcabc1Xabc2XabcX   2: abcabc1Xabc2XabcX
7629    
 /^(?(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>  
   
7630  /^(?(DEFINE) abc | xyz ) /x  /^(?(DEFINE) abc | xyz ) /x
7631  Failed: DEFINE group contains more than one branch at offset 22  Failed: DEFINE group contains more than one branch at offset 22
7632    
# Line 7854  No match Line 7668  No match
7668  No match  No match
7669    
7670  /^abc./mgx<any>  /^abc./mgx<any>
7671      abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 \x{2028}abc8 \x{2029}abc9 JUNK      abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
7672   0: abc1   0: abc1
7673   0: abc2   0: abc2
7674   0: abc3   0: abc3
# Line 7864  No match Line 7678  No match
7678   0: abc7   0: abc7
7679    
7680  /abc.$/mgx<any>  /abc.$/mgx<any>
7681      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
7682   0: abc1   0: abc1
7683   0: abc2   0: abc2
7684   0: abc3   0: abc3
# Line 7990  Need char = 'P' Line 7804  Need char = 'P'
7804   0: PXP   0: PXP
7805   1: P   1: P
7806    
 /(?(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  
   
7807  /(?:a(?&abc)b)*(?<abc>x)/  /(?:a(?&abc)b)*(?<abc>x)/
7808      123axbaxbaxbx456      123axbaxbaxbx456
7809   0: axbaxbaxbx   0: axbaxbaxbx
# Line 8067  No match Line 7841  No match
7841     DEFabcABCXYZ     DEFabcABCXYZ
7842  No match  No match
7843    
 /^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/  
     ababababbbabZXXXX  
  0: ababababbbabZ  
  1: ab  
  2: b  
   
7844  /^(a)\g-2/  /^(a)\g-2/
7845  Failed: reference to non-existent subpattern at offset 7  Failed: reference to non-existent subpattern at offset 7
7846    
7847  /^(a)\g/  /^(a)\g/
7848  Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 5  Failed: a numbered reference must not be zero at offset 5
7849    
7850  /^(a)\g{0}/  /^(a)\g{0}/
7851  Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 7  Failed: a numbered reference must not be zero at offset 8
7852    
7853  /^(a)\g{3/  /^(a)\g{3/
7854  Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 8  Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 8
7855    
7856  /^(a)\g{4a}/  /^(a)\g{4a}/
7857  Failed: reference to non-existent subpattern at offset 9  Failed: reference to non-existent subpattern at offset 9
# Line 8166  No match Line 7934  No match
7934   0+   0+
7935    
7936  /abc.$/mgx<anycrlf>  /abc.$/mgx<anycrlf>
7937      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
7938   0: abc1   0: abc1
7939   0: abc4   0: abc4
7940   0: abc5   0: abc5
# Line 8220  No match Line 7988  No match
7988  No match  No match
7989    
7990  /x(?-0)y/  /x(?-0)y/
7991  Failed: (?+ or (?- or (?(+ or (?(- must be followed by a non-zero number at offset 5  Failed: a numbered reference must not be zero at offset 5
7992    
7993  /x(?-1)y/  /x(?-1)y/
7994  Failed: reference to non-existent subpattern at offset 5  Failed: reference to non-existent subpattern at offset 5
7995    
7996  /x(?+0)y/  /x(?+0)y/
7997  Failed: (?+ or (?- or (?(+ or (?(- must be followed by a non-zero number at offset 5  Failed: a numbered reference must not be zero at offset 5
7998    
7999  /x(?+1)y/  /x(?+1)y/
8000  Failed: reference to non-existent subpattern at offset 5  Failed: reference to non-existent subpattern at offset 5
# Line 8308  Failed: reference to non-existent subpat Line 8076  Failed: reference to non-existent subpat
8076  /((?(-2)a))/BZ  /((?(-2)a))/BZ
8077  Failed: reference to non-existent subpattern at offset 7  Failed: reference to non-existent subpattern at offset 7
8078    
8079  /^(?(+1)X|Y)/BZ  /^(?(+1)X|Y)(.)/BZ
8080  ------------------------------------------------------------------  ------------------------------------------------------------------
8081          Bra          Bra
8082          ^          ^
# Line 8318  Failed: reference to non-existent subpat Line 8086  Failed: reference to non-existent subpat
8086          Alt          Alt
8087          Y          Y
8088          Ket          Ket
8089            CBra 1
8090            Any
8091            Ket
8092          Ket          Ket
8093          End          End
8094  ------------------------------------------------------------------  ------------------------------------------------------------------
8095      Y      Y!
8096   0: Y   0: Y!
8097     1: !
 /(foo)\Kbar/  
     foobar  
  0: bar  
  1: foo  
   
 /(foo)(\Kbar|baz)/  
     foobar  
  0: bar  
  1: foo  
  2: bar  
     foobaz  
  0: foobaz  
  1: foo  
  2: baz  
   
 /(foo\Kbar)baz/  
     foobarbaz  
  0: barbaz  
  1: foobar  
8098    
8099  /(?<A>tom|bon)-\k{A}/  /(?<A>tom|bon)-\k{A}/
8100      tom-tom      tom-tom
# Line 8356  No match Line 8108  No match
8108      tom-bon      tom-bon
8109  No match  No match
8110    
 /(?<A>tom|bon)-\g{A}/  
     tom-tom  
  0: tom-tom  
  1: tom  
     bon-bon  
  0: bon-bon  
  1: bon  
   
8111  /\g{A/  /\g{A/
8112  Failed: syntax error in subpattern name (missing terminator) at offset 4  Failed: syntax error in subpattern name (missing terminator) at offset 4
8113    
# Line 8458  Failed: syntax error in subpattern name Line 8202  Failed: syntax error in subpattern name
8202   3: <unset>   3: <unset>
8203   4: x   4: x
8204    
 /(?|(abc)|(xyz))\1/  
     abcabc  
  0: abcabc  
  1: abc  
     xyzxyz  
  0: xyzxyz  
  1: xyz  
     ** Failers  
 No match  
     abcxyz  
 No match  
     xyzabc  
 No match  
   
 /(?|(abc)|(xyz))(?1)/  
     abcabc  
  0: abcabc  
  1: abc  
     xyzabc  
  0: xyzabc  
  1: xyz  
     ** Failers  
 No match  
     xyzxyz  
 No match  
   
 /\H\h\V\v/  
     X X\x0a  
  0: X X\x0a  
     X\x09X\x0b  
  0: X\x09X\x0b  
     ** Failers  
 No match  
     \xa0 X\x0a  
 No match  
   
 /\H*\h+\V?\v{3,4}/  
     \x09\x20\xa0X\x0a\x0b\x0c\x0d\x0a  
  0: \x09 \xa0X\x0a\x0b\x0c\x0d  
     \x09\x20\xa0\x0a\x0b\x0c\x0d\x0a  
  0: \x09 \xa0\x0a\x0b\x0c\x0d  
     \x09\x20\xa0\x0a\x0b\x0c  
  0: \x09 \xa0\x0a\x0b\x0c  
     ** Failers  
 No match  
     \x09\x20\xa0\x0a\x0b  
 No match  
   
 /\H{3,4}/  
     XY  ABCDE  
  0: ABCD  
     XY  PQR ST  
  0: PQR  
   
 /.\h{3,4}./  
     XY  AB    PQRS  
  0: B    P  
   
 /\h*X\h?\H+Y\H?Z/  
     >XNNNYZ  
  0: XNNNYZ  
     >  X NYQZ  
  0:   X NYQZ  
     ** Failers  
 No match  
     >XYZ  
 No match  
     >  X NY Z  
 No match  
   
 /\v*X\v?Y\v+Z\V*\x0a\V+\x0b\V{2,3}\x0c/  
     >XY\x0aZ\x0aA\x0bNN\x0c  
  0: XY\x0aZ\x0aA\x0bNN\x0c  
     >\x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c  
  0: \x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c  
   
8205  /[\h]/BZ  /[\h]/BZ
8206  ------------------------------------------------------------------  ------------------------------------------------------------------
8207          Bra          Bra
# Line 8830  Failed: missing terminating ] for charac Line 8498  Failed: missing terminating ] for charac
8498          End          End
8499  ------------------------------------------------------------------  ------------------------------------------------------------------
8500    
 /^a+(*FAIL)/  
     aaaaaa  
 No match  
   
 /a+b?c+(*FAIL)/  
     aaabccc  
 No match  
   
 /a+b?(*PRUNE)c+(*FAIL)/  
     aaabccc  
 No match  
   
 /a+b?(*COMMIT)c+(*FAIL)/  
     aaabccc  
 No match  
   
 /a+b?(*SKIP)c+(*FAIL)/  
     aaabcccaaabccc  
 No match  
   
 /^(?:aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/  
     aaaxxxxxx  
  0: aaaxxxxxx  
     aaa++++++  
  0: aaa  
     bbbxxxxx  
  0: bbbxxxxx  
     bbb+++++  
  0: bbb  
     cccxxxx  
  0: cccxxxx  
     ccc++++  
  0: ccc  
     dddddddd  
  0: ddd  
   
 /^(aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/  
     aaaxxxxxx  
  0: aaaxxxxxx  
  1: aaaxxxxxx  
     aaa++++++  
  0: aaa  
  1: aaa  
     bbbxxxxx  
  0: bbbxxxxx  
  1: bbbxxxxx  
     bbb+++++  
  0: bbb  
  1: bbb  
     cccxxxx  
  0: cccxxxx  
  1: cccxxxx  
     ccc++++  
  0: ccc  
  1: ccc  
     dddddddd  
  0: ddd  
  1: ddd  
   
 /a+b?(*THEN)c+(*FAIL)/  
     aaabccc  
 No match  
   
 /(A (A|B(*ACCEPT)|C) D)(E)/x  
     ABX  
  0: AB  
     AADE  
  0: AADE  
  1: AAD  
  2: A  
  3: E  
     ACDE  
  0: ACDE  
  1: ACD  
  2: C  
  3: E  
     ** Failers  
 No match  
     AD  
 No match  
   
8501  /^a+(*FAIL)/C  /^a+(*FAIL)/C
8502      aaaaaa      aaaaaa
8503  --->aaaaaa  --->aaaaaa
# Line 9215  No match Line 8802  No match
8802    
8803  /a\R{2,4}b/I<bsr_anycrlf>  /a\R{2,4}b/I<bsr_anycrlf>
8804  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
8805  Options: bsr_anycrlf  Options: bsr_anycrlf
8806  First char = 'a'  First char = 'a'
8807  Need char = 'b'  Need char = 'b'
# Line 9234  No match Line 8820  No match
8820    
8821  /a\R{2,4}b/I<bsr_unicode>  /a\R{2,4}b/I<bsr_unicode>
8822  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
8823  Options: bsr_unicode  Options: bsr_unicode
8824  First char = 'a'  First char = 'a'
8825  Need char = 'b'  Need char = 'b'
# Line 9303  First char = 'a' Line 8888  First char = 'a'
8888  Need char = 'b'  Need char = 'b'
8889    
8890  /(?<a>)(?&)/  /(?<a>)(?&)/
8891  Failed: subpattern name expected after (?& at offset 9  Failed: subpattern name expected at offset 9
8892    
8893  /(?<abc>)(?&a)/  /(?<abc>)(?&a)/
8894  Failed: reference to non-existent subpattern at offset 12  Failed: reference to non-existent subpattern at offset 12
# Line 9317  Failed: digit expected after (?+ at offs Line 8902  Failed: digit expected after (?+ at offs
8902  /(?-+a)/  /(?-+a)/
8903  Failed: unrecognized character after (? or (?- at offset 3  Failed: unrecognized character after (? or (?- at offset 3
8904    
8905    /(?(-1))/
8906    Failed: reference to non-existent subpattern at offset 6
8907    
8908    /(?(+10))/
8909    Failed: reference to non-existent subpattern at offset 7
8910    
8911    /(?(10))/
8912    Failed: reference to non-existent subpattern at offset 6
8913    
8914    /(?(+2))()()/
8915    
8916    /(?(2))()()/
8917    
8918    /\k''/
8919    Failed: subpattern name expected at offset 3
8920    
8921    /\k<>/
8922    Failed: subpattern name expected at offset 3
8923    
8924    /\k{}/
8925    Failed: subpattern name expected at offset 3
8926    
8927    /(?P=)/
8928    Failed: subpattern name expected at offset 4
8929    
8930    /(?P>)/
8931    Failed: subpattern name expected at offset 4
8932    
8933    /(?!\w)(?R)/
8934    Failed: recursive call could loop indefinitely at offset 9
8935    
8936    /(?=\w)(?R)/
8937    Failed: recursive call could loop indefinitely at offset 9
8938    
8939    /(?<!\w)(?R)/
8940    Failed: recursive call could loop indefinitely at offset 10
8941    
8942    /(?<=\w)(?R)/
8943    Failed: recursive call could loop indefinitely at offset 10
8944    
8945    /[[:foo:]]/
8946    Failed: unknown POSIX class name at offset 3
8947    
8948    /[[:1234:]]/
8949    Failed: unknown POSIX class name at offset 3
8950    
8951    /[[:f\oo:]]/
8952    Failed: unknown POSIX class name at offset 3
8953    
8954    /[[: :]]/
8955    Failed: unknown POSIX class name at offset 3
8956    
8957    /[[:...:]]/
8958    Failed: unknown POSIX class name at offset 3
8959    
8960    /[[:l\ower:]]/
8961    Failed: unknown POSIX class name at offset 3
8962    
8963    /[[:abc\:]]/
8964    Failed: unknown POSIX class name at offset 3
8965    
8966    /[abc[:x\]pqr:]]/
8967    Failed: unknown POSIX class name at offset 6
8968    
8969    /[[:a\dz:]]/
8970    Failed: unknown POSIX class name at offset 3
8971    
8972    /(^(a|b\g<-1'c))/
8973    Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 15
8974    
8975    /^(?+1)(?<a>x|y){0}z/
8976        xzxx
8977     0: xz
8978        yzyy
8979     0: yz
8980        ** Failers
8981    No match
8982        xxz
8983    No match
8984    
8985    /(\3)(\1)(a)/
8986        cat
8987    No match
8988    
8989    /(\3)(\1)(a)/<JS>
8990        cat
8991     0: a
8992     1:
8993     2:
8994     3: a
8995    
8996    /TA]/
8997        The ACTA] comes
8998     0: TA]
8999    
9000    /TA]/<JS>
9001    Failed: ] is an invalid data character in JavaScript compatibility mode at offset 2
9002    
9003    /(?2)[]a()b](abc)/
9004    Failed: reference to non-existent subpattern at offset 3
9005    
9006    /(?2)[^]a()b](abc)/
9007    Failed: reference to non-existent subpattern at offset 3
9008    
9009    /(?1)[]a()b](abc)/
9010        abcbabc
9011     0: abcbabc
9012     1: abc
9013        ** Failers
9014    No match
9015        abcXabc
9016    No match
9017    
9018    /(?1)[^]a()b](abc)/
9019        abcXabc
9020     0: abcXabc
9021     1: abc
9022        ** Failers
9023    No match
9024        abcbabc
9025    No match
9026    
9027    /(?2)[]a()b](abc)(xyz)/
9028        xyzbabcxyz
9029     0: xyzbabcxyz
9030     1: abc
9031     2: xyz
9032    
9033    /(?&N)[]a(?<N>)](?<M>abc)/
9034    Failed: reference to non-existent subpattern at offset 4
9035    
9036    /(?&N)[]a(?<N>)](abc)/
9037    Failed: reference to non-existent subpattern at offset 4
9038    
9039    /a[]b/
9040    Failed: missing terminating ] for character class at offset 4
9041    
9042    /a[^]b/
9043    Failed: missing terminating ] for character class at offset 5
9044    
9045    /a[]b/<JS>
9046        ** Failers
9047    No match
9048        ab
9049    No match
9050    
9051    /a[]+b/<JS>
9052        ** Failers
9053    No match
9054        ab
9055    No match
9056    
9057    /a[]*+b/<JS>
9058        ** Failers
9059    No match
9060        ab
9061    No match
9062    
9063    /a[^]b/<JS>
9064        aXb
9065     0: aXb
9066        a\nb
9067     0: a\x0ab
9068        ** Failers
9069    No match
9070        ab
9071    No match
9072    
9073    /a[^]+b/<JS>
9074        aXb
9075     0: aXb
9076        a\nX\nXb
9077     0: a\x0aX\x0aXb
9078        ** Failers
9079    No match
9080        ab
9081    No match
9082    
9083    /a(?!)+b/
9084    Failed: nothing to repeat at offset 5
9085    
9086    /a(*FAIL)+b/
9087    Failed: nothing to repeat at offset 8
9088    
9089    /(abc|pqr|123){0}[xyz]/SI
9090    Capturing subpattern count = 1
9091    No options
9092    No first char
9093    No need char
9094    Starting byte set: x y z
9095    
9096    /(?(?=.*b)b|^)/CI
9097    Capturing subpattern count = 0
9098    Options:
9099    No first char
9100    No need char
9101       adc
9102    --->adc
9103     +0 ^       (?(?=.*b)b|^)
9104     +2 ^       (?=.*b)
9105     +5 ^       .*
9106     +7 ^  ^    b
9107     +7 ^ ^     b
9108     +7 ^^      b
9109     +7 ^       b
9110    +12 ^       )
9111    +13 ^
9112     0:
9113       abc
9114    --->abc
9115     +0 ^       (?(?=.*b)b|^)
9116     +2 ^       (?=.*b)
9117     +5 ^       .*
9118     +7 ^  ^    b
9119     +7 ^ ^     b
9120     +7 ^^      b
9121     +8 ^ ^     )
9122     +9 ^       b
9123     +0  ^      (?(?=.*b)b|^)
9124     +2  ^      (?=.*b)
9125     +5  ^      .*
9126     +7  ^ ^    b
9127     +7  ^^     b
9128     +7  ^      b
9129     +8  ^^     )
9130     +9  ^      b
9131    +10  ^^     |
9132    +13  ^^
9133     0: b
9134    
9135    /(?(?=b).*b|^d)/I
9136    Capturing subpattern count = 0
9137    No options
9138    No first char
9139    No need char
9140    
9141    /(?(?=.*b).*b|^d)/I
9142    Capturing subpattern count = 0
9143    No options
9144    First char at start or follows newline
9145    No need char
9146    
9147    /a?|b?/P
9148        abc
9149     0: a
9150        ** Failers
9151     0:
9152        ddd\N
9153    No match: POSIX code 17: match failed
9154    
9155    /xyz/C
9156      xyz
9157    --->xyz
9158     +0 ^       x
9159     +1 ^^      y
9160     +2 ^ ^     z
9161     +3 ^  ^
9162     0: xyz
9163      abcxyz
9164    --->abcxyz
9165     +0    ^       x
9166     +1    ^^      y
9167     +2    ^ ^     z
9168     +3    ^  ^
9169     0: xyz
9170      abcxyz\Y
9171    --->abcxyz
9172     +0 ^          x
9173     +0  ^         x
9174     +0   ^        x
9175     +0    ^       x
9176     +1    ^^      y
9177     +2    ^ ^     z
9178     +3    ^  ^
9179     0: xyz
9180      ** Failers
9181    No match
9182      abc
9183    No match
9184      abc\Y
9185    --->abc
9186     +0 ^       x
9187     +0  ^      x
9188     +0   ^     x
9189     +0    ^    x
9190    No match
9191      abcxypqr
9192    No match
9193      abcxypqr\Y
9194    --->abcxypqr
9195     +0 ^            x
9196     +0  ^           x
9197     +0   ^          x
9198     +0    ^         x
9199     +1    ^^        y
9200     +2    ^ ^       z
9201     +0     ^        x
9202     +0      ^       x
9203     +0       ^      x
9204     +0        ^     x
9205     +0         ^    x
9206    No match
9207    
9208    /^"((?(?=[a])[^"])|b)*"$/C
9209        "ab"
9210    --->"ab"
9211     +0 ^        ^
9212     +1 ^        "
9213     +2 ^^       ((?(?=[a])[^"])|b)*
9214     +3 ^^       (?(?=[a])[^"])
9215     +5 ^^       (?=[a])
9216     +8 ^^       [a]
9217    +11 ^ ^      )
9218    +12 ^^       [^"]
9219    +16 ^ ^      )
9220    +17 ^ ^      |
9221     +3 ^ ^      (?(?=[a])[^"])
9222     +5 ^ ^      (?=[a])
9223     +8 ^ ^      [a]
9224    +21 ^ ^      "
9225    +18 ^ ^      b
9226    +19 ^  ^     )
9227     +3 ^  ^     (?(?=[a])[^"])
9228     +5 ^  ^     (?=[a])
9229     +8 ^  ^     [a]
9230    +21 ^  ^     "
9231    +22 ^   ^    $
9232    +23 ^   ^
9233     0: "ab"
9234     1:
9235    
9236    /^"((?(?=[a])[^"])|b)*"$/
9237        "ab"
9238     0: "ab"
9239     1:
9240    
9241    /^X(?5)(a)(?|(b)|(q))(c)(d)Y/
9242    Failed: reference to non-existent subpattern at offset 5
9243    
9244    /^X(?&N)(a)(?|(b)|(q))(c)(d)(?<N>Y)/
9245        XYabcdY
9246     0: XYabcdY
9247     1: a
9248     2: b
9249     3: c
9250     4: d
9251     5: Y
9252    
9253    /Xa{2,4}b/
9254        X\P
9255    Partial match: X
9256        Xa\P
9257    Partial match: Xa
9258        Xaa\P
9259    Partial match: Xaa
9260        Xaaa\P
9261    Partial match: Xaaa
9262        Xaaaa\P
9263    Partial match: Xaaaa
9264    
9265    /Xa{2,4}?b/
9266        X\P
9267    Partial match: X
9268        Xa\P
9269    Partial match: Xa
9270        Xaa\P
9271    Partial match: Xaa
9272        Xaaa\P
9273    Partial match: Xaaa
9274        Xaaaa\P
9275    Partial match: Xaaaa
9276    
9277    /Xa{2,4}+b/
9278        X\P
9279    Partial match: X
9280        Xa\P
9281    Partial match: Xa
9282        Xaa\P
9283    Partial match: Xaa
9284        Xaaa\P
9285    Partial match: Xaaa
9286        Xaaaa\P
9287    Partial match: Xaaaa
9288    
9289    /X\d{2,4}b/
9290        X\P
9291    Partial match: X
9292        X3\P
9293    Partial match: X3
9294        X33\P
9295    Partial match: X33
9296        X333\P
9297    Partial match: X333
9298        X3333\P
9299    Partial match: X3333
9300    
9301    /X\d{2,4}?b/
9302        X\P
9303    Partial match: X
9304        X3\P
9305    Partial match: X3
9306        X33\P
9307    Partial match: X33
9308        X333\P
9309    Partial match: X333
9310        X3333\P
9311    Partial match: X3333
9312    
9313    /X\d{2,4}+b/
9314        X\P
9315    Partial match: X
9316        X3\P
9317    Partial match: X3
9318        X33\P
9319    Partial match: X33
9320        X333\P
9321    Partial match: X333
9322        X3333\P
9323    Partial match: X3333
9324    
9325    /X\D{2,4}b/
9326        X\P
9327    Partial match: X
9328        Xa\P
9329    Partial match: Xa
9330        Xaa\P
9331    Partial match: Xaa
9332        Xaaa\P
9333    Partial match: Xaaa
9334        Xaaaa\P
9335    Partial match: Xaaaa
9336    
9337    /X\D{2,4}?b/
9338        X\P
9339    Partial match: X
9340        Xa\P
9341    Partial match: Xa
9342        Xaa\P
9343    Partial match: Xaa
9344        Xaaa\P
9345    Partial match: Xaaa
9346        Xaaaa\P
9347    Partial match: Xaaaa
9348    
9349    /X\D{2,4}+b/
9350        X\P
9351    Partial match: X
9352        Xa\P
9353    Partial match: Xa
9354        Xaa\P
9355    Partial match: Xaa
9356        Xaaa\P
9357    Partial match: Xaaa
9358        Xaaaa\P
9359    Partial match: Xaaaa
9360    
9361    /X[abc]{2,4}b/
9362        X\P
9363    Partial match: X
9364        Xa\P
9365    Partial match: Xa
9366        Xaa\P
9367    Partial match: Xaa
9368        Xaaa\P
9369    Partial match: Xaaa
9370        Xaaaa\P
9371    Partial match: Xaaaa
9372    
9373    /X[abc]{2,4}?b/
9374        X\P
9375    Partial match: X
9376        Xa\P
9377    Partial match: Xa
9378        Xaa\P
9379    Partial match: Xaa
9380        Xaaa\P
9381    Partial match: Xaaa
9382        Xaaaa\P
9383    Partial match: Xaaaa
9384    
9385    /X[abc]{2,4}+b/
9386        X\P
9387    Partial match: X
9388        Xa\P
9389    Partial match: Xa
9390        Xaa\P
9391    Partial match: Xaa
9392        Xaaa\P
9393    Partial match: Xaaa
9394        Xaaaa\P
9395    Partial match: Xaaaa
9396    
9397    /X[^a]{2,4}b/
9398        X\P
9399    Partial match: X
9400        Xz\P
9401    Partial match: Xz
9402        Xzz\P
9403    Partial match: Xzz
9404        Xzzz\P
9405    Partial match: Xzzz
9406        Xzzzz\P
9407    Partial match: Xzzzz
9408    
9409    /X[^a]{2,4}?b/
9410        X\P
9411    Partial match: X
9412        Xz\P
9413    Partial match: Xz
9414        Xzz\P
9415    Partial match: Xzz
9416        Xzzz\P
9417    Partial match: Xzzz
9418        Xzzzz\P
9419    Partial match: Xzzzz
9420    
9421    /X[^a]{2,4}+b/
9422        X\P
9423    Partial match: X
9424        Xz\P
9425    Partial match: Xz
9426        Xzz\P
9427    Partial match: Xzz
9428        Xzzz\P
9429    Partial match: Xzzz
9430        Xzzzz\P
9431    Partial match: Xzzzz
9432    
9433    /(Y)X\1{2,4}b/
9434        YX\P
9435    Partial match: YX
9436        YXY\P
9437    Partial match: YXY
9438        YXYY\P
9439    Partial match: YXYY
9440        YXYYY\P
9441    Partial match: YXYYY
9442        YXYYYY\P
9443    Partial match: YXYYYY
9444    
9445    /(Y)X\1{2,4}?b/
9446        YX\P
9447    Partial match: YX
9448        YXY\P
9449    Partial match: YXY
9450        YXYY\P
9451    Partial match: YXYY
9452        YXYYY\P
9453    Partial match: YXYYY
9454        YXYYYY\P
9455    Partial match: YXYYYY
9456    
9457    /(Y)X\1{2,4}+b/
9458        YX\P
9459    Partial match: YX
9460        YXY\P
9461    Partial match: YXY
9462        YXYY\P
9463    Partial match: YXYY
9464        YXYYY\P
9465    Partial match: YXYYY
9466        YXYYYY\P
9467    Partial match: YXYYYY
9468    
9469    /\++\KZ|\d+X|9+Y/
9470        ++++123999\P
9471    Partial match: 123999
9472        ++++123999Y\P
9473     0: 999Y
9474        ++++Z1234\P
9475     0: Z
9476    
9477    /Z(*F)/
9478        Z\P
9479    No match
9480        ZA\P
9481    No match
9482    
9483    /Z(?!)/
9484        Z\P
9485    No match
9486        ZA\P
9487    No match
9488    
9489    /dog(sbody)?/
9490        dogs\P
9491     0: dog
9492        dogs\P\P
9493    Partial match: dogs
9494    
9495    /dog(sbody)??/
9496        dogs\P
9497     0: dog
9498        dogs\P\P
9499     0: dog
9500    
9501    /dog|dogsbody/
9502        dogs\P
9503     0: dog
9504        dogs\P\P
9505     0: dog
9506    
9507    /dogsbody|dog/
9508        dogs\P
9509     0: dog
9510        dogs\P\P
9511    Partial match: dogs
9512    
9513    /\bthe cat\b/
9514        the cat\P
9515     0: the cat
9516        the cat\P\P
9517    Partial match: the cat
9518    
9519    /abc/
9520       abc\P
9521     0: abc
9522       abc\P\P
9523     0: abc
9524    
9525    /\w+A/P
9526       CDAAAAB
9527     0: CDAAAA
9528    
9529    /\w+A/PU
9530       CDAAAAB
9531     0: CDA
9532    
9533    /abc\K123/
9534        xyzabc123pqr
9535     0: 123
9536        xyzabc12\P
9537    Partial match: abc12
9538        xyzabc12\P\P
9539    Partial match: abc12
9540    
9541    /(?<=abc)123/
9542        xyzabc123pqr
9543     0: 123
9544        xyzabc12\P
9545    Partial match: abc12
9546        xyzabc12\P\P
9547    Partial match: abc12
9548    
9549    /\babc\b/
9550        +++abc+++
9551     0: abc
9552        +++ab\P
9553    Partial match: +ab
9554        +++ab\P\P
9555    Partial match: +ab
9556    
9557    /(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ
9558    ------------------------------------------------------------------
9559            Bra
9560            Once
9561            Recurse
9562            Ket
9563            Once
9564            Recurse
9565            Ket
9566            Cond
9567            Cond def
9568            CBra 1
9569            <
9570            [^m]
9571            [^>]
9572            >
9573            [^<]
9574            Ket
9575            CBra 2
9576            \w*+
9577            Ket
9578            Ket
9579            Ket
9580            End
9581    ------------------------------------------------------------------
9582    
9583    /(?&word)(?&element)(?(DEFINE)(?<element><[^\d][^>]>[^<])(?<word>\w*+))/BZ
9584    ------------------------------------------------------------------
9585            Bra
9586            Once
9587            Recurse
9588            Ket
9589            Once
9590            Recurse
9591            Ket
9592            Cond
9593            Cond def
9594            CBra 1
9595            <
9596            [\x00-/:-\xff] (neg)
9597            [^>]
9598            >
9599            [^<]
9600            Ket
9601            CBra 2
9602            \w*+
9603            Ket
9604            Ket
9605            Ket
9606            End
9607    ------------------------------------------------------------------
9608    
9609    /abc\K/+
9610        abcdef
9611     0:
9612     0+ def
9613        abcdef\N\N
9614     0:
9615     0+ def
9616        xyzabcdef\N\N
9617     0:
9618     0+ def
9619        ** Failers
9620    No match
9621        abcdef\N
9622    No match
9623        xyzabcdef\N
9624    No match
9625    
9626    /^(?:(?=abc)|abc\K)/+
9627        abcdef
9628     0:
9629     0+ abcdef
9630        abcdef\N\N
9631     0:
9632     0+ def
9633        ** Failers
9634    No match
9635        abcdef\N
9636    No match
9637    
9638    /a?b?/+
9639        xyz
9640     0:
9641     0+ xyz
9642        xyzabc
9643     0:
9644     0+ xyzabc
9645        xyzabc\N
9646     0: ab
9647     0+ c
9648        xyzabc\N\N
9649     0:
9650     0+ yzabc
9651        xyz\N\N
9652     0:
9653     0+ yz
9654        ** Failers
9655     0:
9656     0+ ** Failers
9657        xyz\N
9658    No match
9659    
9660    /^a?b?/+
9661        xyz
9662     0:
9663     0+ xyz
9664        xyzabc
9665     0:
9666     0+ xyzabc
9667        ** Failers
9668     0:
9669     0+ ** Failers
9670        xyzabc\N
9671    No match
9672        xyzabc\N\N
9673    No match
9674        xyz\N\N
9675    No match
9676        xyz\N
9677    No match
9678    
9679    /^(?<name>a|b\g<name>c)/
9680        aaaa
9681     0: a
9682     1: a
9683        bacxxx
9684     0: bac
9685     1: bac
9686        bbaccxxx
9687     0: bbacc
9688     1: bbacc
9689        bbbacccxx
9690     0: bbbaccc
9691     1: bbbaccc
9692    
9693    /^(?<name>a|b\g'name'c)/
9694        aaaa
9695     0: a
9696     1: a
9697        bacxxx
9698     0: bac
9699     1: bac
9700        bbaccxxx
9701     0: bbacc
9702     1: bbacc
9703        bbbacccxx
9704     0: bbbaccc
9705     1: bbbaccc
9706    
9707    /^(a|b\g<1>c)/
9708        aaaa
9709     0: a
9710     1: a
9711        bacxxx
9712     0: bac
9713     1: bac
9714        bbaccxxx
9715     0: bbacc
9716     1: bbacc
9717        bbbacccxx
9718     0: bbbaccc
9719     1: bbbaccc
9720    
9721    /^(a|b\g'1'c)/
9722        aaaa
9723     0: a
9724     1: a
9725        bacxxx
9726     0: bac
9727     1: bac
9728        bbaccxxx
9729     0: bbacc
9730     1: bbacc
9731        bbbacccxx
9732     0: bbbaccc
9733     1: bbbaccc
9734    
9735    /^(a|b\g'-1'c)/
9736        aaaa
9737     0: a
9738     1: a
9739        bacxxx
9740     0: bac
9741     1: bac
9742        bbaccxxx
9743     0: bbacc
9744     1: bbacc
9745        bbbacccxx
9746     0: bbbaccc
9747     1: bbbaccc
9748    
9749    /(^(a|b\g<-1>c))/
9750        aaaa
9751     0: a
9752     1: a
9753     2: a
9754        bacxxx
9755     0: bac
9756     1: bac
9757     2: bac
9758        bbaccxxx
9759     0: bbacc
9760     1: bbacc
9761     2: bbacc
9762        bbbacccxx
9763     0: bbbaccc
9764     1: bbbaccc
9765     2: bbbaccc
9766    
9767    /(?-i:\g<name>)(?i:(?<name>a))/
9768        XaaX
9769     0: aa
9770     1: a
9771        XAAX
9772     0: AA
9773     1: A
9774    
9775    /(?i:\g<name>)(?-i:(?<name>a))/
9776        XaaX
9777     0: aa
9778     1: a
9779        ** Failers
9780    No match
9781        XAAX
9782    No match
9783    
9784    /(?-i:\g<+1>)(?i:(a))/
9785        XaaX
9786     0: aa
9787     1: a
9788        XAAX
9789     0: AA
9790     1: A
9791    
9792    /(?=(?<regex>(?#simplesyntax)\$(?<name>[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\[(?<index>[a-zA-Z0-9_\x{7f}-\x{ff}]+|\$\g<name>)\]|->\g<name>(\(.*?\))?)?|(?#simple syntax withbraces)\$\{(?:\g<name>(?<indices>\[(?:\g<index>|'(?:\\.|[^'\\])*'|"(?:\g<regex>|\\.|[^"\\])*")\])?|\g<complex>|\$\{\g<complex>\})\}|(?#complexsyntax)\{(?<complex>\$(?<segment>\g<name>(\g<indices>*|\(.*?\))?)(?:->\g<segment>)*|\$\g<complex>|\$\{\g<complex>\})\}))\{/
9793    
9794    /(?<n>a|b|c)\g<n>*/
9795       abc
9796     0: abc
9797     1: a
9798       accccbbb
9799     0: accccbbb
9800     1: a
9801    
9802    /^X(?7)(a)(?|(b)|(q)(r)(s))(c)(d)(Y)/
9803        XYabcdY
9804     0: XYabcdY
9805     1: a
9806     2: b
9807     3: <unset>
9808     4: <unset>
9809     5: c
9810     6: d
9811     7: Y
9812    
9813  / End of testinput2 /  / End of testinput2 /

Legend:
Removed from v.269  
changed lines
  Added in v.448

  ViewVC Help
Powered by ViewVC 1.1.5