/[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 41 by nigel, Sat Feb 24 21:39:17 2007 UTC revision 61 by nigel, Sat Feb 24 21:39:58 2007 UTC
# Line 1  Line 1 
1  PCRE version 2.08 31-Aug-1999  PCRE version 3.9 02-Jan-2002
2    
3  /(a)b|/  /(a)b|/
4  Identifying subpattern count = 1  Capturing subpattern count = 1
5  No options  No options
6  No first char  No first char
7  No req char  No need char
8    
9  /abc/  /abc/
10  Identifying subpattern count = 0  Capturing subpattern count = 0
11  No options  No options
12  First char = 'a'  First char = 'a'
13  Req char = 'c'  Need char = 'c'
14      abc      abc
15   0: abc   0: abc
16      defabc      defabc
# Line 25  No match Line 25  No match
25  No match  No match
26    
27  /^abc/  /^abc/
28  Identifying subpattern count = 0  Capturing subpattern count = 0
29  Options: anchored  Options: anchored
30  No first char  No first char
31  Req char = 'c'  Need char = 'c'
32      abc      abc
33   0: abc   0: abc
34      \Aabc      \Aabc
# Line 41  No match Line 41  No match
41  No match  No match
42    
43  /a+bc/  /a+bc/
44  Identifying subpattern count = 0  Capturing subpattern count = 0
45  No options  No options
46  First char = 'a'  First char = 'a'
47  Req char = 'c'  Need char = 'c'
48    
49  /a*bc/  /a*bc/
50  Identifying subpattern count = 0  Capturing subpattern count = 0
51  No options  No options
52  No first char  No first char
53  Req char = 'c'  Need char = 'c'
54    
55  /a{3}bc/  /a{3}bc/
56  Identifying subpattern count = 0  Capturing subpattern count = 0
57  No options  No options
58  First char = 'a'  First char = 'a'
59  Req char = 'c'  Need char = 'c'
60    
61  /(abc|a+z)/  /(abc|a+z)/
62  Identifying subpattern count = 1  Capturing subpattern count = 1
63  No options  No options
64  First char = 'a'  First char = 'a'
65  No req char  No need char
66    
67  /^abc$/  /^abc$/
68  Identifying subpattern count = 0  Capturing subpattern count = 0
69  Options: anchored  Options: anchored
70  No first char  No first char
71  Req char = 'c'  Need char = 'c'
72      abc      abc
73   0: abc   0: abc
74      *** Failers      *** Failers
# Line 94  Failed: missing terminating ] for charac Line 94  Failed: missing terminating ] for charac
94  /[\B]/  /[\B]/
95  Failed: invalid escape sequence in character class at offset 2  Failed: invalid escape sequence in character class at offset 2
96    
 /[a-\w]/  
 Failed: invalid escape sequence in character class at offset 4  
   
97  /[z-a]/  /[z-a]/
98  Failed: range out of order in character class at offset 3  Failed: range out of order in character class at offset 3
99    
# Line 113  Failed: missing ) after comment at offse Line 110  Failed: missing ) after comment at offse
110  Failed: unrecognized character after (? at offset 2  Failed: unrecognized character after (? at offset 2
111    
112  /.*b/  /.*b/
113  Identifying subpattern count = 0  Capturing subpattern count = 0
114  No options  No options
115  First char at start or follows \n  First char at start or follows \n
116  Req char = 'b'  Need char = 'b'
117    
118  /.*?b/  /.*?b/
119  Identifying subpattern count = 0  Capturing subpattern count = 0
120  No options  No options
121  First char at start or follows \n  First char at start or follows \n
122  Req char = 'b'  Need char = 'b'
123    
124  /cat|dog|elephant/  /cat|dog|elephant/
125  Identifying subpattern count = 0  Capturing subpattern count = 0
126  No options  No options
127  No first char  No first char
128  No req char  No need char
129      this sentence eventually mentions a cat      this sentence eventually mentions a cat
130   0: cat   0: cat
131      this sentences rambles on and on for a while and then reaches elephant      this sentences rambles on and on for a while and then reaches elephant
132   0: elephant   0: elephant
133    
134  /cat|dog|elephant/S  /cat|dog|elephant/S
135  Identifying subpattern count = 0  Capturing subpattern count = 0
136  No options  No options
137  No first char  No first char
138  No req char  No need char
139  Starting character set: c d e  Starting character set: c d e
140      this sentence eventually mentions a cat      this sentence eventually mentions a cat
141   0: cat   0: cat
# Line 146  Starting character set: c d e Line 143  Starting character set: c d e
143   0: elephant   0: elephant
144    
145  /cat|dog|elephant/iS  /cat|dog|elephant/iS
146  Identifying subpattern count = 0  Capturing subpattern count = 0
147  Options: caseless  Options: caseless
148  No first char  No first char
149  No req char  No need char
150  Starting character set: C D E c d e  Starting character set: C D E c d e
151      this sentence eventually mentions a CAT cat      this sentence eventually mentions a CAT cat
152   0: CAT   0: CAT
# Line 157  Starting character set: C D E c d e Line 154  Starting character set: C D E c d e
154   0: elephant   0: elephant
155    
156  /a|[bcd]/S  /a|[bcd]/S
157  Identifying subpattern count = 0  Capturing subpattern count = 0
158  No options  No options
159  No first char  No first char
160  No req char  No need char
161  Starting character set: a b c d  Starting character set: a b c d
162    
163  /(a|[^\dZ])/S  /(a|[^\dZ])/S
164  Identifying subpattern count = 1  Capturing subpattern count = 1
165  No options  No options
166  No first char  No first char
167  No req char  No need char
168  Starting character set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  Starting character set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
169    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
170    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
# Line 184  Starting character set: \x00 \x01 \x02 \ Line 181  Starting character set: \x00 \x01 \x02 \
181    \xfc \xfd \xfe \xff    \xfc \xfd \xfe \xff
182    
183  /(a|b)*[\s]/S  /(a|b)*[\s]/S
184  Identifying subpattern count = 1  Capturing subpattern count = 1
185  No options  No options
186  No first char  No first char
187  No req char  No need char
188  Starting character set: \x09 \x0a \x0b \x0c \x0d \x20 a b  Starting character set: \x09 \x0a \x0b \x0c \x0d \x20 a b
189    
190  /(ab\2)/  /(ab\2)/
# Line 197  Failed: back reference to non-existent s Line 194  Failed: back reference to non-existent s
194  Failed: nothing to repeat at offset 4  Failed: nothing to repeat at offset 4
195    
196  /(a)(b)(c)\2/  /(a)(b)(c)\2/
197  Identifying subpattern count = 3  Capturing subpattern count = 3
198    Max back reference = 2
199  No options  No options
200  First char = 'a'  First char = 'a'
201  Req char = 'c'  Need char = 'c'
202      abcb      abcb
203   0: abcb   0: abcb
204   1: a   1: a
# Line 227  Matched, but too many substrings Line 225  Matched, but too many substrings
225   3: c   3: c
226    
227  /(a)bc|(a)(b)\2/  /(a)bc|(a)(b)\2/
228  Identifying subpattern count = 3  Capturing subpattern count = 3
229    Max back reference = 2
230  No options  No options
231  First char = 'a'  First char = 'a'
232  No req char  No need char
233      abc      abc
234   0: abc   0: abc
235   1: a   1: a
# Line 268  Matched, but too many substrings Line 267  Matched, but too many substrings
267   3: b   3: b
268    
269  /abc$/E  /abc$/E
270  Identifying subpattern count = 0  Capturing subpattern count = 0
271  Options: dollar_endonly  Options: dollar_endonly
272  First char = 'a'  First char = 'a'
273  Req char = 'c'  Need char = 'c'
274      abc      abc
275   0: abc   0: abc
276      *** Failers      *** Failers
# Line 285  No match Line 284  No match
284  Failed: back reference to non-existent subpattern at offset 17  Failed: back reference to non-existent subpattern at offset 17
285    
286  /the quick brown fox/  /the quick brown fox/
287  Identifying subpattern count = 0  Capturing subpattern count = 0
288  No options  No options
289  First char = 't'  First char = 't'
290  Req char = 'x'  Need char = 'x'
291      the quick brown fox      the quick brown fox
292   0: the quick brown fox   0: the quick brown fox
293      this is a line with the quick brown fox      this is a line with the quick brown fox
294   0: the quick brown fox   0: the quick brown fox
295    
296  /the quick brown fox/A  /the quick brown fox/A
297  Identifying subpattern count = 0  Capturing subpattern count = 0
298  Options: anchored  Options: anchored
299  No first char  No first char
300  Req char = 'x'  Need char = 'x'
301      the quick brown fox      the quick brown fox
302   0: the quick brown fox   0: the quick brown fox
303      *** Failers      *** Failers
# Line 310  No match Line 309  No match
309  Failed: unrecognized character after (? at offset 4  Failed: unrecognized character after (? at offset 4
310    
311  /^abc|def/  /^abc|def/
312  Identifying subpattern count = 0  Capturing subpattern count = 0
313  No options  No options
314  No first char  No first char
315  No req char  No need char
316      abcdef      abcdef
317   0: abc   0: abc
318      abcdef\B      abcdef\B
319   0: def   0: def
320    
321  /.*((abc)$|(def))/  /.*((abc)$|(def))/
322  Identifying subpattern count = 3  Capturing subpattern count = 3
323  No options  No options
324  First char at start or follows \n  First char at start or follows \n
325  No req char  No need char
326      defabc      defabc
327   0: defabc   0: defabc
328   1: abc   1: abc
# Line 396  Failed: unmatched parentheses at offset Line 395  Failed: unmatched parentheses at offset
395  Failed: missing terminating ] for character class at offset 4  Failed: missing terminating ] for character class at offset 4
396    
397  /[^aeiou ]{3,}/  /[^aeiou ]{3,}/
398  Identifying subpattern count = 0  Capturing subpattern count = 0
399  No options  No options
400  No first char  No first char
401  No req char  No need char
402      co-processors, and for      co-processors, and for
403   0: -pr   0: -pr
404    
405  /<.*>/  /<.*>/
406  Identifying subpattern count = 0  Capturing subpattern count = 0
407  No options  No options
408  First char = '<'  First char = '<'
409  Req char = '>'  Need char = '>'
410      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
411   0: <def>ghi<klm>   0: <def>ghi<klm>
412    
413  /<.*?>/  /<.*?>/
414  Identifying subpattern count = 0  Capturing subpattern count = 0
415  No options  No options
416  First char = '<'  First char = '<'
417  Req char = '>'  Need char = '>'
418      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
419   0: <def>   0: <def>
420    
421  /<.*>/U  /<.*>/U
422  Identifying subpattern count = 0  Capturing subpattern count = 0
423  Options: ungreedy  Options: ungreedy
424  First char = '<'  First char = '<'
425  Req char = '>'  Need char = '>'
426      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
427   0: <def>   0: <def>
428    
429  /<.*>(?U)/  /<.*>(?U)/
430  Identifying subpattern count = 0  Capturing subpattern count = 0
431  Options: ungreedy  Options: ungreedy
432  First char = '<'  First char = '<'
433  Req char = '>'  Need char = '>'
434      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
435   0: <def>   0: <def>
436    
437  /<.*?>/U  /<.*?>/U
438  Identifying subpattern count = 0  Capturing subpattern count = 0
439  Options: ungreedy  Options: ungreedy
440  First char = '<'  First char = '<'
441  Req char = '>'  Need char = '>'
442      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
443   0: <def>ghi<klm>   0: <def>ghi<klm>
444    
445  /={3,}/U  /={3,}/U
446  Identifying subpattern count = 0  Capturing subpattern count = 0
447  Options: ungreedy  Options: ungreedy
448  First char = '='  First char = '='
449  Req char = '='  Need char = '='
450      abc========def      abc========def
451   0: ===   0: ===
452    
453  /(?U)={3,}?/  /(?U)={3,}?/
454  Identifying subpattern count = 0  Capturing subpattern count = 0
455  Options: ungreedy  Options: ungreedy
456  First char = '='  First char = '='
457  Req char = '='  Need char = '='
458      abc========def      abc========def
459   0: ========   0: ========
460    
461  /(?<!bar|cattle)foo/  /(?<!bar|cattle)foo/
462  Identifying subpattern count = 0  Capturing subpattern count = 0
463  No options  No options
464  First char = 'f'  First char = 'f'
465  Req char = 'o'  Need char = 'o'
466      foo      foo
467   0: foo   0: foo
468      catfoo      catfoo
# Line 485  Failed: lookbehind assertion is not fixe Line 484  Failed: lookbehind assertion is not fixe
484  Failed: lookbehind assertion is not fixed length at offset 12  Failed: lookbehind assertion is not fixed length at offset 12
485    
486  /(?i)abc/  /(?i)abc/
487  Identifying subpattern count = 0  Capturing subpattern count = 0
488  Options: caseless  Options: caseless
489  First char = 'a'  First char = 'a'
490  Req char = 'c'  Need char = 'c'
491    
492  /(a|(?m)a)/  /(a|(?m)a)/
493  Identifying subpattern count = 1  Capturing subpattern count = 1
494  No options  No options
495  First char = 'a'  First char = 'a'
496  No req char  No need char
497    
498  /(?i)^1234/  /(?i)^1234/
499  Identifying subpattern count = 0  Capturing subpattern count = 0
500  Options: anchored caseless  Options: anchored caseless
501  No first char  No first char
502  Req char = '4'  Need char = '4'
503    
504  /(^b|(?i)^d)/  /(^b|(?i)^d)/
505  Identifying subpattern count = 1  Capturing subpattern count = 1
506  Options: anchored  Options: anchored
507  Case state changes  Case state changes
508  No first char  No first char
509  No req char  No need char
510    
511  /(?s).*/  /(?s).*/
512  Identifying subpattern count = 0  Capturing subpattern count = 0
513  Options: anchored dotall  Options: anchored dotall
514  No first char  No first char
515  No req char  No need char
516    
517  /[abcd]/S  /[abcd]/S
518  Identifying subpattern count = 0  Capturing subpattern count = 0
519  No options  No options
520  No first char  No first char
521  No req char  No need char
522  Starting character set: a b c d  Starting character set: a b c d
523    
524  /(?i)[abcd]/S  /(?i)[abcd]/S
525  Identifying subpattern count = 0  Capturing subpattern count = 0
526  Options: caseless  Options: caseless
527  No first char  No first char
528  No req char  No need char
529  Starting character set: A B C D a b c d  Starting character set: A B C D a b c d
530    
531  /(?m)[xy]|(b|c)/S  /(?m)[xy]|(b|c)/S
532  Identifying subpattern count = 1  Capturing subpattern count = 1
533  Options: multiline  Options: multiline
534  No first char  No first char
535  No req char  No need char
536  Starting character set: b c x y  Starting character set: b c x y
537    
538  /(^a|^b)/m  /(^a|^b)/m
539  Identifying subpattern count = 1  Capturing subpattern count = 1
540  Options: multiline  Options: multiline
541  First char at start or follows \n  First char at start or follows \n
542  No req char  No need char
543    
544  /(?i)(^a|^b)/m  /(?i)(^a|^b)/m
545  Identifying subpattern count = 1  Capturing subpattern count = 1
546  Options: caseless multiline  Options: caseless multiline
547  First char at start or follows \n  First char at start or follows \n
548  No req char  No need char
549    
550  /(a)(?(1)a|b|c)/  /(a)(?(1)a|b|c)/
551  Failed: conditional group contains more than two branches at offset 13  Failed: conditional group contains more than two branches at offset 13
# Line 567  Failed: assertion expected after (?( at Line 566  Failed: assertion expected after (?( at
566  Failed: unrecognized character after (?< at offset 2  Failed: unrecognized character after (?< at offset 2
567    
568  /((?s)blah)\s+\1/  /((?s)blah)\s+\1/
569  Identifying subpattern count = 1  Capturing subpattern count = 1
570    Max back reference = 1
571  No options  No options
572  First char = 'b'  First char = 'b'
573  Req char = 'h'  Need char = 'h'
574    
575  /((?i)blah)\s+\1/  /((?i)blah)\s+\1/
576  Identifying subpattern count = 1  Capturing subpattern count = 1
577    Max back reference = 1
578  No options  No options
579  Case state changes  Case state changes
580  No first char  No first char
581  Req char = 'h'  Need char = 'h'
582    
583  /((?i)b)/DS  /((?i)b)/DS
584  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 590  Req char = 'h' Line 591  Req char = 'h'
591   16  16 Ket   16  16 Ket
592   19     End   19     End
593  ------------------------------------------------------------------  ------------------------------------------------------------------
594  Identifying subpattern count = 1  Capturing subpattern count = 1
595  No options  No options
596  Case state changes  Case state changes
597  No first char  No first char
598  Req char = 'b'  Need char = 'b'
599  Starting character set: B b  Starting character set: B b
600    
601  /(a*b|(?i:c*(?-i)d))/S  /(a*b|(?i:c*(?-i)d))/S
602  Identifying subpattern count = 1  Capturing subpattern count = 1
603  No options  No options
604  Case state changes  Case state changes
605  No first char  No first char
606  No req char  No need char
607  Starting character set: C a b c d  Starting character set: C a b c d
608    
609  /a$/  /a$/
610  Identifying subpattern count = 0  Capturing subpattern count = 0
611  No options  No options
612  First char = 'a'  First char = 'a'
613  No req char  No need char
614      a      a
615   0: a   0: a
616      a\n      a\n
# Line 622  No match Line 623  No match
623  No match  No match
624    
625  /a$/m  /a$/m
626  Identifying subpattern count = 0  Capturing subpattern count = 0
627  Options: multiline  Options: multiline
628  First char = 'a'  First char = 'a'
629  No req char  No need char
630      a      a
631   0: a   0: a
632      a\n      a\n
# Line 638  No match Line 639  No match
639  No match  No match
640    
641  /\Aabc/m  /\Aabc/m
642  Identifying subpattern count = 0  Capturing subpattern count = 0
643  Options: anchored multiline  Options: anchored multiline
644  No first char  No first char
645  Req char = 'c'  Need char = 'c'
646    
647  /^abc/m  /^abc/m
648  Identifying subpattern count = 0  Capturing subpattern count = 0
649  Options: multiline  Options: multiline
650  First char at start or follows \n  First char at start or follows \n
651  Req char = 'c'  Need char = 'c'
652    
653  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/
654  Identifying subpattern count = 5  Capturing subpattern count = 5
655  Options: anchored  Options: anchored
656  No first char  No first char
657  Req char = 'a'  Need char = 'a'
658    aaaaabbbbbcccccdef    aaaaabbbbbcccccdef
659   0: aaaaabbbbbcccccdef   0: aaaaabbbbbcccccdef
660   1: aaaaabbbbbcccccdef   1: aaaaabbbbbcccccdef
# Line 663  Req char = 'a' Line 664  Req char = 'a'
664   5: def   5: def
665    
666  /(?<=foo)[ab]/S  /(?<=foo)[ab]/S
667  Identifying subpattern count = 0  Capturing subpattern count = 0
668  No options  No options
669  No first char  No first char
670  No req char  No need char
671  Starting character set: a b  Starting character set: a b
672    
673  /(?<!foo)(alpha|omega)/S  /(?<!foo)(alpha|omega)/S
674  Identifying subpattern count = 1  Capturing subpattern count = 1
675  No options  No options
676  No first char  No first char
677  Req char = 'a'  Need char = 'a'
678  Starting character set: a o  Starting character set: a o
679    
680  /(?!alphabet)[ab]/S  /(?!alphabet)[ab]/S
681  Identifying subpattern count = 0  Capturing subpattern count = 0
682  No options  No options
683  No first char  No first char
684  No req char  No need char
685  Starting character set: a b  Starting character set: a b
686    
687  /(?<=foo\n)^bar/m  /(?<=foo\n)^bar/m
688  Identifying subpattern count = 0  Capturing subpattern count = 0
689  Options: multiline  Options: multiline
690  First char at start or follows \n  First char at start or follows \n
691  Req char = 'r'  Need char = 'r'
692    
693  /(?>^abc)/m  /(?>^abc)/m
694  Identifying subpattern count = 0  Capturing subpattern count = 0
695  Options: multiline  Options: multiline
696  First char at start or follows \n  First char at start or follows \n
697  Req char = 'c'  Need char = 'c'
698      abc      abc
699   0: abc   0: abc
700      def\nabc      def\nabc
# Line 713  Failed: lookbehind assertion is not fixe Line 714  Failed: lookbehind assertion is not fixe
714  Failed: lookbehind assertion is not fixed length at offset 13  Failed: lookbehind assertion is not fixed length at offset 13
715    
716  /The next three are in testinput2 because they have variable length branches/  /The next three are in testinput2 because they have variable length branches/
717  Identifying subpattern count = 0  Capturing subpattern count = 0
718  No options  No options
719  First char = 'T'  First char = 'T'
720  Req char = 's'  Need char = 's'
721    
722  /(?<=bullock|donkey)-cart/  /(?<=bullock|donkey)-cart/
723  Identifying subpattern count = 0  Capturing subpattern count = 0
724  No options  No options
725  First char = '-'  First char = '-'
726  Req char = 't'  Need char = 't'
727      the bullock-cart      the bullock-cart
728   0: -cart   0: -cart
729      a donkey-cart race      a donkey-cart race
# Line 735  No match Line 736  No match
736  No match  No match
737    
738  /(?<=ab(?i)x|y|z)/  /(?<=ab(?i)x|y|z)/
739  Identifying subpattern count = 0  Capturing subpattern count = 0
740  No options  No options
741  Case state changes  Case state changes
742  No first char  No first char
743  No req char  No need char
744    
745  /(?>.*)(?<=(abcd)|(xyz))/  /(?>.*)(?<=(abcd)|(xyz))/
746  Identifying subpattern count = 2  Capturing subpattern count = 2
747  No options  No options
748  First char at start or follows \n  First char at start or follows \n
749  No req char  No need char
750      alphabetabcd      alphabetabcd
751   0: alphabetabcd   0: alphabetabcd
752   1: abcd   1: abcd
# Line 755  No req char Line 756  No req char
756   2: xyz   2: xyz
757    
758  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/
759  Identifying subpattern count = 0  Capturing subpattern count = 0
760  No options  No options
761  Case state changes  Case state changes
762  First char = 'Z'  First char = 'Z'
763  Req char = 'Z'  Need char = 'Z'
764      abxyZZ      abxyZZ
765   0: ZZ   0: ZZ
766      abXyZZ      abXyZZ
# Line 784  No match Line 785  No match
785  No match  No match
786    
787  /(?<!(foo)a)bar/  /(?<!(foo)a)bar/
788  Identifying subpattern count = 1  Capturing subpattern count = 1
789  No options  No options
790  First char = 'b'  First char = 'b'
791  Req char = 'r'  Need char = 'r'
792      bar      bar
793   0: bar   0: bar
794      foobbar      foobbar
# Line 798  No match Line 799  No match
799  No match  No match
800    
801  /This one is here because Perl 5.005_02 doesn't fail it/  /This one is here because Perl 5.005_02 doesn't fail it/
802  Identifying subpattern count = 0  Capturing subpattern count = 0
803  No options  No options
804  First char = 'T'  First char = 'T'
805  Req char = 't'  Need char = 't'
806    
807  /^(a)?(?(1)a|b)+$/  /^(a)?(?(1)a|b)+$/
808  Identifying subpattern count = 1  Capturing subpattern count = 1
809  Options: anchored  Options: anchored
810  No first char  No first char
811  No req char  No need char
812      *** Failers      *** Failers
813  No match  No match
814      a      a
815  No match  No match
816    
817  /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/  /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/
818  Identifying subpattern count = 0  Capturing subpattern count = 0
819  No options  No options
820  First char = 'T'  First char = 'T'
821  Req char = 'g'  Need char = 'g'
822    
823  /^(a\1?){4}$/  /^(a\1?){4}$/
824  Identifying subpattern count = 1  Capturing subpattern count = 1
825    Max back reference = 1
826  Options: anchored  Options: anchored
827  No first char  No first char
828  Req char = 'a'  Need char = 'a'
829      aaaaaa      aaaaaa
830   0: aaaaaa   0: aaaaaa
831   1: aa   1: aa
832    
833  /These are syntax tests from Perl 5.005/  /These are syntax tests from Perl 5.005/
834  Identifying subpattern count = 0  Capturing subpattern count = 0
835  No options  No options
836  First char = 'T'  First char = 'T'
837  Req char = '5'  Need char = '5'
838    
839  /a[b-a]/  /a[b-a]/
840  Failed: range out of order in character class at offset 4  Failed: range out of order in character class at offset 4
# Line 943  Failed: POSIX code 9: bad escape sequenc Line 945  Failed: POSIX code 9: bad escape sequenc
945  Failed: \ at end of pattern at offset 4  Failed: \ at end of pattern at offset 4
946    
947  /(a)bc(d)/  /(a)bc(d)/
948  Identifying subpattern count = 2  Capturing subpattern count = 2
949  No options  No options
950  First char = 'a'  First char = 'a'
951  Req char = 'd'  Need char = 'd'
952      abcd      abcd
953   0: abcd   0: abcd
954   1: a   1: a
# Line 963  Req char = 'd' Line 965  Req char = 'd'
965  copy substring 5 failed -7  copy substring 5 failed -7
966    
967  /(.{20})/  /(.{20})/
968  Identifying subpattern count = 1  Capturing subpattern count = 1
969  No options  No options
970  No first char  No first char
971  No req char  No need char
972      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
973   0: abcdefghijklmnopqrst   0: abcdefghijklmnopqrst
974   1: abcdefghijklmnopqrst   1: abcdefghijklmnopqrst
# Line 980  copy substring 1 failed -6 Line 982  copy substring 1 failed -6
982   1G abcdefghijklmnopqrst (20)   1G abcdefghijklmnopqrst (20)
983    
984  /(.{15})/  /(.{15})/
985  Identifying subpattern count = 1  Capturing subpattern count = 1
986  No options  No options
987  No first char  No first char
988  No req char  No need char
989      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
990   0: abcdefghijklmno   0: abcdefghijklmno
991   1: abcdefghijklmno   1: abcdefghijklmno
# Line 994  No req char Line 996  No req char
996   1G abcdefghijklmno (15)   1G abcdefghijklmno (15)
997    
998  /(.{16})/  /(.{16})/
999  Identifying subpattern count = 1  Capturing subpattern count = 1
1000  No options  No options
1001  No first char  No first char
1002  No req char  No need char
1003      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
1004   0: abcdefghijklmnop   0: abcdefghijklmnop
1005   1: abcdefghijklmnop   1: abcdefghijklmnop
# Line 1010  copy substring 1 failed -6 Line 1012  copy substring 1 failed -6
1012   1L abcdefghijklmnop   1L abcdefghijklmnop
1013    
1014  /^(a|(bc))de(f)/  /^(a|(bc))de(f)/
1015  Identifying subpattern count = 3  Capturing subpattern count = 3
1016  Options: anchored  Options: anchored
1017  No first char  No first char
1018  Req char = 'f'  Need char = 'f'
1019      adef\G1\G2\G3\G4\L      adef\G1\G2\G3\G4\L
1020   0: adef   0: adef
1021   1: a   1: a
# Line 1048  get substring 4 failed -7 Line 1050  get substring 4 failed -7
1050   0C adef (4)   0C adef (4)
1051    
1052  /^abc\00def/  /^abc\00def/
1053  Identifying subpattern count = 0  Capturing subpattern count = 0
1054  Options: anchored  Options: anchored
1055  No first char  No first char
1056  Req char = 'f'  Need char = 'f'
1057      abc\00def\L\C0      abc\00def\L\C0
1058   0: abc\x00def   0: abc\x00def
1059   0C abc (7)   0C abc (7)
# Line 1061  Req char = 'f' Line 1063  Req char = 'f'
1063  )((?:[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]+
1064  )?)?)?)?)?)?)?)?)?otherword/M  )?)?)?)?)?)?)?)?)?otherword/M
1065  Memory allocation (code space): 428  Memory allocation (code space): 428
1066  Identifying subpattern count = 8  Capturing subpattern count = 8
1067  No options  No options
1068  First char = 'w'  First char = 'w'
1069  Req char = 'd'  Need char = 'd'
1070    
1071  /.*X/D  /.*X/D
1072  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1074  Req char = 'd' Line 1076  Req char = 'd'
1076    8   8 Ket    8   8 Ket
1077   11     End   11     End
1078  ------------------------------------------------------------------  ------------------------------------------------------------------
1079  Identifying subpattern count = 0  Capturing subpattern count = 0
1080  No options  No options
1081  First char at start or follows \n  First char at start or follows \n
1082  Req char = 'X'  Need char = 'X'
1083    
1084  /.*X/Ds  /.*X/Ds
1085  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1087  Req char = 'X' Line 1089  Req char = 'X'
1089    8   8 Ket    8   8 Ket
1090   11     End   11     End
1091  ------------------------------------------------------------------  ------------------------------------------------------------------
1092  Identifying subpattern count = 0  Capturing subpattern count = 0
1093  Options: anchored dotall  Options: anchored dotall
1094  No first char  No first char
1095  Req char = 'X'  Need char = 'X'
1096    
1097  /(.*X|^B)/D  /(.*X|^B)/D
1098  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1105  Req char = 'X' Line 1107  Req char = 'X'
1107   21  21 Ket   21  21 Ket
1108   24     End   24     End
1109  ------------------------------------------------------------------  ------------------------------------------------------------------
1110  Identifying subpattern count = 1  Capturing subpattern count = 1
1111  No options  No options
1112  First char at start or follows \n  First char at start or follows \n
1113  No req char  No need char
1114    
1115  /(.*X|^B)/Ds  /(.*X|^B)/Ds
1116  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1123  No req char Line 1125  No req char
1125   21  21 Ket   21  21 Ket
1126   24     End   24     End
1127  ------------------------------------------------------------------  ------------------------------------------------------------------
1128  Identifying subpattern count = 1  Capturing subpattern count = 1
1129  Options: anchored dotall  Options: anchored dotall
1130  No first char  No first char
1131  No req char  No need char
1132    
1133  /(?s)(.*X|^B)/D  /(?s)(.*X|^B)/D
1134  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1141  No req char Line 1143  No req char
1143   21  21 Ket   21  21 Ket
1144   24     End   24     End
1145  ------------------------------------------------------------------  ------------------------------------------------------------------
1146  Identifying subpattern count = 1  Capturing subpattern count = 1
1147  Options: anchored dotall  Options: anchored dotall
1148  No first char  No first char
1149  No req char  No need char
1150    
1151  /(?s:.*X|^B)/D  /(?s:.*X|^B)/D
1152  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1162  No req char Line 1164  No req char
1164   27  27 Ket   27  27 Ket
1165   30     End   30     End
1166  ------------------------------------------------------------------  ------------------------------------------------------------------
1167  Identifying subpattern count = 0  Capturing subpattern count = 0
1168  No options  No options
1169  First char at start or follows \n  First char at start or follows \n
1170  No req char  No need char
1171    
1172  /\Biss\B/+  /\Biss\B/+
1173  Identifying subpattern count = 0  Capturing subpattern count = 0
1174  No options  No options
1175  First char = 'i'  First char = 'i'
1176  Req char = 's'  Need char = 's'
1177      Mississippi      Mississippi
1178   0: iss   0: iss
1179   0+ issippi   0+ issippi
# Line 1182  Req char = 's' Line 1184  Req char = 's'
1184   0+ issippi   0+ issippi
1185    
1186  /iss/G+  /iss/G+
1187  Identifying subpattern count = 0  Capturing subpattern count = 0
1188  No options  No options
1189  First char = 'i'  First char = 'i'
1190  Req char = 's'  Need char = 's'
1191      Mississippi      Mississippi
1192   0: iss   0: iss
1193   0+ issippi   0+ issippi
# Line 1193  Req char = 's' Line 1195  Req char = 's'
1195   0+ ippi   0+ ippi
1196    
1197  /\Biss\B/G+  /\Biss\B/G+
1198  Identifying subpattern count = 0  Capturing subpattern count = 0
1199  No options  No options
1200  First char = 'i'  First char = 'i'
1201  Req char = 's'  Need char = 's'
1202      Mississippi      Mississippi
1203   0: iss   0: iss
1204   0+ issippi   0+ issippi
1205    
1206  /\Biss\B/g+  /\Biss\B/g+
1207  Identifying subpattern count = 0  Capturing subpattern count = 0
1208  No options  No options
1209  First char = 'i'  First char = 'i'
1210  Req char = 's'  Need char = 's'
1211      Mississippi      Mississippi
1212   0: iss   0: iss
1213   0+ issippi   0+ issippi
# Line 1217  No match Line 1219  No match
1219  No match  No match
1220    
1221  /(?<=[Ms])iss/g+  /(?<=[Ms])iss/g+
1222  Identifying subpattern count = 0  Capturing subpattern count = 0
1223  No options  No options
1224  First char = 'i'  First char = 'i'
1225  Req char = 's'  Need char = 's'
1226      Mississippi      Mississippi
1227   0: iss   0: iss
1228   0+ issippi   0+ issippi
# Line 1228  Req char = 's' Line 1230  Req char = 's'
1230   0+ ippi   0+ ippi
1231    
1232  /(?<=[Ms])iss/G+  /(?<=[Ms])iss/G+
1233  Identifying subpattern count = 0  Capturing subpattern count = 0
1234  No options  No options
1235  First char = 'i'  First char = 'i'
1236  Req char = 's'  Need char = 's'
1237      Mississippi      Mississippi
1238   0: iss   0: iss
1239   0+ issippi   0+ issippi
1240    
1241  /^iss/g+  /^iss/g+
1242  Identifying subpattern count = 0  Capturing subpattern count = 0
1243  Options: anchored  Options: anchored
1244  No first char  No first char
1245  Req char = 's'  Need char = 's'
1246      ississippi      ississippi
1247   0: iss   0: iss
1248   0+ issippi   0+ issippi
1249    
1250  /.*iss/g+  /.*iss/g+
1251  Identifying subpattern count = 0  Capturing subpattern count = 0
1252  No options  No options
1253  First char at start or follows \n  First char at start or follows \n
1254  Req char = 's'  Need char = 's'
1255      abciss\nxyzisspqr      abciss\nxyzisspqr
1256   0: abciss   0: abciss
1257   0+ \x0axyzisspqr   0+ \x0axyzisspqr
# Line 1257  Req char = 's' Line 1259  Req char = 's'
1259   0+ pqr   0+ pqr
1260    
1261  /.i./+g  /.i./+g
1262  Identifying subpattern count = 0  Capturing subpattern count = 0
1263  No options  No options
1264  No first char  No first char
1265  Req char = 'i'  Need char = 'i'
1266      Mississippi      Mississippi
1267   0: Mis   0: Mis
1268   0+ sissippi   0+ sissippi
# Line 1287  Req char = 'i' Line 1289  Req char = 'i'
1289   0+ souri river   0+ souri river
1290    
1291  /^.is/+g  /^.is/+g
1292  Identifying subpattern count = 0  Capturing subpattern count = 0
1293  Options: anchored  Options: anchored
1294  No first char  No first char
1295  Req char = 's'  Need char = 's'
1296      Mississippi      Mississippi
1297   0: Mis   0: Mis
1298   0+ sissippi   0+ sissippi
1299    
1300  /^ab\n/g+  /^ab\n/g+
1301  Identifying subpattern count = 0  Capturing subpattern count = 0
1302  Options: anchored  Options: anchored
1303  No first char  No first char
1304  Req char = 10  Need char = 10
1305      ab\nab\ncd      ab\nab\ncd
1306   0: ab\x0a   0: ab\x0a
1307   0+ ab\x0acd   0+ ab\x0acd
1308    
1309  /^ab\n/mg+  /^ab\n/mg+
1310  Identifying subpattern count = 0  Capturing subpattern count = 0
1311  Options: multiline  Options: multiline
1312  First char at start or follows \n  First char at start or follows \n
1313  Req char = 10  Need char = 10
1314      ab\nab\ncd      ab\nab\ncd
1315   0: ab\x0a   0: ab\x0a
1316   0+ ab\x0acd   0+ ab\x0acd
# Line 1316  Req char = 10 Line 1318  Req char = 10
1318   0+ cd   0+ cd
1319    
1320  /abc/  /abc/
1321  Identifying subpattern count = 0  Capturing subpattern count = 0
1322  No options  No options
1323  First char = 'a'  First char = 'a'
1324  Req char = 'c'  Need char = 'c'
1325    
1326  /abc|bac/  /abc|bac/
1327  Identifying subpattern count = 0  Capturing subpattern count = 0
1328  No options  No options
1329  No first char  No first char
1330  Req char = 'c'  Need char = 'c'
1331    
1332  /(abc|bac)/  /(abc|bac)/
1333  Identifying subpattern count = 1  Capturing subpattern count = 1
1334  No options  No options
1335  No first char  No first char
1336  Req char = 'c'  Need char = 'c'
1337    
1338  /(abc|(c|dc))/  /(abc|(c|dc))/
1339  Identifying subpattern count = 2  Capturing subpattern count = 2
1340  No options  No options
1341  No first char  No first char
1342  Req char = 'c'  Need char = 'c'
1343    
1344  /(abc|(d|de)c)/  /(abc|(d|de)c)/
1345  Identifying subpattern count = 2  Capturing subpattern count = 2
1346  No options  No options
1347  No first char  No first char
1348  Req char = 'c'  Need char = 'c'
1349    
1350  /a*/  /a*/
1351  Identifying subpattern count = 0  Capturing subpattern count = 0
1352  No options  No options
1353  No first char  No first char
1354  No req char  No need char
1355    
1356  /a+/  /a+/
1357  Identifying subpattern count = 0  Capturing subpattern count = 0
1358  No options  No options
1359  First char = 'a'  First char = 'a'
1360  No req char  No need char
1361    
1362  /(baa|a+)/  /(baa|a+)/
1363  Identifying subpattern count = 1  Capturing subpattern count = 1
1364  No options  No options
1365  No first char  No first char
1366  Req char = 'a'  Need char = 'a'
1367    
1368  /a{0,3}/  /a{0,3}/
1369  Identifying subpattern count = 0  Capturing subpattern count = 0
1370  No options  No options
1371  No first char  No first char
1372  No req char  No need char
1373    
1374  /baa{3,}/  /baa{3,}/
1375  Identifying subpattern count = 0  Capturing subpattern count = 0
1376  No options  No options
1377  First char = 'b'  First char = 'b'
1378  Req char = 'a'  Need char = 'a'
1379    
1380  /"([^\\"]+|\\.)*"/  /"([^\\"]+|\\.)*"/
1381  Identifying subpattern count = 1  Capturing subpattern count = 1
1382  No options  No options
1383  First char = '"'  First char = '"'
1384  Req char = '"'  Need char = '"'
1385    
1386  /(abc|ab[cd])/  /(abc|ab[cd])/
1387  Identifying subpattern count = 1  Capturing subpattern count = 1
1388  No options  No options
1389  First char = 'a'  First char = 'a'
1390  No req char  No need char
1391    
1392  /(a|.)/  /(a|.)/
1393  Identifying subpattern count = 1  Capturing subpattern count = 1
1394  No options  No options
1395  No first char  No first char
1396  No req char  No need char
1397    
1398  /a|ba|\w/  /a|ba|\w/
1399  Identifying subpattern count = 0  Capturing subpattern count = 0
1400  No options  No options
1401  No first char  No first char
1402  No req char  No need char
1403    
1404  /abc(?=pqr)/  /abc(?=pqr)/
1405  Identifying subpattern count = 0  Capturing subpattern count = 0
1406  No options  No options
1407  First char = 'a'  First char = 'a'
1408  Req char = 'r'  Need char = 'r'
1409    
1410  /...(?<=abc)/  /...(?<=abc)/
1411  Identifying subpattern count = 0  Capturing subpattern count = 0
1412  No options  No options
1413  No first char  No first char
1414  No req char  No need char
1415    
1416  /abc(?!pqr)/  /abc(?!pqr)/
1417  Identifying subpattern count = 0  Capturing subpattern count = 0
1418  No options  No options
1419  First char = 'a'  First char = 'a'
1420  Req char = 'c'  Need char = 'c'
1421    
1422  /ab./  /ab./
1423  Identifying subpattern count = 0  Capturing subpattern count = 0
1424  No options  No options
1425  First char = 'a'  First char = 'a'
1426  Req char = 'b'  Need char = 'b'
1427    
1428  /ab[xyz]/  /ab[xyz]/
1429  Identifying subpattern count = 0  Capturing subpattern count = 0
1430  No options  No options
1431  First char = 'a'  First char = 'a'
1432  Req char = 'b'  Need char = 'b'
1433    
1434  /abc*/  /abc*/
1435  Identifying subpattern count = 0  Capturing subpattern count = 0
1436  No options  No options
1437  First char = 'a'  First char = 'a'
1438  Req char = 'b'  Need char = 'b'
1439    
1440  /ab.c*/  /ab.c*/
1441  Identifying subpattern count = 0  Capturing subpattern count = 0
1442  No options  No options
1443  First char = 'a'  First char = 'a'
1444  Req char = 'b'  Need char = 'b'
1445    
1446  /a.c*/  /a.c*/
1447  Identifying subpattern count = 0  Capturing subpattern count = 0
1448  No options  No options
1449  First char = 'a'  First char = 'a'
1450  No req char  No need char
1451    
1452  /.c*/  /.c*/
1453  Identifying subpattern count = 0  Capturing subpattern count = 0
1454  No options  No options
1455  No first char  No first char
1456  No req char  No need char
1457    
1458  /ac*/  /ac*/
1459  Identifying subpattern count = 0  Capturing subpattern count = 0
1460  No options  No options
1461  First char = 'a'  First char = 'a'
1462  No req char  No need char
1463    
1464  /(a.c*|b.c*)/  /(a.c*|b.c*)/
1465  Identifying subpattern count = 1  Capturing subpattern count = 1
1466  No options  No options
1467  No first char  No first char
1468  No req char  No need char
1469    
1470  /a.c*|aba/  /a.c*|aba/
1471  Identifying subpattern count = 0  Capturing subpattern count = 0
1472  No options  No options
1473  First char = 'a'  First char = 'a'
1474  No req char  No need char
1475    
1476  /.+a/  /.+a/
1477  Identifying subpattern count = 0  Capturing subpattern count = 0
1478  No options  No options
1479  No first char  No first char
1480  Req char = 'a'  Need char = 'a'
1481    
1482  /(?=abcda)a.*/  /(?=abcda)a.*/
1483  Identifying subpattern count = 0  Capturing subpattern count = 0
1484  No options  No options
1485  First char = 'a'  First char = 'a'
1486  No req char  No need char
1487    
1488  /(?=a)a.*/  /(?=a)a.*/
1489  Identifying subpattern count = 0  Capturing subpattern count = 0
1490  No options  No options
1491  First char = 'a'  First char = 'a'
1492  No req char  No need char
1493    
1494  /a(b)*/  /a(b)*/
1495  Identifying subpattern count = 1  Capturing subpattern count = 1
1496  No options  No options
1497  First char = 'a'  First char = 'a'
1498  No req char  No need char
1499    
1500  /a\d*/  /a\d*/
1501  Identifying subpattern count = 0  Capturing subpattern count = 0
1502  No options  No options
1503  First char = 'a'  First char = 'a'
1504  No req char  No need char
1505    
1506  /ab\d*/  /ab\d*/
1507  Identifying subpattern count = 0  Capturing subpattern count = 0
1508  No options  No options
1509  First char = 'a'  First char = 'a'
1510  Req char = 'b'  Need char = 'b'
1511    
1512  /a(\d)*/  /a(\d)*/
1513  Identifying subpattern count = 1  Capturing subpattern count = 1
1514  No options  No options
1515  First char = 'a'  First char = 'a'
1516  No req char  No need char
1517    
1518  /abcde{0,0}/  /abcde{0,0}/
1519  Identifying subpattern count = 0  Capturing subpattern count = 0
1520  No options  No options
1521  First char = 'a'  First char = 'a'
1522  Req char = 'd'  Need char = 'd'
1523    
1524  /ab\d+/  /ab\d+/
1525  Identifying subpattern count = 0  Capturing subpattern count = 0
1526  No options  No options
1527  First char = 'a'  First char = 'a'
1528  Req char = 'b'  Need char = 'b'
1529    
1530  /a(?(1)b)/  /a(?(1)b)/
1531  Identifying subpattern count = 0  Capturing subpattern count = 0
1532  No options  No options
1533  First char = 'a'  First char = 'a'
1534  No req char  No need char
1535    
1536  /a(?(1)bag|big)/  /a(?(1)bag|big)/
1537  Identifying subpattern count = 0  Capturing subpattern count = 0
1538  No options  No options
1539  First char = 'a'  First char = 'a'
1540  Req char = 'g'  Need char = 'g'
1541    
1542  /a(?(1)bag|big)*/  /a(?(1)bag|big)*/
1543  Identifying subpattern count = 0  Capturing subpattern count = 0
1544  No options  No options
1545  First char = 'a'  First char = 'a'
1546  No req char  No need char
1547    
1548  /a(?(1)bag|big)+/  /a(?(1)bag|big)+/
1549  Identifying subpattern count = 0  Capturing subpattern count = 0
1550  No options  No options
1551  First char = 'a'  First char = 'a'
1552  Req char = 'g'  Need char = 'g'
1553    
1554  /a(?(1)b..|b..)/  /a(?(1)b..|b..)/
1555  Identifying subpattern count = 0  Capturing subpattern count = 0
1556  No options  No options
1557  First char = 'a'  First char = 'a'
1558  Req char = 'b'  Need char = 'b'
1559    
1560  /ab\d{0}e/  /ab\d{0}e/
1561  Identifying subpattern count = 0  Capturing subpattern count = 0
1562  No options  No options
1563  First char = 'a'  First char = 'a'
1564  Req char = 'e'  Need char = 'e'
1565    
1566  /a?b?/  /a?b?/
1567  Identifying subpattern count = 0  Capturing subpattern count = 0
1568  No options  No options
1569  No first char  No first char
1570  No req char  No need char
1571      a      a
1572   0: a   0: a
1573      b      b
# Line 1580  No req char Line 1582  No req char
1582  No match  No match
1583    
1584  /|-/  /|-/
1585  Identifying subpattern count = 0  Capturing subpattern count = 0
1586  No options  No options
1587  No first char  No first char
1588  No req char  No need char
1589      abcd      abcd
1590   0:   0:
1591      -abc      -abc
# Line 1621  No match Line 1623  No match
1623   1: bbbb   1: bbbb
1624   2: z   2: z
1625   3: z   3: z
1626    
1627    /^.?abcd/S
1628    Capturing subpattern count = 0
1629    Options: anchored
1630    No first char
1631    Need char = 'd'
1632    Study returned NULL
1633    
1634    /\(             # ( at start
1635      (?:           # Non-capturing bracket
1636      (?>[^()]+)    # Either a sequence of non-brackets (no backtracking)
1637      |             # Or
1638      (?R)          # Recurse - i.e. nested bracketed string
1639      )*            # Zero or more contents
1640      \)            # Closing )
1641      /x
1642    Capturing subpattern count = 0
1643    Options: extended
1644    First char = '('
1645    Need char = ')'
1646        (abcd)
1647     0: (abcd)
1648        (abcd)xyz
1649     0: (abcd)
1650        xyz(abcd)
1651     0: (abcd)
1652        (ab(xy)cd)pqr
1653     0: (ab(xy)cd)
1654        (ab(xycd)pqr
1655     0: (xycd)
1656        () abc ()
1657     0: ()
1658        12(abcde(fsh)xyz(foo(bar))lmno)89
1659     0: (abcde(fsh)xyz(foo(bar))lmno)
1660        *** Failers
1661    No match
1662        abcd
1663    No match
1664        abcd)
1665    No match
1666        (abcd
1667    No match
1668    
1669    /\(  ( (?>[^()]+) | (?R) )* \) /xg
1670    Capturing subpattern count = 1
1671    Options: extended
1672    First char = '('
1673    Need char = ')'
1674        (ab(xy)cd)pqr
1675     0: (ab(xy)cd)
1676     1: cd
1677        1(abcd)(x(y)z)pqr
1678     0: (abcd)
1679     1: abcd
1680     0: (x(y)z)
1681     1: z
1682    
1683    /\(  (?: (?>[^()]+) | (?R) ) \) /x
1684    Capturing subpattern count = 0
1685    Options: extended
1686    First char = '('
1687    Need char = ')'
1688        (abcd)
1689     0: (abcd)
1690        (ab(xy)cd)
1691     0: (xy)
1692        (a(b(c)d)e)
1693     0: (c)
1694        ((ab))
1695     0: ((ab))
1696        *** Failers
1697    No match
1698        ()
1699    No match
1700    
1701    /\(  (?: (?>[^()]+) | (?R) )? \) /x
1702    Capturing subpattern count = 0
1703    Options: extended
1704    First char = '('
1705    Need char = ')'
1706        ()
1707     0: ()
1708        12(abcde(fsh)xyz(foo(bar))lmno)89
1709     0: (fsh)
1710    
1711    /\(  ( (?>[^()]+) | (?R) )* \) /x
1712    Capturing subpattern count = 1
1713    Options: extended
1714    First char = '('
1715    Need char = ')'
1716        (ab(xy)cd)
1717     0: (ab(xy)cd)
1718     1: cd
1719    
1720    /\( ( ( (?>[^()]+) | (?R) )* ) \) /x
1721    Capturing subpattern count = 2
1722    Options: extended
1723    First char = '('
1724    Need char = ')'
1725        (ab(xy)cd)
1726     0: (ab(xy)cd)
1727     1: ab(xy)cd
1728     2: cd
1729    
1730    /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /x
1731    Capturing subpattern count = 3
1732    Options: extended
1733    First char = '('
1734    Need char = ')'
1735        (ab(xy)cd)
1736     0: (ab(xy)cd)
1737     1: <unset>
1738     2: ab(xy)cd
1739     3: cd
1740        (123ab(xy)cd)
1741     0: (123ab(xy)cd)
1742     1: 123
1743     2: ab(xy)cd
1744     3: cd
1745    
1746    /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /x
1747    Capturing subpattern count = 3
1748    Options: extended
1749    First char = '('
1750    Need char = ')'
1751        (ab(xy)cd)
1752     0: (ab(xy)cd)
1753     1: ab(xy)cd
1754     2: <unset>
1755     3: cd
1756        (123ab(xy)cd)
1757     0: (123ab(xy)cd)
1758     1: 123ab(xy)cd
1759     2: 123
1760     3: cd
1761    
1762    /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /x
1763    Capturing subpattern count = 11
1764    Options: extended
1765    First char = '('
1766    Need char = ')'
1767        (ab(xy)cd)
1768     0: (ab(xy)cd)
1769     1: ab(xy)cd
1770     2: ab(xy)cd
1771     3: ab(xy)cd
1772     4: ab(xy)cd
1773     5: ab(xy)cd
1774     6: ab(xy)cd
1775     7: ab(xy)cd
1776     8: ab(xy)cd
1777     9: ab(xy)cd
1778    10: ab(xy)cd
1779    11: cd
1780    
1781    /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /x
1782    Capturing subpattern count = 3
1783    Options: extended
1784    First char = '('
1785    Need char = ')'
1786        (abcd(xyz<p>qrs)123)
1787     0: (abcd(xyz<p>qrs)123)
1788     1: abcd(xyz<p>qrs)123
1789     2: 123
1790     3: <p>qrs
1791    
1792    /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /x
1793    Capturing subpattern count = 3
1794    Options: extended
1795    First char = '('
1796    Need char = ')'
1797        (ab(cd)ef)
1798     0: (ab(cd)ef)
1799     1: ab(cd)ef
1800     2: ef
1801     3: (cd)
1802        (ab(cd(ef)gh)ij)
1803     0: (ab(cd(ef)gh)ij)
1804     1: ab(cd(ef)gh)ij
1805     2: ij
1806     3: (cd(ef)gh)
1807    
1808    /^[[:alnum:]]/D
1809    ------------------------------------------------------------------
1810      0  37 Bra 0
1811      3     ^
1812      4     [0-9A-Za-z]
1813     37  37 Ket
1814     40     End
1815    ------------------------------------------------------------------
1816    Capturing subpattern count = 0
1817    Options: anchored
1818    No first char
1819    No need char
1820    
1821    /^[[:alpha:]]/D
1822    ------------------------------------------------------------------
1823      0  37 Bra 0
1824      3     ^
1825      4     [A-Za-z]
1826     37  37 Ket
1827     40     End
1828    ------------------------------------------------------------------
1829    Capturing subpattern count = 0
1830    Options: anchored
1831    No first char
1832    No need char
1833    
1834    /^[[:ascii:]]/D
1835    ------------------------------------------------------------------
1836      0  37 Bra 0
1837      3     ^
1838      4     [\x00-\x7f]
1839     37  37 Ket
1840     40     End
1841    ------------------------------------------------------------------
1842    Capturing subpattern count = 0
1843    Options: anchored
1844    No first char
1845    No need char
1846    
1847    /^[[:cntrl:]]/D
1848    ------------------------------------------------------------------
1849      0  37 Bra 0
1850      3     ^
1851      4     [\x00-\x1f\x7f]
1852     37  37 Ket
1853     40     End
1854    ------------------------------------------------------------------
1855    Capturing subpattern count = 0
1856    Options: anchored
1857    No first char
1858    No need char
1859    
1860    /^[[:digit:]]/D
1861    ------------------------------------------------------------------
1862      0  37 Bra 0
1863      3     ^
1864      4     [0-9]
1865     37  37 Ket
1866     40     End
1867    ------------------------------------------------------------------
1868    Capturing subpattern count = 0
1869    Options: anchored
1870    No first char
1871    No need char
1872    
1873    /^[[:graph:]]/D
1874    ------------------------------------------------------------------
1875      0  37 Bra 0
1876      3     ^
1877      4     [!-~]
1878     37  37 Ket
1879     40     End
1880    ------------------------------------------------------------------
1881    Capturing subpattern count = 0
1882    Options: anchored
1883    No first char
1884    No need char
1885    
1886    /^[[:lower:]]/D
1887    ------------------------------------------------------------------
1888      0  37 Bra 0
1889      3     ^
1890      4     [a-z]
1891     37  37 Ket
1892     40     End
1893    ------------------------------------------------------------------
1894    Capturing subpattern count = 0
1895    Options: anchored
1896    No first char
1897    No need char
1898    
1899    /^[[:print:]]/D
1900    ------------------------------------------------------------------
1901      0  37 Bra 0
1902      3     ^
1903      4     [ -~]
1904     37  37 Ket
1905     40     End
1906    ------------------------------------------------------------------
1907    Capturing subpattern count = 0
1908    Options: anchored
1909    No first char
1910    No need char
1911    
1912    /^[[:punct:]]/D
1913    ------------------------------------------------------------------
1914      0  37 Bra 0
1915      3     ^
1916      4     [!-/:-@[-`{-~]
1917     37  37 Ket
1918     40     End
1919    ------------------------------------------------------------------
1920    Capturing subpattern count = 0
1921    Options: anchored
1922    No first char
1923    No need char
1924    
1925    /^[[:space:]]/D
1926    ------------------------------------------------------------------
1927      0  37 Bra 0
1928      3     ^
1929      4     [\x09-\x0d ]
1930     37  37 Ket
1931     40     End
1932    ------------------------------------------------------------------
1933    Capturing subpattern count = 0
1934    Options: anchored
1935    No first char
1936    No need char
1937    
1938    /^[[:upper:]]/D
1939    ------------------------------------------------------------------
1940      0  37 Bra 0
1941      3     ^
1942      4     [A-Z]
1943     37  37 Ket
1944     40     End
1945    ------------------------------------------------------------------
1946    Capturing subpattern count = 0
1947    Options: anchored
1948    No first char
1949    No need char
1950    
1951    /^[[:xdigit:]]/D
1952    ------------------------------------------------------------------
1953      0  37 Bra 0
1954      3     ^
1955      4     [0-9A-Fa-f]
1956     37  37 Ket
1957     40     End
1958    ------------------------------------------------------------------
1959    Capturing subpattern count = 0
1960    Options: anchored
1961    No first char
1962    No need char
1963    
1964    /^[[:word:]]/D
1965    ------------------------------------------------------------------
1966      0  37 Bra 0
1967      3     ^
1968      4     [0-9A-Z_a-z]
1969     37  37 Ket
1970     40     End
1971    ------------------------------------------------------------------
1972    Capturing subpattern count = 0
1973    Options: anchored
1974    No first char
1975    No need char
1976    
1977    /^[[:^cntrl:]]/D
1978    ------------------------------------------------------------------
1979      0  37 Bra 0
1980      3     ^
1981      4     [ -~\x80-\xff]
1982     37  37 Ket
1983     40     End
1984    ------------------------------------------------------------------
1985    Capturing subpattern count = 0
1986    Options: anchored
1987    No first char
1988    No need char
1989    
1990    /^[12[:^digit:]]/D
1991    ------------------------------------------------------------------
1992      0  37 Bra 0
1993      3     ^
1994      4     [\x00-/1-2:-\xff]
1995     37  37 Ket
1996     40     End
1997    ------------------------------------------------------------------
1998    Capturing subpattern count = 0
1999    Options: anchored
2000    No first char
2001    No need char
2002    
2003    /[01[:alpha:]%]/D
2004    ------------------------------------------------------------------
2005      0  36 Bra 0
2006      3     [%0-1A-Za-z]
2007     36  36 Ket
2008     39     End
2009    ------------------------------------------------------------------
2010    Capturing subpattern count = 0
2011    No options
2012    No first char
2013    No need char
2014    
2015    /[[.ch.]]/
2016    Failed: POSIX collating elements are not supported at offset 1
2017    
2018    /[[=ch=]]/
2019    Failed: POSIX collating elements are not supported at offset 1
2020    
2021    /[[:rhubarb:]]/
2022    Failed: unknown POSIX class name at offset 3
2023    
2024  / End of test input /  /[[:upper:]]/i
2025  Identifying subpattern count = 0  Capturing subpattern count = 0
2026    Options: caseless
2027    No first char
2028    No need char
2029        A
2030     0: A
2031        a
2032     0: a
2033    
2034    /[[:lower:]]/i
2035    Capturing subpattern count = 0
2036    Options: caseless
2037    No first char
2038    No need char
2039        A
2040     0: A
2041        a
2042     0: a
2043    
2044    /((?-i)[[:lower:]])[[:lower:]]/i
2045    Capturing subpattern count = 1
2046    Options: caseless
2047    Case state changes
2048    No first char
2049    No need char
2050        ab
2051     0: ab
2052     1: a
2053        aB
2054     0: aB
2055     1: a
2056        *** Failers
2057     0: ai
2058     1: a
2059        Ab
2060    No match
2061        AB
2062    No match
2063    
2064    /[\200-\410]/
2065    Failed: range out of order in character class at offset 9
2066    
2067    /^(?(0)f|b)oo/
2068    Failed: invalid condition (?(0) at offset 5
2069    
2070    /This one's here because of the large output vector needed/
2071    Capturing subpattern count = 0
2072    No options
2073    First char = 'T'
2074    Need char = 'd'
2075    
2076    /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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)/
2077    Capturing subpattern count = 271
2078    Max back reference = 270
2079    No options
2080    No first char
2081    No need char
2082        \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
2083     0: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
2084     1: 1
2085     2: 2
2086     3: 3
2087     4: 4
2088     5: 5
2089     6: 6
2090     7: 7
2091     8: 8
2092     9: 9
2093    10: 10
2094    11: 11
2095    12: 12
2096    13: 13
2097    14: 14
2098    15: 15
2099    16: 16
2100    17: 17
2101    18: 18
2102    19: 19
2103    20: 20
2104    21: 21
2105    22: 22
2106    23: 23
2107    24: 24
2108    25: 25
2109    26: 26
2110    27: 27
2111    28: 28
2112    29: 29
2113    30: 30
2114    31: 31
2115    32: 32
2116    33: 33
2117    34: 34
2118    35: 35
2119    36: 36
2120    37: 37
2121    38: 38
2122    39: 39
2123    40: 40
2124    41: 41
2125    42: 42
2126    43: 43
2127    44: 44
2128    45: 45
2129    46: 46
2130    47: 47
2131    48: 48
2132    49: 49
2133    50: 50
2134    51: 51
2135    52: 52
2136    53: 53
2137    54: 54
2138    55: 55
2139    56: 56
2140    57: 57
2141    58: 58
2142    59: 59
2143    60: 60
2144    61: 61
2145    62: 62
2146    63: 63
2147    64: 64
2148    65: 65
2149    66: 66
2150    67: 67
2151    68: 68
2152    69: 69
2153    70: 70
2154    71: 71
2155    72: 72
2156    73: 73
2157    74: 74
2158    75: 75
2159    76: 76
2160    77: 77
2161    78: 78
2162    79: 79
2163    80: 80
2164    81: 81
2165    82: 82
2166    83: 83
2167    84: 84
2168    85: 85
2169    86: 86
2170    87: 87
2171    88: 88
2172    89: 89
2173    90: 90
2174    91: 91
2175    92: 92
2176    93: 93
2177    94: 94
2178    95: 95
2179    96: 96
2180    97: 97
2181    98: 98
2182    99: 99
2183    100: 100
2184    101: 101
2185    102: 102
2186    103: 103
2187    104: 104
2188    105: 105
2189    106: 106
2190    107: 107
2191    108: 108
2192    109: 109
2193    110: 110
2194    111: 111
2195    112: 112
2196    113: 113
2197    114: 114
2198    115: 115
2199    116: 116
2200    117: 117
2201    118: 118
2202    119: 119
2203    120: 120
2204    121: 121
2205    122: 122
2206    123: 123
2207    124: 124
2208    125: 125
2209    126: 126
2210    127: 127
2211    128: 128
2212    129: 129
2213    130: 130
2214    131: 131
2215    132: 132
2216    133: 133
2217    134: 134
2218    135: 135
2219    136: 136
2220    137: 137
2221    138: 138
2222    139: 139
2223    140: 140
2224    141: 141
2225    142: 142
2226    143: 143
2227    144: 144
2228    145: 145
2229    146: 146
2230    147: 147
2231    148: 148
2232    149: 149
2233    150: 150
2234    151: 151
2235    152: 152
2236    153: 153
2237    154: 154
2238    155: 155
2239    156: 156
2240    157: 157
2241    158: 158
2242    159: 159
2243    160: 160
2244    161: 161
2245    162: 162
2246    163: 163
2247    164: 164
2248    165: 165
2249    166: 166
2250    167: 167
2251    168: 168
2252    169: 169
2253    170: 170
2254    171: 171
2255    172: 172
2256    173: 173
2257    174: 174
2258    175: 175
2259    176: 176
2260    177: 177
2261    178: 178
2262    179: 179
2263    180: 180
2264    181: 181
2265    182: 182
2266    183: 183
2267    184: 184
2268    185: 185
2269    186: 186
2270    187: 187
2271    188: 188
2272    189: 189
2273    190: 190
2274    191: 191
2275    192: 192
2276    193: 193
2277    194: 194
2278    195: 195
2279    196: 196
2280    197: 197
2281    198: 198
2282    199: 199
2283    200: 200
2284    201: 201
2285    202: 202
2286    203: 203
2287    204: 204
2288    205: 205
2289    206: 206
2290    207: 207
2291    208: 208
2292    209: 209
2293    210: 210
2294    211: 211
2295    212: 212
2296    213: 213
2297    214: 214
2298    215: 215
2299    216: 216
2300    217: 217
2301    218: 218
2302    219: 219
2303    220: 220
2304    221: 221
2305    222: 222
2306    223: 223
2307    224: 224
2308    225: 225
2309    226: 226
2310    227: 227
2311    228: 228
2312    229: 229
2313    230: 230
2314    231: 231
2315    232: 232
2316    233: 233
2317    234: 234
2318    235: 235
2319    236: 236
2320    237: 237
2321    238: 238
2322    239: 239
2323    240: 240
2324    241: 241
2325    242: 242
2326    243: 243
2327    244: 244
2328    245: 245
2329    246: 246
2330    247: 247
2331    248: 248
2332    249: 249
2333    250: 250
2334    251: 251
2335    252: 252
2336    253: 253
2337    254: 254
2338    255: 255
2339    256: 256
2340    257: 257
2341    258: 258
2342    259: 259
2343    260: 260
2344    261: 261
2345    262: 262
2346    263: 263
2347    264: 264
2348    265: 265
2349    266: 266
2350    267: 267
2351    268: 268
2352    269: 269
2353    270: ABC
2354    271: ABC
2355    
2356    /This one's here because Perl does this differently and PCRE can't at present/
2357    Capturing subpattern count = 0
2358    No options
2359    First char = 'T'
2360    Need char = 't'
2361    
2362    /(main(O)?)+/
2363    Capturing subpattern count = 2
2364    No options
2365    First char = 'm'
2366    Need char = 'n'
2367        mainmain
2368     0: mainmain
2369     1: main
2370        mainOmain
2371     0: mainOmain
2372     1: main
2373     2: O
2374    
2375    / End of testinput2 /
2376    Capturing subpattern count = 0
2377  No options  No options
2378  First char = ' '  First char = ' '
2379  Req char = ' '  Need char = ' '
2380    

Legend:
Removed from v.41  
changed lines
  Added in v.61

  ViewVC Help
Powered by ViewVC 1.1.5