/[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 102 by ph10, Tue Mar 6 15:50:45 2007 UTC revision 1495 by ph10, Sat Jul 12 18:22:54 2014 UTC
# Line 1  Line 1 
1    /-- This set of tests is not Perl-compatible. It checks on special features
2        of PCRE's API, error diagnostics, and the compiled code of some patterns.
3        It also checks the non-Perl syntax the PCRE supports (Python, .NET,
4        Oniguruma). Finally, there are some tests where PCRE and Perl differ,
5        either because PCRE can't be compatible, or there is a possible Perl
6        bug.
7    
8        NOTE: This is a non-UTF set of tests. When UTF support is needed, use
9        test 5, and if Unicode Property Support is needed, use test 7. --/
10    
11    < forbid 8W
12    
13  /(a)b|/I  /(a)b|/I
14  Capturing subpattern count = 1  Capturing subpattern count = 1
15    May match empty string
16  No options  No options
17  No first char  No first char
18  No need char  No need char
# Line 40  No match Line 53  No match
53    
54  /a+bc/I  /a+bc/I
55  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
56  No options  No options
57  First char = 'a'  First char = 'a'
58  Need char = 'c'  Need char = 'c'
59    
60  /a*bc/I  /a*bc/I
61  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
62  No options  No options
63  No first char  No first char
64  Need char = 'c'  Need char = 'c'
65    
66  /a{3}bc/I  /a{3}bc/I
67  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
68  No options  No options
69  First char = 'a'  First char = 'a'
70  Need char = 'c'  Need char = 'c'
71    
72  /(abc|a+z)/I  /(abc|a+z)/I
73  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
74  No options  No options
75  First char = 'a'  First char = 'a'
76  No need char  No need char
# Line 78  No match Line 87  No match
87      def\nabc      def\nabc
88  No match  No match
89    
90  /ab\hdef/X  /ab\idef/X
91  Failed: unrecognized character follows \ at offset 3  Failed: unrecognized character follows \ at offset 3
92    
93  /(?X)ab\hdef/X  /(?X)ab\idef/X
94  Failed: unrecognized character follows \ at offset 7  Failed: unrecognized character follows \ at offset 7
95    
96  /x{5,4}/  /x{5,4}/
# Line 96  Failed: missing terminating ] for charac Line 105  Failed: missing terminating ] for charac
105  /(?X)[\B]/  /(?X)[\B]/
106  Failed: invalid escape sequence in character class at offset 6  Failed: invalid escape sequence in character class at offset 6
107    
108    /(?X)[\R]/
109    Failed: invalid escape sequence in character class at offset 6
110    
111    /(?X)[\X]/
112    Failed: invalid escape sequence in character class at offset 6
113    
114    /[\B]/BZ
115    ------------------------------------------------------------------
116            Bra
117            B
118            Ket
119            End
120    ------------------------------------------------------------------
121    
122    /[\R]/BZ
123    ------------------------------------------------------------------
124            Bra
125            R
126            Ket
127            End
128    ------------------------------------------------------------------
129    
130    /[\X]/BZ
131    ------------------------------------------------------------------
132            Bra
133            X
134            Ket
135            End
136    ------------------------------------------------------------------
137    
138  /[z-a]/  /[z-a]/
139  Failed: range out of order in character class at offset 3  Failed: range out of order in character class at offset 3
140    
# Line 109  Failed: missing ) at offset 4 Line 148  Failed: missing ) at offset 4
148  Failed: missing ) after comment at offset 7  Failed: missing ) after comment at offset 7
149    
150  /(?z)abc/  /(?z)abc/
151  Failed: unrecognized character after (? at offset 2  Failed: unrecognized character after (? or (?- at offset 2
152    
153  /.*b/I  /.*b/I
154  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
155  No options  No options
156  First char at start or follows newline  First char at start or follows newline
157  Need char = 'b'  Need char = 'b'
158    
159  /.*?b/I  /.*?b/I
160  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
161  No options  No options
162  First char at start or follows newline  First char at start or follows newline
163  Need char = 'b'  Need char = 'b'
# Line 140  Capturing subpattern count = 0 Line 177  Capturing subpattern count = 0
177  No options  No options
178  No first char  No first char
179  No need char  No need char
180  Starting byte set: c d e  Subject length lower bound = 3
181    Starting chars: c d e
182      this sentence eventually mentions a cat      this sentence eventually mentions a cat
183   0: cat   0: cat
184      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
# Line 151  Capturing subpattern count = 0 Line 189  Capturing subpattern count = 0
189  Options: caseless  Options: caseless
190  No first char  No first char
191  No need char  No need char
192  Starting byte set: C D E c d e  Subject length lower bound = 3
193    Starting chars: C D E c d e
194      this sentence eventually mentions a CAT cat      this sentence eventually mentions a CAT cat
195   0: CAT   0: CAT
196      this sentences rambles on and on for a while to elephant ElePhant      this sentences rambles on and on for a while to elephant ElePhant
# Line 162  Capturing subpattern count = 0 Line 201  Capturing subpattern count = 0
201  No options  No options
202  No first char  No first char
203  No need char  No need char
204  Starting byte set: a b c d  Subject length lower bound = 1
205    Starting chars: a b c d
206    
207  /(a|[^\dZ])/IS  /(a|[^\dZ])/IS
208  Capturing subpattern count = 1  Capturing subpattern count = 1
209  No options  No options
210  No first char  No first char
211  No need char  No need char
212  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  Subject length lower bound = 1
213    Starting chars: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
214    \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
215    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
216    ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y [ \ ] ^ _ ` a b c d    ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y [ \ ] ^ _ ` a b c d
# Line 189  Capturing subpattern count = 1 Line 230  Capturing subpattern count = 1
230  No options  No options
231  No first char  No first char
232  No need char  No need char
233  Starting byte set: \x09 \x0a \x0c \x0d \x20 a b  Subject length lower bound = 1
234    Starting chars: \x09 \x0a \x0b \x0c \x0d \x20 a b
235    
236  /(ab\2)/  /(ab\2)/
237  Failed: reference to non-existent subpattern at offset 6  Failed: reference to non-existent subpattern at offset 6
# Line 310  No match Line 352  No match
352  No match  No match
353    
354  /ab(?z)cd/  /ab(?z)cd/
355  Failed: unrecognized character after (? at offset 4  Failed: unrecognized character after (? or (?- at offset 4
356    
357  /^abc|def/I  /^abc|def/I
358  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 324  No need char Line 366  No need char
366    
367  /.*((abc)$|(def))/I  /.*((abc)$|(def))/I
368  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
369  No options  No options
370  First char at start or follows newline  First char at start or follows newline
371  No need char  No need char
# Line 338  No need char Line 379  No need char
379   2: <unset>   2: <unset>
380   3: def   3: def
381    
 /abc/IP  
     abc  
  0: abc  
     *** Failers  
 No match: POSIX code 17: match failed  
   
 /^abc|def/IP  
     abcdef  
  0: abc  
     abcdef\B  
  0: def  
   
 /.*((abc)$|(def))/IP  
     defabc  
  0: defabc  
  1: abc  
  2: abc  
     \Zdefabc  
  0: def  
  1: def  
  3: def  
   
 /the quick brown fox/IP  
     the quick brown fox  
  0: the quick brown fox  
     *** Failers  
 No match: POSIX code 17: match failed  
     The Quick Brown Fox  
 No match: POSIX code 17: match failed  
   
 /the quick brown fox/IPi  
     the quick brown fox  
  0: the quick brown fox  
     The Quick Brown Fox  
  0: The Quick Brown Fox  
   
 /abc.def/IP  
     *** Failers  
 No match: POSIX code 17: match failed  
     abc\ndef  
 No match: POSIX code 17: match failed  
   
 /abc$/IP  
     abc  
  0: abc  
     abc\n  
  0: abc  
   
 /(abc)\2/IP  
 Failed: POSIX code 15: bad back reference at offset 7  
   
 /(abc\1)/IP  
     abc  
 No match: POSIX code 17: match failed  
   
382  /)/  /)/
383  Failed: unmatched parentheses at offset 0  Failed: unmatched parentheses at offset 0
384    
# Line 401  Failed: missing terminating ] for charac Line 387  Failed: missing terminating ] for charac
387    
388  /[^aeiou ]{3,}/I  /[^aeiou ]{3,}/I
389  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
390  No options  No options
391  No first char  No first char
392  No need char  No need char
# Line 410  No need char Line 395  No need char
395    
396  /<.*>/I  /<.*>/I
397  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
398  No options  No options
399  First char = '<'  First char = '<'
400  Need char = '>'  Need char = '>'
# Line 419  Need char = '>' Line 403  Need char = '>'
403    
404  /<.*?>/I  /<.*?>/I
405  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
406  No options  No options
407  First char = '<'  First char = '<'
408  Need char = '>'  Need char = '>'
# Line 428  Need char = '>' Line 411  Need char = '>'
411    
412  /<.*>/IU  /<.*>/IU
413  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
414  Options: ungreedy  Options: ungreedy
415  First char = '<'  First char = '<'
416  Need char = '>'  Need char = '>'
# Line 437  Need char = '>' Line 419  Need char = '>'
419    
420  /(?U)<.*>/I  /(?U)<.*>/I
421  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
422  Options: ungreedy  Options: ungreedy
423  First char = '<'  First char = '<'
424  Need char = '>'  Need char = '>'
# Line 446  Need char = '>' Line 427  Need char = '>'
427    
428  /<.*?>/IU  /<.*?>/IU
429  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
430  Options: ungreedy  Options: ungreedy
431  First char = '<'  First char = '<'
432  Need char = '>'  Need char = '>'
# Line 455  Need char = '>' Line 435  Need char = '>'
435    
436  /={3,}/IU  /={3,}/IU
437  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
438  Options: ungreedy  Options: ungreedy
439  First char = '='  First char = '='
440  Need char = '='  Need char = '='
# Line 464  Need char = '=' Line 443  Need char = '='
443    
444  /(?U)={3,}?/I  /(?U)={3,}?/I
445  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
446  Options: ungreedy  Options: ungreedy
447  First char = '='  First char = '='
448  Need char = '='  Need char = '='
# Line 473  Need char = '=' Line 451  Need char = '='
451    
452  /(?<!bar|cattle)foo/I  /(?<!bar|cattle)foo/I
453  Capturing subpattern count = 0  Capturing subpattern count = 0
454    Max lookbehind = 6
455  No options  No options
456  First char = 'f'  First char = 'f'
457  Need char = 'o'  Need char = 'o'
# Line 522  No need char Line 501  No need char
501    
502  /(?s).*/I  /(?s).*/I
503  Capturing subpattern count = 0  Capturing subpattern count = 0
504  Partial matching not supported  May match empty string
505  Options: anchored dotall  Options: anchored dotall
506  No first char  No first char
507  No need char  No need char
# Line 532  Capturing subpattern count = 0 Line 511  Capturing subpattern count = 0
511  No options  No options
512  No first char  No first char
513  No need char  No need char
514  Starting byte set: a b c d  Subject length lower bound = 1
515    Starting chars: a b c d
516    
517  /(?i)[abcd]/IS  /(?i)[abcd]/IS
518  Capturing subpattern count = 0  Capturing subpattern count = 0
519  Options: caseless  Options: caseless
520  No first char  No first char
521  No need char  No need char
522  Starting byte set: A B C D a b c d  Subject length lower bound = 1
523    Starting chars: A B C D a b c d
524    
525  /(?m)[xy]|(b|c)/IS  /(?m)[xy]|(b|c)/IS
526  Capturing subpattern count = 1  Capturing subpattern count = 1
527  Options: multiline  Options: multiline
528  No first char  No first char
529  No need char  No need char
530  Starting byte set: b c x y  Subject length lower bound = 1
531    Starting chars: b c x y
532    
533  /(^a|^b)/Im  /(^a|^b)/Im
534  Capturing subpattern count = 1  Capturing subpattern count = 1
# Line 567  Failed: conditional group contains more Line 549  Failed: conditional group contains more
549  Failed: conditional group contains more than two branches at offset 12  Failed: conditional group contains more than two branches at offset 12
550    
551  /(?(1a)/  /(?(1a)/
552  Failed: missing ) at offset 6  Failed: malformed number or name after (?( at offset 4
553    
554  /(?(1a))/  /(?(1a))/
555  Failed: reference to non-existent subpattern at offset 6  Failed: malformed number or name after (?( at offset 4
556    
557  /(?(?i))/  /(?(?i))/
558  Failed: assertion expected after (?( at offset 3  Failed: assertion expected after (?( at offset 3
# Line 584  Failed: syntax error in subpattern name Line 566  Failed: syntax error in subpattern name
566  /((?s)blah)\s+\1/I  /((?s)blah)\s+\1/I
567  Capturing subpattern count = 1  Capturing subpattern count = 1
568  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
569  No options  No options
570  First char = 'b'  First char = 'b'
571  Need char = 'h'  Need char = 'h'
# Line 592  Need char = 'h' Line 573  Need char = 'h'
573  /((?i)blah)\s+\1/I  /((?i)blah)\s+\1/I
574  Capturing subpattern count = 1  Capturing subpattern count = 1
575  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
576  No options  No options
577  First char = 'b' (caseless)  First char = 'b' (caseless)
578  Need char = 'h' (caseless)  Need char = 'h' (caseless)
579    
580  /((?i)b)/IDS  /((?i)b)/IDZS
581  ------------------------------------------------------------------  ------------------------------------------------------------------
582    0  17 Bra 0          Bra
583    3   9 Bra 1          CBra 1
584    8  01 Opt       /i b
585   10  NC b          Ket
586   12   9 Ket          Ket
587   15  00 Opt          End
  17  17 Ket  
  20     End  
588  ------------------------------------------------------------------  ------------------------------------------------------------------
589  Capturing subpattern count = 1  Capturing subpattern count = 1
590  No options  No options
591  First char = 'b' (caseless)  First char = 'b' (caseless)
592  No need char  No need char
593  Study returned NULL  Subject length lower bound = 1
594    No starting char list
595    
596  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
597  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
598  No options  No options
599  No first char  No first char
600  No need char  No need char
601  Starting byte set: C a b c d  Subject length lower bound = 1
602    Starting chars: C a b c d
603    
604  /a$/I  /a$/I
605  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 656  No match Line 635  No match
635    
636  /\Aabc/Im  /\Aabc/Im
637  Capturing subpattern count = 0  Capturing subpattern count = 0
638    Max lookbehind = 1
639  Options: anchored multiline  Options: anchored multiline
640  No first char  No first char
641  No need char  No need char
# Line 668  Need char = 'c' Line 648  Need char = 'c'
648    
649  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
650  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
651  Options: anchored  Options: anchored
652  No first char  No first char
653  No need char  No need char
# Line 682  No need char Line 661  No need char
661    
662  /(?<=foo)[ab]/IS  /(?<=foo)[ab]/IS
663  Capturing subpattern count = 0  Capturing subpattern count = 0
664    Max lookbehind = 3
665  No options  No options
666  No first char  No first char
667  No need char  No need char
668  Starting byte set: a b  Subject length lower bound = 1
669    Starting chars: a b
670    
671  /(?<!foo)(alpha|omega)/IS  /(?<!foo)(alpha|omega)/IS
672  Capturing subpattern count = 1  Capturing subpattern count = 1
673    Max lookbehind = 3
674  No options  No options
675  No first char  No first char
676  Need char = 'a'  Need char = 'a'
677  Starting byte set: a o  Subject length lower bound = 5
678    Starting chars: a o
679    
680  /(?!alphabet)[ab]/IS  /(?!alphabet)[ab]/IS
681  Capturing subpattern count = 0  Capturing subpattern count = 0
682  No options  No options
683  No first char  No first char
684  No need char  No need char
685  Starting byte set: a b  Subject length lower bound = 1
686    Starting chars: a b
687    
688  /(?<=foo\n)^bar/Im  /(?<=foo\n)^bar/Im
689  Capturing subpattern count = 0  Capturing subpattern count = 0
690    Max lookbehind = 4
691    Contains explicit CR or LF match
692  Options: multiline  Options: multiline
693  No first char  No first char
694  Need char = 'r'  Need char = 'r'
# Line 719  No match Line 705  No match
705    
706  /^(?<=foo\n)bar/Im  /^(?<=foo\n)bar/Im
707  Capturing subpattern count = 0  Capturing subpattern count = 0
708    Max lookbehind = 4
709    Contains explicit CR or LF match
710  Options: multiline  Options: multiline
711  First char at start or follows newline  First char at start or follows newline
712  Need char = 'r'  Need char = 'r'
# Line 760  Failed: lookbehind assertion is not fixe Line 748  Failed: lookbehind assertion is not fixe
748    
749  /(?<=bullock|donkey)-cart/I  /(?<=bullock|donkey)-cart/I
750  Capturing subpattern count = 0  Capturing subpattern count = 0
751    Max lookbehind = 7
752  No options  No options
753  First char = '-'  First char = '-'
754  Need char = 't'  Need char = 't'
# Line 776  No match Line 765  No match
765    
766  /(?<=ab(?i)x|y|z)/I  /(?<=ab(?i)x|y|z)/I
767  Capturing subpattern count = 0  Capturing subpattern count = 0
768    Max lookbehind = 3
769    May match empty string
770  No options  No options
771  No first char  No first char
772  No need char  No need char
773    
774  /(?>.*)(?<=(abcd)|(xyz))/I  /(?>.*)(?<=(abcd)|(xyz))/I
775  Capturing subpattern count = 2  Capturing subpattern count = 2
776  Partial matching not supported  Max lookbehind = 4
777    May match empty string
778  No options  No options
779  First char at start or follows newline  No first char
780  No need char  No need char
781      alphabetabcd      alphabetabcd
782   0: alphabetabcd   0: alphabetabcd
# Line 796  No need char Line 788  No need char
788    
789  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
790  Capturing subpattern count = 0  Capturing subpattern count = 0
791    Max lookbehind = 4
792  No options  No options
793  First char = 'Z'  First char = 'Z'
794  Need char = 'Z'  Need char = 'Z'
# Line 824  No match Line 817  No match
817    
818  /(?<!(foo)a)bar/I  /(?<!(foo)a)bar/I
819  Capturing subpattern count = 1  Capturing subpattern count = 1
820    Max lookbehind = 4
821  No options  No options
822  First char = 'b'  First char = 'b'
823  Need char = 'r'  Need char = 'r'
# Line 836  No match Line 830  No match
830      fooabar      fooabar
831  No match  No match
832    
833  /This one is here because Perl 5.005_02 doesn't fail it/I  /This one is here because Perl behaves differently; see also the following/I
 Capturing subpattern count = 0  
 No options  
 First char = 'T'  
 Need char = 't'  
   
 /^(a)?(?(1)a|b)+$/I  
 Capturing subpattern count = 1  
 Options: anchored  
 No first char  
 No need char  
     *** Failers  
 No match  
     a  
 No match  
   
 /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/I  
834  Capturing subpattern count = 0  Capturing subpattern count = 0
835  No options  No options
836  First char = 'T'  First char = 'T'
# Line 864  Max back reference = 1 Line 842  Max back reference = 1
842  Options: anchored  Options: anchored
843  No first char  No first char
844  No need char  No need char
845        aaaa
846    No match
847      aaaaaa      aaaaaa
848   0: aaaaaa  No match
849   1: aa  
850    /Perl does not fail these two for the final subjects. Neither did PCRE until/
851    /release 8.01. The problem is in backtracking into a subpattern that contains/
852    No match
853    /a recursive reference to itself. PCRE has now made these into atomic patterns./
854    No match
855    
856    /^(xa|=?\1a){2}$/
857        xa=xaa
858     0: xa=xaa
859     1: =xaa
860        ** Failers
861    No match
862        xa=xaaa
863    No match
864    
865    /^(xa|=?\1a)+$/
866        xa=xaa
867     0: xa=xaa
868     1: =xaa
869        ** Failers
870    No match
871        xa=xaaa
872    No match
873    
874  /These are syntax tests from Perl 5.005/I  /These are syntax tests from Perl 5.005/I
875  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 944  Failed: missing ) at offset 4 Line 947  Failed: missing ) at offset 4
947  Failed: unrecognized character after (?< at offset 3  Failed: unrecognized character after (?< at offset 3
948    
949  /a(?{)b/  /a(?{)b/
950  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
951    
952  /a(?{{})b/  /a(?{{})b/
953  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
954    
955  /a(?{}})b/  /a(?{}})b/
956  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
957    
958  /a(?{"{"})b/  /a(?{"{"})b/
959  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
960    
961  /a(?{"{"}})b/  /a(?{"{"}})b/
962  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
963    
964  /(?(1?)a|b)/  /(?(1?)a|b)/
965  Failed: malformed number or name after (?( at offset 4  Failed: malformed number or name after (?( at offset 4
966    
 /(?(1)a|b|c)/  
 Failed: conditional group contains more than two branches at offset 10  
   
967  /[a[:xyz:/  /[a[:xyz:/
968  Failed: missing terminating ] for character class at offset 8  Failed: missing terminating ] for character class at offset 8
969    
# Line 976  Failed: numbers out of order in {} quant Line 976  Failed: numbers out of order in {} quant
976  /abc/\  /abc/\
977  Failed: \ at end of pattern at offset 4  Failed: \ at end of pattern at offset 4
978    
 /abc/\P  
 Failed: POSIX code 9: bad escape sequence at offset 4  
   
979  /abc/\i  /abc/\i
980  Failed: \ at end of pattern at offset 4  Failed: \ at end of pattern at offset 4
981    
# Line 1004  copy substring 5 failed -7 Line 1001  copy substring 5 failed -7
1001    
1002  /(.{20})/I  /(.{20})/I
1003  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1004  No options  No options
1005  No first char  No first char
1006  No need char  No need char
# Line 1022  No need char Line 1018  No need char
1018    
1019  /(.{15})/I  /(.{15})/I
1020  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1021  No options  No options
1022  No first char  No first char
1023  No need char  No need char
# Line 1037  No need char Line 1032  No need char
1032    
1033  /(.{16})/I  /(.{16})/I
1034  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1035  No options  No options
1036  No first char  No first char
1037  No need char  No need char
# Line 1097  No first char Line 1091  No first char
1091  No need char  No need char
1092      abc\00def\L\C0      abc\00def\L\C0
1093   0: abc\x00def   0: abc\x00def
1094   0C abc (7)   0C abc\x00def (7)
1095   0L abc   0L abc
1096    
1097  /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+  /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1098  )((?:[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]+
1099  )?)?)?)?)?)?)?)?)?otherword/IM  )?)?)?)?)?)?)?)?)?otherword/I
 Memory allocation (code space): 444  
1100  Capturing subpattern count = 8  Capturing subpattern count = 8
1101  Partial matching not supported  Contains explicit CR or LF match
1102  No options  No options
1103  First char = 'w'  First char = 'w'
1104  Need char = 'd'  Need char = 'd'
1105    
1106  /.*X/ID  /.*X/IDZ
1107  ------------------------------------------------------------------  ------------------------------------------------------------------
1108    0   7 Bra 0          Bra
1109    3     Any*          Any*
1110    5     X          X
1111    7   7 Ket          Ket
1112   10     End          End
1113  ------------------------------------------------------------------  ------------------------------------------------------------------
1114  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1115  No options  No options
1116  First char at start or follows newline  First char at start or follows newline
1117  Need char = 'X'  Need char = 'X'
1118    
1119  /.*X/IDs  /.*X/IDZs
1120  ------------------------------------------------------------------  ------------------------------------------------------------------
1121    0   7 Bra 0          Bra
1122    3     Any*          AllAny*
1123    5     X          X
1124    7   7 Ket          Ket
1125   10     End          End
1126  ------------------------------------------------------------------  ------------------------------------------------------------------
1127  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1128  Options: anchored dotall  Options: anchored dotall
1129  No first char  No first char
1130  Need char = 'X'  Need char = 'X'
1131    
1132  /(.*X|^B)/ID  /(.*X|^B)/IDZ
1133  ------------------------------------------------------------------  ------------------------------------------------------------------
1134    0  21 Bra 0          Bra
1135    3   9 Bra 1          CBra 1
1136    8     Any*          Any*
1137   10     X          X
1138   12   6 Alt          Alt
1139   15     ^          ^
1140   16     B          B
1141   18  15 Ket          Ket
1142   21  21 Ket          Ket
1143   24     End          End
1144  ------------------------------------------------------------------  ------------------------------------------------------------------
1145  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1146  No options  No options
1147  First char at start or follows newline  First char at start or follows newline
1148  No need char  No need char
1149    
1150  /(.*X|^B)/IDs  /(.*X|^B)/IDZs
1151  ------------------------------------------------------------------  ------------------------------------------------------------------
1152    0  21 Bra 0          Bra
1153    3   9 Bra 1          CBra 1
1154    8     Any*          AllAny*
1155   10     X          X
1156   12   6 Alt          Alt
1157   15     ^          ^
1158   16     B          B
1159   18  15 Ket          Ket
1160   21  21 Ket          Ket
1161   24     End          End
1162  ------------------------------------------------------------------  ------------------------------------------------------------------
1163  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1164  Options: anchored dotall  Options: anchored dotall
1165  No first char  No first char
1166  No need char  No need char
1167    
1168  /(?s)(.*X|^B)/ID  /(?s)(.*X|^B)/IDZ
1169  ------------------------------------------------------------------  ------------------------------------------------------------------
1170    0  21 Bra 0          Bra
1171    3   9 Bra 1          CBra 1
1172    8     Any*          AllAny*
1173   10     X          X
1174   12   6 Alt          Alt
1175   15     ^          ^
1176   16     B          B
1177   18  15 Ket          Ket
1178   21  21 Ket          Ket
1179   24     End          End
1180  ------------------------------------------------------------------  ------------------------------------------------------------------
1181  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1182  Options: anchored dotall  Options: anchored dotall
1183  No first char  No first char
1184  No need char  No need char
1185    
1186  /(?s:.*X|^B)/ID  /(?s:.*X|^B)/IDZ
1187  ------------------------------------------------------------------  ------------------------------------------------------------------
1188    0  25 Bra 0          Bra
1189    3   9 Bra 0          Bra
1190    6  04 Opt          AllAny*
1191    8     Any*          X
1192   10     X          Alt
1193   12   8 Alt          ^
1194   15  04 Opt          B
1195   17     ^          Ket
1196   18     B          Ket
1197   20  17 Ket          End
  23  00 Opt  
  25  25 Ket  
  28     End  
1198  ------------------------------------------------------------------  ------------------------------------------------------------------
1199  Capturing subpattern count = 0  Capturing subpattern count = 0
1200  Partial matching not supported  Options: anchored
1201  No options  No first char
 First char at start or follows newline  
1202  No need char  No need char
1203    
1204  /\Biss\B/I+  /\Biss\B/I+
1205  Capturing subpattern count = 0  Capturing subpattern count = 0
1206    Max lookbehind = 1
1207  No options  No options
1208  First char = 'i'  First char = 'i'
1209  Need char = 's'  Need char = 's'
# Line 1226  Need char = 's' Line 1211  Need char = 's'
1211   0: iss   0: iss
1212   0+ issippi   0+ issippi
1213    
 /\Biss\B/I+P  
     Mississippi  
  0: iss  
  0+ issippi  
   
1214  /iss/IG+  /iss/IG+
1215  Capturing subpattern count = 0  Capturing subpattern count = 0
1216  No options  No options
# Line 1244  Need char = 's' Line 1224  Need char = 's'
1224    
1225  /\Biss\B/IG+  /\Biss\B/IG+
1226  Capturing subpattern count = 0  Capturing subpattern count = 0
1227    Max lookbehind = 1
1228  No options  No options
1229  First char = 'i'  First char = 'i'
1230  Need char = 's'  Need char = 's'
# Line 1253  Need char = 's' Line 1234  Need char = 's'
1234    
1235  /\Biss\B/Ig+  /\Biss\B/Ig+
1236  Capturing subpattern count = 0  Capturing subpattern count = 0
1237    Max lookbehind = 1
1238  No options  No options
1239  First char = 'i'  First char = 'i'
1240  Need char = 's'  Need char = 's'
# Line 1268  No match Line 1250  No match
1250    
1251  /(?<=[Ms])iss/Ig+  /(?<=[Ms])iss/Ig+
1252  Capturing subpattern count = 0  Capturing subpattern count = 0
1253    Max lookbehind = 1
1254  No options  No options
1255  First char = 'i'  First char = 'i'
1256  Need char = 's'  Need char = 's'
# Line 1279  Need char = 's' Line 1262  Need char = 's'
1262    
1263  /(?<=[Ms])iss/IG+  /(?<=[Ms])iss/IG+
1264  Capturing subpattern count = 0  Capturing subpattern count = 0
1265    Max lookbehind = 1
1266  No options  No options
1267  First char = 'i'  First char = 'i'
1268  Need char = 's'  Need char = 's'
# Line 1297  No need char Line 1281  No need char
1281    
1282  /.*iss/Ig+  /.*iss/Ig+
1283  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1284  No options  No options
1285  First char at start or follows newline  First char at start or follows newline
1286  Need char = 's'  Need char = 's'
# Line 1348  No need char Line 1331  No need char
1331    
1332  /^ab\n/Ig+  /^ab\n/Ig+
1333  Capturing subpattern count = 0  Capturing subpattern count = 0
1334    Contains explicit CR or LF match
1335  Options: anchored  Options: anchored
1336  No first char  No first char
1337  No need char  No need char
# Line 1357  No need char Line 1341  No need char
1341    
1342  /^ab\n/Img+  /^ab\n/Img+
1343  Capturing subpattern count = 0  Capturing subpattern count = 0
1344    Contains explicit CR or LF match
1345  Options: multiline  Options: multiline
1346  First char at start or follows newline  First char at start or follows newline
1347  Need char = 10  Need char = \x0a
1348      ab\nab\ncd      ab\nab\ncd
1349   0: ab\x0a   0: ab\x0a
1350   0+ ab\x0acd   0+ ab\x0acd
# Line 1398  Need char = 'c' Line 1383  Need char = 'c'
1383    
1384  /a*/I  /a*/I
1385  Capturing subpattern count = 0  Capturing subpattern count = 0
1386  Partial matching not supported  May match empty string
1387  No options  No options
1388  No first char  No first char
1389  No need char  No need char
1390    
1391  /a+/I  /a+/I
1392  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1393  No options  No options
1394  First char = 'a'  First char = 'a'
1395  No need char  No need char
1396    
1397  /(baa|a+)/I  /(baa|a+)/I
1398  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1399  No options  No options
1400  No first char  No first char
1401  Need char = 'a'  Need char = 'a'
1402    
1403  /a{0,3}/I  /a{0,3}/I
1404  Capturing subpattern count = 0  Capturing subpattern count = 0
1405  Partial matching not supported  May match empty string
1406  No options  No options
1407  No first char  No first char
1408  No need char  No need char
1409    
1410  /baa{3,}/I  /baa{3,}/I
1411  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1412  No options  No options
1413  First char = 'b'  First char = 'b'
1414  Need char = 'a'  Need char = 'a'
1415    
1416  /"([^\\"]+|\\.)*"/I  /"([^\\"]+|\\.)*"/I
1417  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1418  No options  No options
1419  First char = '"'  First char = '"'
1420  Need char = '"'  Need char = '"'
# Line 1464  Need char = 'r' Line 1445  Need char = 'r'
1445    
1446  /...(?<=abc)/I  /...(?<=abc)/I
1447  Capturing subpattern count = 0  Capturing subpattern count = 0
1448    Max lookbehind = 3
1449  No options  No options
1450  No first char  No first char
1451  No need char  No need char
# Line 1488  Need char = 'b' Line 1470  Need char = 'b'
1470    
1471  /abc*/I  /abc*/I
1472  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1473  No options  No options
1474  First char = 'a'  First char = 'a'
1475  Need char = 'b'  Need char = 'b'
1476    
1477  /ab.c*/I  /ab.c*/I
1478  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1479  No options  No options
1480  First char = 'a'  First char = 'a'
1481  Need char = 'b'  Need char = 'b'
1482    
1483  /a.c*/I  /a.c*/I
1484  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1485  No options  No options
1486  First char = 'a'  First char = 'a'
1487  No need char  No need char
1488    
1489  /.c*/I  /.c*/I
1490  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1491  No options  No options
1492  No first char  No first char
1493  No need char  No need char
1494    
1495  /ac*/I  /ac*/I
1496  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1497  No options  No options
1498  First char = 'a'  First char = 'a'
1499  No need char  No need char
1500    
1501  /(a.c*|b.c*)/I  /(a.c*|b.c*)/I
1502  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1503  No options  No options
1504  No first char  No first char
1505  No need char  No need char
1506    
1507  /a.c*|aba/I  /a.c*|aba/I
1508  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1509  No options  No options
1510  First char = 'a'  First char = 'a'
1511  No need char  No need char
1512    
1513  /.+a/I  /.+a/I
1514  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1515  No options  No options
1516  No first char  No first char
1517  Need char = 'a'  Need char = 'a'
1518    
1519  /(?=abcda)a.*/I  /(?=abcda)a.*/I
1520  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1521  No options  No options
1522  First char = 'a'  First char = 'a'
1523  Need char = 'a'  Need char = 'a'
1524    
1525  /(?=a)a.*/I  /(?=a)a.*/I
1526  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1527  No options  No options
1528  First char = 'a'  First char = 'a'
1529  No need char  No need char
# Line 1564  No need char Line 1536  No need char
1536    
1537  /a\d*/I  /a\d*/I
1538  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1539  No options  No options
1540  First char = 'a'  First char = 'a'
1541  No need char  No need char
1542    
1543  /ab\d*/I  /ab\d*/I
1544  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1545  No options  No options
1546  First char = 'a'  First char = 'a'
1547  Need char = 'b'  Need char = 'b'
# Line 1590  Need char = 'd' Line 1560  Need char = 'd'
1560    
1561  /ab\d+/I  /ab\d+/I
1562  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1563  No options  No options
1564  First char = 'a'  First char = 'a'
1565  Need char = 'b'  Need char = 'b'
1566    
1567  /a(?(1)b)/I  /a(?(1)b)(.)/I
1568  Capturing subpattern count = 0  Capturing subpattern count = 1
1569  No options  No options
1570  First char = 'a'  First char = 'a'
1571  No need char  No need char
1572    
1573  /a(?(1)bag|big)/I  /a(?(1)bag|big)(.)/I
1574  Capturing subpattern count = 0  Capturing subpattern count = 1
1575  No options  No options
1576  First char = 'a'  First char = 'a'
1577  Need char = 'g'  Need char = 'g'
1578    
1579  /a(?(1)bag|big)*/I  /a(?(1)bag|big)*(.)/I
1580  Capturing subpattern count = 0  Capturing subpattern count = 1
1581  No options  No options
1582  First char = 'a'  First char = 'a'
1583  No need char  No need char
1584    
1585  /a(?(1)bag|big)+/I  /a(?(1)bag|big)+(.)/I
1586  Capturing subpattern count = 0  Capturing subpattern count = 1
1587  No options  No options
1588  First char = 'a'  First char = 'a'
1589  Need char = 'g'  Need char = 'g'
1590    
1591  /a(?(1)b..|b..)/I  /a(?(1)b..|b..)(.)/I
1592  Capturing subpattern count = 0  Capturing subpattern count = 1
1593  No options  No options
1594  First char = 'a'  First char = 'a'
1595  Need char = 'b'  Need char = 'b'
# Line 1633  Need char = 'e' Line 1602  Need char = 'e'
1602    
1603  /a?b?/I  /a?b?/I
1604  Capturing subpattern count = 0  Capturing subpattern count = 0
1605    May match empty string
1606  No options  No options
1607  No first char  No first char
1608  No need char  No need char
# Line 1651  No match Line 1621  No match
1621    
1622  /|-/I  /|-/I
1623  Capturing subpattern count = 0  Capturing subpattern count = 0
1624    May match empty string
1625  No options  No options
1626  No first char  No first char
1627  No need char  No need char
# Line 1665  No need char Line 1636  No need char
1636      \Nabc      \Nabc
1637  No match  No match
1638    
 /a*(b+)(z)(z)/IP  
     aaaabbbbzzzz  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
     aaaabbbbzzzz\O0  
     aaaabbbbzzzz\O1  
  0: aaaabbbbzz  
     aaaabbbbzzzz\O2  
  0: aaaabbbbzz  
  1: bbbb  
     aaaabbbbzzzz\O3  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
     aaaabbbbzzzz\O4  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
     aaaabbbbzzzz\O5  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
   
1639  /^.?abcd/IS  /^.?abcd/IS
1640  Capturing subpattern count = 0  Capturing subpattern count = 0
1641  Options: anchored  Options: anchored
1642  No first char  No first char
1643  Need char = 'd'  Need char = 'd'
1644  Study returned NULL  Subject length lower bound = 4
1645    No starting char list
1646    
1647  /\(             # ( at start  /\(             # ( at start
1648    (?:           # Non-capturing bracket    (?:           # Non-capturing bracket
# Line 1708  Study returned NULL Line 1653  Study returned NULL
1653    \)            # Closing )    \)            # Closing )
1654    /Ix    /Ix
1655  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1656  Options: extended  Options: extended
1657  First char = '('  First char = '('
1658  Need char = ')'  Need char = ')'
# Line 1737  No match Line 1681  No match
1681    
1682  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg
1683  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1684  Options: extended  Options: extended
1685  First char = '('  First char = '('
1686  Need char = ')'  Need char = ')'
# Line 1752  Need char = ')' Line 1695  Need char = ')'
1695    
1696  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix
1697  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1698  Options: extended  Options: extended
1699  First char = '('  First char = '('
1700  Need char = ')'  Need char = ')'
# Line 1771  No match Line 1713  No match
1713    
1714  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix
1715  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1716  Options: extended  Options: extended
1717  First char = '('  First char = '('
1718  Need char = ')'  Need char = ')'
# Line 1782  Need char = ')' Line 1723  Need char = ')'
1723    
1724  /\(  ( (?>[^()]+) | (?R) )* \) /Ix  /\(  ( (?>[^()]+) | (?R) )* \) /Ix
1725  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1726  Options: extended  Options: extended
1727  First char = '('  First char = '('
1728  Need char = ')'  Need char = ')'
# Line 1792  Need char = ')' Line 1732  Need char = ')'
1732    
1733  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1734  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
1735  Options: extended  Options: extended
1736  First char = '('  First char = '('
1737  Need char = ')'  Need char = ')'
# Line 1803  Need char = ')' Line 1742  Need char = ')'
1742    
1743  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1744  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1745  Options: extended  Options: extended
1746  First char = '('  First char = '('
1747  Need char = ')'  Need char = ')'
# Line 1820  Need char = ')' Line 1758  Need char = ')'
1758    
1759  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
1760  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1761  Options: extended  Options: extended
1762  First char = '('  First char = '('
1763  Need char = ')'  Need char = ')'
# Line 1837  Need char = ')' Line 1774  Need char = ')'
1774    
1775  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
1776  Capturing subpattern count = 11  Capturing subpattern count = 11
 Partial matching not supported  
1777  Options: extended  Options: extended
1778  First char = '('  First char = '('
1779  Need char = ')'  Need char = ')'
# Line 1857  Need char = ')' Line 1793  Need char = ')'
1793    
1794  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
1795  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1796  Options: extended  Options: extended
1797  First char = '('  First char = '('
1798  Need char = ')'  Need char = ')'
# Line 1865  Need char = ')' Line 1800  Need char = ')'
1800   0: (abcd(xyz<p>qrs)123)   0: (abcd(xyz<p>qrs)123)
1801   1: abcd(xyz<p>qrs)123   1: abcd(xyz<p>qrs)123
1802   2: 123   2: 123
  3: <unset>  
1803    
1804  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
1805  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
1806  Options: extended  Options: extended
1807  First char = '('  First char = '('
1808  Need char = ')'  Need char = ')'
# Line 1884  Need char = ')' Line 1817  Need char = ')'
1817   2: ij   2: ij
1818   3: (cd(ef)gh)   3: (cd(ef)gh)
1819    
1820  /^[[:alnum:]]/D  /^[[:alnum:]]/DZ
1821  ------------------------------------------------------------------  ------------------------------------------------------------------
1822    0  37 Bra 0          Bra
1823    3     ^          ^
1824    4     [0-9A-Za-z]          [0-9A-Za-z]
1825   37  37 Ket          Ket
1826   40     End          End
1827  ------------------------------------------------------------------  ------------------------------------------------------------------
1828  Capturing subpattern count = 0  Capturing subpattern count = 0
1829  Options: anchored  Options: anchored
1830  No first char  No first char
1831  No need char  No need char
1832    
1833  /^[[:^alnum:]]/D  /^[[:^alnum:]]/DZ
1834  ------------------------------------------------------------------  ------------------------------------------------------------------
1835    0  37 Bra 0          Bra
1836    3     ^          ^
1837    4     [\x00-/:-@[-`{-\xff]          [\x00-/:-@[-`{-\xff] (neg)
1838   37  37 Ket          Ket
1839   40     End          End
1840  ------------------------------------------------------------------  ------------------------------------------------------------------
1841  Capturing subpattern count = 0  Capturing subpattern count = 0
1842  Options: anchored  Options: anchored
1843  No first char  No first char
1844  No need char  No need char
1845    
1846  /^[[:alpha:]]/D  /^[[:alpha:]]/DZ
1847  ------------------------------------------------------------------  ------------------------------------------------------------------
1848    0  37 Bra 0          Bra
1849    3     ^          ^
1850    4     [A-Za-z]          [A-Za-z]
1851   37  37 Ket          Ket
1852   40     End          End
1853  ------------------------------------------------------------------  ------------------------------------------------------------------
1854  Capturing subpattern count = 0  Capturing subpattern count = 0
1855  Options: anchored  Options: anchored
1856  No first char  No first char
1857  No need char  No need char
1858    
1859  /^[[:^alpha:]]/D  /^[[:^alpha:]]/DZ
1860  ------------------------------------------------------------------  ------------------------------------------------------------------
1861    0  37 Bra 0          Bra
1862    3     ^          ^
1863    4     [\x00-@[-`{-\xff]          [\x00-@[-`{-\xff] (neg)
1864   37  37 Ket          Ket
1865   40     End          End
1866  ------------------------------------------------------------------  ------------------------------------------------------------------
1867  Capturing subpattern count = 0  Capturing subpattern count = 0
1868  Options: anchored  Options: anchored
# Line 1941  Capturing subpattern count = 0 Line 1874  Capturing subpattern count = 0
1874  No options  No options
1875  No first char  No first char
1876  No need char  No need char
1877  Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z  Subject length lower bound = 1
1878    Starting chars: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1879    _ a b c d e f g h i j k l m n o p q r s t u v w x y z    _ a b c d e f g h i j k l m n o p q r s t u v w x y z
1880    
1881  /^[[:ascii:]]/D  /^[[:ascii:]]/DZ
1882  ------------------------------------------------------------------  ------------------------------------------------------------------
1883    0  37 Bra 0          Bra
1884    3     ^          ^
1885    4     [\x00-\x7f]          [\x00-\x7f]
1886   37  37 Ket          Ket
1887   40     End          End
1888  ------------------------------------------------------------------  ------------------------------------------------------------------
1889  Capturing subpattern count = 0  Capturing subpattern count = 0
1890  Options: anchored  Options: anchored
1891  No first char  No first char
1892  No need char  No need char
1893    
1894  /^[[:^ascii:]]/D  /^[[:^ascii:]]/DZ
1895  ------------------------------------------------------------------  ------------------------------------------------------------------
1896    0  37 Bra 0          Bra
1897    3     ^          ^
1898    4     [\x80-\xff]          [\x80-\xff] (neg)
1899   37  37 Ket          Ket
1900   40     End          End
1901  ------------------------------------------------------------------  ------------------------------------------------------------------
1902  Capturing subpattern count = 0  Capturing subpattern count = 0
1903  Options: anchored  Options: anchored
1904  No first char  No first char
1905  No need char  No need char
1906    
1907  /^[[:blank:]]/D  /^[[:blank:]]/DZ
1908  ------------------------------------------------------------------  ------------------------------------------------------------------
1909    0  37 Bra 0          Bra
1910    3     ^          ^
1911    4     [\x09 ]          [\x09 ]
1912   37  37 Ket          Ket
1913   40     End          End
1914  ------------------------------------------------------------------  ------------------------------------------------------------------
1915  Capturing subpattern count = 0  Capturing subpattern count = 0
1916  Options: anchored  Options: anchored
1917  No first char  No first char
1918  No need char  No need char
1919    
1920  /^[[:^blank:]]/D  /^[[:^blank:]]/DZ
1921  ------------------------------------------------------------------  ------------------------------------------------------------------
1922    0  37 Bra 0          Bra
1923    3     ^          ^
1924    4     [\x00-\x08\x0a-\x1f!-\xff]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
1925   37  37 Ket          Ket
1926   40     End          End
1927  ------------------------------------------------------------------  ------------------------------------------------------------------
1928  Capturing subpattern count = 0  Capturing subpattern count = 0
1929  Options: anchored  Options: anchored
# Line 1998  No need char Line 1932  No need char
1932    
1933  /[\n\x0b\x0c\x0d[:blank:]]/IS  /[\n\x0b\x0c\x0d[:blank:]]/IS
1934  Capturing subpattern count = 0  Capturing subpattern count = 0
1935    Contains explicit CR or LF match
1936  No options  No options
1937  No first char  No first char
1938  No need char  No need char
1939  Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20  Subject length lower bound = 1
1940    Starting chars: \x09 \x0a \x0b \x0c \x0d \x20
1941    
1942  /^[[:cntrl:]]/D  /^[[:cntrl:]]/DZ
1943  ------------------------------------------------------------------  ------------------------------------------------------------------
1944    0  37 Bra 0          Bra
1945    3     ^          ^
1946    4     [\x00-\x1f\x7f]          [\x00-\x1f\x7f]
1947   37  37 Ket          Ket
1948   40     End          End
1949  ------------------------------------------------------------------  ------------------------------------------------------------------
1950  Capturing subpattern count = 0  Capturing subpattern count = 0
1951  Options: anchored  Options: anchored
1952  No first char  No first char
1953  No need char  No need char
1954    
1955  /^[[:digit:]]/D  /^[[:digit:]]/DZ
1956  ------------------------------------------------------------------  ------------------------------------------------------------------
1957    0  37 Bra 0          Bra
1958    3     ^          ^
1959    4     [0-9]          [0-9]
1960   37  37 Ket          Ket
1961   40     End          End
1962  ------------------------------------------------------------------  ------------------------------------------------------------------
1963  Capturing subpattern count = 0  Capturing subpattern count = 0
1964  Options: anchored  Options: anchored
1965  No first char  No first char
1966  No need char  No need char
1967    
1968  /^[[:graph:]]/D  /^[[:graph:]]/DZ
1969  ------------------------------------------------------------------  ------------------------------------------------------------------
1970    0  37 Bra 0          Bra
1971    3     ^          ^
1972    4     [!-~]          [!-~]
1973   37  37 Ket          Ket
1974   40     End          End
1975  ------------------------------------------------------------------  ------------------------------------------------------------------
1976  Capturing subpattern count = 0  Capturing subpattern count = 0
1977  Options: anchored  Options: anchored
1978  No first char  No first char
1979  No need char  No need char
1980    
1981  /^[[:lower:]]/D  /^[[:lower:]]/DZ
1982  ------------------------------------------------------------------  ------------------------------------------------------------------
1983    0  37 Bra 0          Bra
1984    3     ^          ^
1985    4     [a-z]          [a-z]
1986   37  37 Ket          Ket
1987   40     End          End
1988  ------------------------------------------------------------------  ------------------------------------------------------------------
1989  Capturing subpattern count = 0  Capturing subpattern count = 0
1990  Options: anchored  Options: anchored
1991  No first char  No first char
1992  No need char  No need char
1993    
1994  /^[[:print:]]/D  /^[[:print:]]/DZ
1995  ------------------------------------------------------------------  ------------------------------------------------------------------
1996    0  37 Bra 0          Bra
1997    3     ^          ^
1998    4     [ -~]          [ -~]
1999   37  37 Ket          Ket
2000   40     End          End
2001  ------------------------------------------------------------------  ------------------------------------------------------------------
2002  Capturing subpattern count = 0  Capturing subpattern count = 0
2003  Options: anchored  Options: anchored
2004  No first char  No first char
2005  No need char  No need char
2006    
2007  /^[[:punct:]]/D  /^[[:punct:]]/DZ
2008  ------------------------------------------------------------------  ------------------------------------------------------------------
2009    0  37 Bra 0          Bra
2010    3     ^          ^
2011    4     [!-/:-@[-`{-~]          [!-/:-@[-`{-~]
2012   37  37 Ket          Ket
2013   40     End          End
2014  ------------------------------------------------------------------  ------------------------------------------------------------------
2015  Capturing subpattern count = 0  Capturing subpattern count = 0
2016  Options: anchored  Options: anchored
2017  No first char  No first char
2018  No need char  No need char
2019    
2020  /^[[:space:]]/D  /^[[:space:]]/DZ
2021  ------------------------------------------------------------------  ------------------------------------------------------------------
2022    0  37 Bra 0          Bra
2023    3     ^          ^
2024    4     [\x09-\x0d ]          [\x09-\x0d ]
2025   37  37 Ket          Ket
2026   40     End          End
2027  ------------------------------------------------------------------  ------------------------------------------------------------------
2028  Capturing subpattern count = 0  Capturing subpattern count = 0
2029  Options: anchored  Options: anchored
2030  No first char  No first char
2031  No need char  No need char
2032    
2033  /^[[:upper:]]/D  /^[[:upper:]]/DZ
2034  ------------------------------------------------------------------  ------------------------------------------------------------------
2035    0  37 Bra 0          Bra
2036    3     ^          ^
2037    4     [A-Z]          [A-Z]
2038   37  37 Ket          Ket
2039   40     End          End
2040  ------------------------------------------------------------------  ------------------------------------------------------------------
2041  Capturing subpattern count = 0  Capturing subpattern count = 0
2042  Options: anchored  Options: anchored
2043  No first char  No first char
2044  No need char  No need char
2045    
2046  /^[[:xdigit:]]/D  /^[[:xdigit:]]/DZ
2047  ------------------------------------------------------------------  ------------------------------------------------------------------
2048    0  37 Bra 0          Bra
2049    3     ^          ^
2050    4     [0-9A-Fa-f]          [0-9A-Fa-f]
2051   37  37 Ket          Ket
2052   40     End          End
2053  ------------------------------------------------------------------  ------------------------------------------------------------------
2054  Capturing subpattern count = 0  Capturing subpattern count = 0
2055  Options: anchored  Options: anchored
2056  No first char  No first char
2057  No need char  No need char
2058    
2059  /^[[:word:]]/D  /^[[:word:]]/DZ
2060  ------------------------------------------------------------------  ------------------------------------------------------------------
2061    0  37 Bra 0          Bra
2062    3     ^          ^
2063    4     [0-9A-Z_a-z]          [0-9A-Z_a-z]
2064   37  37 Ket          Ket
2065   40     End          End
2066  ------------------------------------------------------------------  ------------------------------------------------------------------
2067  Capturing subpattern count = 0  Capturing subpattern count = 0
2068  Options: anchored  Options: anchored
2069  No first char  No first char
2070  No need char  No need char
2071    
2072  /^[[:^cntrl:]]/D  /^[[:^cntrl:]]/DZ
2073  ------------------------------------------------------------------  ------------------------------------------------------------------
2074    0  37 Bra 0          Bra
2075    3     ^          ^
2076    4     [ -~\x80-\xff]          [ -~\x80-\xff] (neg)
2077   37  37 Ket          Ket
2078   40     End          End
2079  ------------------------------------------------------------------  ------------------------------------------------------------------
2080  Capturing subpattern count = 0  Capturing subpattern count = 0
2081  Options: anchored  Options: anchored
2082  No first char  No first char
2083  No need char  No need char
2084    
2085  /^[12[:^digit:]]/D  /^[12[:^digit:]]/DZ
2086  ------------------------------------------------------------------  ------------------------------------------------------------------
2087    0  37 Bra 0          Bra
2088    3     ^          ^
2089    4     [\x00-/12:-\xff]          [\x00-/12:-\xff] (neg)
2090   37  37 Ket          Ket
2091   40     End          End
2092  ------------------------------------------------------------------  ------------------------------------------------------------------
2093  Capturing subpattern count = 0  Capturing subpattern count = 0
2094  Options: anchored  Options: anchored
2095  No first char  No first char
2096  No need char  No need char
2097    
2098  /^[[:^blank:]]/D  /^[[:^blank:]]/DZ
2099  ------------------------------------------------------------------  ------------------------------------------------------------------
2100    0  37 Bra 0          Bra
2101    3     ^          ^
2102    4     [\x00-\x08\x0a-\x1f!-\xff]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
2103   37  37 Ket          Ket
2104   40     End          End
2105  ------------------------------------------------------------------  ------------------------------------------------------------------
2106  Capturing subpattern count = 0  Capturing subpattern count = 0
2107  Options: anchored  Options: anchored
2108  No first char  No first char
2109  No need char  No need char
2110    
2111  /[01[:alpha:]%]/D  /[01[:alpha:]%]/DZ
2112  ------------------------------------------------------------------  ------------------------------------------------------------------
2113    0  36 Bra 0          Bra
2114    3     [%01A-Za-z]          [%01A-Za-z]
2115   36  36 Ket          Ket
2116   39     End          End
2117  ------------------------------------------------------------------  ------------------------------------------------------------------
2118  Capturing subpattern count = 0  Capturing subpattern count = 0
2119  No options  No options
# Line 2247  Need char = 'd' Line 2183  Need char = 'd'
2183  /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
2184  Capturing subpattern count = 271  Capturing subpattern count = 271
2185  Max back reference = 270  Max back reference = 270
 Partial matching not supported  
2186  No options  No options
2187  No first char  No first char
2188  No need char  No need char
# Line 2693  No options Line 2628  No options
2628  First char = '-'  First char = '-'
2629  Need char = '-'  Need char = '-'
2630    
2631  /#/IxMD  /#/IxDZ
 Memory allocation (code space): 7  
2632  ------------------------------------------------------------------  ------------------------------------------------------------------
2633    0   3 Bra 0          Bra
2634    3   3 Ket          Ket
2635    6     End          End
2636  ------------------------------------------------------------------  ------------------------------------------------------------------
2637  Capturing subpattern count = 0  Capturing subpattern count = 0
2638    May match empty string
2639  Options: extended  Options: extended
2640  No first char  No first char
2641  No need char  No need char
2642    
2643  /a#/IxMD  /a#/IxDZ
 Memory allocation (code space): 9  
2644  ------------------------------------------------------------------  ------------------------------------------------------------------
2645    0   5 Bra 0          Bra
2646    3     a          a
2647    5   5 Ket          Ket
2648    8     End          End
2649  ------------------------------------------------------------------  ------------------------------------------------------------------
2650  Capturing subpattern count = 0  Capturing subpattern count = 0
2651  Options: extended  Options: extended
2652  First char = 'a'  First char = 'a'
2653  No need char  No need char
2654    
2655  /[\s]/D  /[\s]/DZ
2656  ------------------------------------------------------------------  ------------------------------------------------------------------
2657    0  36 Bra 0          Bra
2658    3     [\x09\x0a\x0c\x0d ]          [\x09-\x0d ]
2659   36  36 Ket          Ket
2660   39     End          End
2661  ------------------------------------------------------------------  ------------------------------------------------------------------
2662  Capturing subpattern count = 0  Capturing subpattern count = 0
2663  No options  No options
2664  No first char  No first char
2665  No need char  No need char
2666    
2667  /[\S]/D  /[\S]/DZ
2668  ------------------------------------------------------------------  ------------------------------------------------------------------
2669    0  36 Bra 0          Bra
2670    3     [\x00-\x08\x0b\x0e-\x1f!-\xff]          [\x00-\x08\x0e-\x1f!-\xff] (neg)
2671   36  36 Ket          Ket
2672   39     End          End
2673  ------------------------------------------------------------------  ------------------------------------------------------------------
2674  Capturing subpattern count = 0  Capturing subpattern count = 0
2675  No options  No options
2676  No first char  No first char
2677  No need char  No need char
2678    
2679  /a(?i)b/D  /a(?i)b/DZ
2680  ------------------------------------------------------------------  ------------------------------------------------------------------
2681    0   9 Bra 0          Bra
2682    3     a          a
2683    5  01 Opt       /i b
2684    7  NC b          Ket
2685    9   9 Ket          End
  12     End  
2686  ------------------------------------------------------------------  ------------------------------------------------------------------
2687  Capturing subpattern count = 0  Capturing subpattern count = 0
2688  No options  No options
# Line 2764  No match Line 2697  No match
2697      AB      AB
2698  No match  No match
2699    
2700  /(a(?i)b)/D  /(a(?i)b)/DZ
2701  ------------------------------------------------------------------  ------------------------------------------------------------------
2702    0  19 Bra 0          Bra
2703    3  11 Bra 1          CBra 1
2704    8     a          a
2705   10  01 Opt       /i b
2706   12  NC b          Ket
2707   14  11 Ket          Ket
2708   17  00 Opt          End
  19  19 Ket  
  22     End  
2709  ------------------------------------------------------------------  ------------------------------------------------------------------
2710  Capturing subpattern count = 1  Capturing subpattern count = 1
2711  No options  No options
# Line 2791  No match Line 2722  No match
2722      AB      AB
2723  No match  No match
2724    
2725  /   (?i)abc/IxD  /   (?i)abc/IxDZ
2726  ------------------------------------------------------------------  ------------------------------------------------------------------
2727    0   9 Bra 0          Bra
2728    3  NC abc       /i abc
2729    9   9 Ket          Ket
2730   12     End          End
2731  ------------------------------------------------------------------  ------------------------------------------------------------------
2732  Capturing subpattern count = 0  Capturing subpattern count = 0
2733  Options: caseless extended  Options: caseless extended
# Line 2804  First char = 'a' (caseless) Line 2735  First char = 'a' (caseless)
2735  Need char = 'c' (caseless)  Need char = 'c' (caseless)
2736    
2737  /#this is a comment  /#this is a comment
2738    (?i)abc/IxD    (?i)abc/IxDZ
2739  ------------------------------------------------------------------  ------------------------------------------------------------------
2740    0   9 Bra 0          Bra
2741    3  NC abc       /i abc
2742    9   9 Ket          Ket
2743   12     End          End
2744  ------------------------------------------------------------------  ------------------------------------------------------------------
2745  Capturing subpattern count = 0  Capturing subpattern count = 0
2746  Options: caseless extended  Options: caseless extended
2747  First char = 'a' (caseless)  First char = 'a' (caseless)
2748  Need char = 'c' (caseless)  Need char = 'c' (caseless)
2749    
2750  /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D  /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
2751  ------------------------------------------------------------------  ------------------------------------------------------------------
2752    0 603 Bra 0          Bra
2753    3     123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890          123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2754  603 603 Ket          Ket
2755  606     End          End
2756  ------------------------------------------------------------------  ------------------------------------------------------------------
2757  Capturing subpattern count = 0  Capturing subpattern count = 0
2758  No options  No options
2759  First char = '1'  First char = '1'
2760  Need char = '0'  Need char = '0'
2761    
2762  /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D  /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
2763  ------------------------------------------------------------------  ------------------------------------------------------------------
2764    0 603 Bra 0          Bra
2765    3     123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890          123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2766  603 603 Ket          Ket
2767  606     End          End
2768  ------------------------------------------------------------------  ------------------------------------------------------------------
2769  Capturing subpattern count = 0  Capturing subpattern count = 0
2770  No options  No options
2771  First char = '1'  First char = '1'
2772  Need char = '0'  Need char = '0'
2773    
2774  /\Q\E/D  /\Q\E/DZ
2775  ------------------------------------------------------------------  ------------------------------------------------------------------
2776    0   3 Bra 0          Bra
2777    3   3 Ket          Ket
2778    6     End          End
2779  ------------------------------------------------------------------  ------------------------------------------------------------------
2780  Capturing subpattern count = 0  Capturing subpattern count = 0
2781    May match empty string
2782  No options  No options
2783  No first char  No first char
2784  No need char  No need char
2785      \      \
2786   0:   0:
2787    
2788  /\Q\Ex/D  /\Q\Ex/DZ
2789  ------------------------------------------------------------------  ------------------------------------------------------------------
2790    0   5 Bra 0          Bra
2791    3     x          x
2792    5   5 Ket          Ket
2793    8     End          End
2794  ------------------------------------------------------------------  ------------------------------------------------------------------
2795  Capturing subpattern count = 0  Capturing subpattern count = 0
2796  No options  No options
2797  First char = 'x'  First char = 'x'
2798  No need char  No need char
2799    
2800  / \Q\E/D  / \Q\E/DZ
2801  ------------------------------------------------------------------  ------------------------------------------------------------------
2802    0   5 Bra 0          Bra
2803    3  
2804    5   5 Ket          Ket
2805    8     End          End
2806  ------------------------------------------------------------------  ------------------------------------------------------------------
2807  Capturing subpattern count = 0  Capturing subpattern count = 0
2808  No options  No options
2809  First char = ' '  First char = ' '
2810  No need char  No need char
2811    
2812  /a\Q\E/D  /a\Q\E/DZ
2813  ------------------------------------------------------------------  ------------------------------------------------------------------
2814    0   5 Bra 0          Bra
2815    3     a          a
2816    5   5 Ket          Ket
2817    8     End          End
2818  ------------------------------------------------------------------  ------------------------------------------------------------------
2819  Capturing subpattern count = 0  Capturing subpattern count = 0
2820  No options  No options
# Line 2895  No need char Line 2827  No need char
2827    bac    bac
2828   0: a   0: a
2829    
2830  /a\Q\Eb/D  /a\Q\Eb/DZ
2831  ------------------------------------------------------------------  ------------------------------------------------------------------
2832    0   7 Bra 0          Bra
2833    3     ab          ab
2834    7   7 Ket          Ket
2835   10     End          End
2836  ------------------------------------------------------------------  ------------------------------------------------------------------
2837  Capturing subpattern count = 0  Capturing subpattern count = 0
2838  No options  No options
# Line 2909  Need char = 'b' Line 2841  Need char = 'b'
2841    abc    abc
2842   0: ab   0: ab
2843    
2844  /\Q\Eabc/D  /\Q\Eabc/DZ
2845  ------------------------------------------------------------------  ------------------------------------------------------------------
2846    0   9 Bra 0          Bra
2847    3     abc          abc
2848    9   9 Ket          Ket
2849   12     End          End
2850  ------------------------------------------------------------------  ------------------------------------------------------------------
2851  Capturing subpattern count = 0  Capturing subpattern count = 0
2852  No options  No options
2853  First char = 'a'  First char = 'a'
2854  Need char = 'c'  Need char = 'c'
2855    
2856  /x*+\w/D  /x*+\w/DZ
2857  ------------------------------------------------------------------  ------------------------------------------------------------------
2858    0   6 Bra 0          Bra
2859    3     x*+          x*+
2860    5     \w          \w
2861    6   6 Ket          Ket
2862    9     End          End
2863  ------------------------------------------------------------------  ------------------------------------------------------------------
2864  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2865  No options  No options
2866  No first char  No first char
2867  No need char  No need char
# Line 2939  No need char Line 2870  No need char
2870      xxxxx      xxxxx
2871  No match  No match
2872    
2873  /x?+/D  /x?+/DZ
2874  ------------------------------------------------------------------  ------------------------------------------------------------------
2875    0   5 Bra 0          Bra
2876    3     x?+          x?+
2877    5   5 Ket          Ket
2878    8     End          End
2879  ------------------------------------------------------------------  ------------------------------------------------------------------
2880  Capturing subpattern count = 0  Capturing subpattern count = 0
2881    May match empty string
2882  No options  No options
2883  No first char  No first char
2884  No need char  No need char
2885    
2886  /x++/D  /x++/DZ
2887  ------------------------------------------------------------------  ------------------------------------------------------------------
2888    0   5 Bra 0          Bra
2889    3     x++          x++
2890    5   5 Ket          Ket
2891    8     End          End
2892  ------------------------------------------------------------------  ------------------------------------------------------------------
2893  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2894  No options  No options
2895  First char = 'x'  First char = 'x'
2896  No need char  No need char
2897    
2898  /x{1,3}+/D  /x{1,3}+/BZO
2899  ------------------------------------------------------------------  ------------------------------------------------------------------
2900    0  15 Bra 0          Bra
2901    3   9 Once          x
2902    6     x          x{0,2}+
2903    8     x{0,2}          Ket
2904   12   9 Ket          End
2905   15  15 Ket  ------------------------------------------------------------------
2906   18     End  
2907    /x{1,3}+/BZOi
2908    ------------------------------------------------------------------
2909            Bra
2910         /i x
2911         /i x{0,2}+
2912            Ket
2913            End
2914  ------------------------------------------------------------------  ------------------------------------------------------------------
 Capturing subpattern count = 0  
 Partial matching not supported  
 No options  
 First char = 'x'  
 No need char  
2915    
2916  /(x)*+/D  /[^x]{1,3}+/BZO
2917  ------------------------------------------------------------------  ------------------------------------------------------------------
2918    0  20 Bra 0          Bra
2919    3  14 Once          [^x]
2920    6     Brazero          [^x]{0,2}+
2921    7   7 Bra 1          Ket
2922   12     x          End
2923   14   7 KetRmax  ------------------------------------------------------------------
2924   17  14 Ket  
2925   20  20 Ket  /[^x]{1,3}+/BZOi
2926   23     End  ------------------------------------------------------------------
2927            Bra
2928         /i [^x]
2929         /i [^x]{0,2}+
2930            Ket
2931            End
2932    ------------------------------------------------------------------
2933    
2934    /(x)*+/DZ
2935    ------------------------------------------------------------------
2936            Bra
2937            Braposzero
2938            CBraPos 1
2939            x
2940            KetRpos
2941            Ket
2942            End
2943  ------------------------------------------------------------------  ------------------------------------------------------------------
2944  Capturing subpattern count = 1  Capturing subpattern count = 1
2945    May match empty string
2946  No options  No options
2947  No first char  No first char
2948  No need char  No need char
2949    
2950  /^(\w++|\s++)*$/I  /^(\w++|\s++)*$/I
2951  Capturing subpattern count = 1  Capturing subpattern count = 1
2952  Partial matching not supported  May match empty string
2953  Options: anchored  Options: anchored
2954  No first char  No first char
2955  No need char  No need char
# Line 3013  No match Line 2963  No match
2963    
2964  /(\d++)(\w)/I  /(\d++)(\w)/I
2965  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
2966  No options  No options
2967  No first char  No first char
2968  No need char  No need char
# Line 3028  No match Line 2977  No match
2977    
2978  /a++b/I  /a++b/I
2979  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
2980  No options  No options
2981  First char = 'a'  First char = 'a'
2982  Need char = 'b'  Need char = 'b'
# Line 3037  Need char = 'b' Line 2985  Need char = 'b'
2985    
2986  /(a++b)/I  /(a++b)/I
2987  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2988  No options  No options
2989  First char = 'a'  First char = 'a'
2990  Need char = 'b'  Need char = 'b'
# Line 3047  Need char = 'b' Line 2994  Need char = 'b'
2994    
2995  /(a++)b/I  /(a++)b/I
2996  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
2997  No options  No options
2998  First char = 'a'  First char = 'a'
2999  Need char = 'b'  Need char = 'b'
# Line 3057  Need char = 'b' Line 3003  Need char = 'b'
3003    
3004  /([^()]++|\([^()]*\))+/I  /([^()]++|\([^()]*\))+/I
3005  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3006  No options  No options
3007  No first char  No first char
3008  No need char  No need char
# Line 3067  No need char Line 3012  No need char
3012    
3013  /\(([^()]++|\([^()]+\))+\)/I  /\(([^()]++|\([^()]+\))+\)/I
3014  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3015  No options  No options
3016  First char = '('  First char = '('
3017  Need char = ')'  Need char = ')'
# Line 3082  No match Line 3026  No match
3026      ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa      ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
3027  No match  No match
3028    
3029  /(abc){1,3}+/D  /(abc){1,3}+/DZ
3030  ------------------------------------------------------------------  ------------------------------------------------------------------
3031    0  59 Bra 0          Bra
3032    3  53 Once          Once
3033    6  11 Bra 1          CBra 1
3034   11     abc          abc
3035   17  11 Ket          Ket
3036   20     Brazero          Brazero
3037   21  32 Bra 0          Bra
3038   24  11 Bra 1          CBra 1
3039   29     abc          abc
3040   35  11 Ket          Ket
3041   38     Brazero          Brazero
3042   39  11 Bra 1          CBra 1
3043   44     abc          abc
3044   50  11 Ket          Ket
3045   53  32 Ket          Ket
3046   56  53 Ket          Ket
3047   59  59 Ket          Ket
3048   62     End          End
3049  ------------------------------------------------------------------  ------------------------------------------------------------------
3050  Capturing subpattern count = 1  Capturing subpattern count = 1
3051  No options  No options
# Line 3120  Failed: nothing to repeat at offset 7 Line 3064  Failed: nothing to repeat at offset 7
3064  /a{2,3}?+b/IU  /a{2,3}?+b/IU
3065  Failed: nothing to repeat at offset 7  Failed: nothing to repeat at offset 7
3066    
3067  /x(?U)a++b/D  /x(?U)a++b/DZ
3068  ------------------------------------------------------------------  ------------------------------------------------------------------
3069    0   9 Bra 0          Bra
3070    3     x          x
3071    5     a++          a++
3072    7     b          b
3073    9   9 Ket          Ket
3074   12     End          End
3075  ------------------------------------------------------------------  ------------------------------------------------------------------
3076  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3077  No options  No options
3078  First char = 'x'  First char = 'x'
3079  Need char = 'b'  Need char = 'b'
3080      xaaaab      xaaaab
3081   0: xaaaab   0: xaaaab
3082    
3083  /(?U)xa++b/D  /(?U)xa++b/DZ
3084  ------------------------------------------------------------------  ------------------------------------------------------------------
3085    0   9 Bra 0          Bra
3086    3     x          x
3087    5     a++          a++
3088    7     b          b
3089    9   9 Ket          Ket
3090   12     End          End
3091  ------------------------------------------------------------------  ------------------------------------------------------------------
3092  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3093  Options: ungreedy  Options: ungreedy
3094  First char = 'x'  First char = 'x'
3095  Need char = 'b'  Need char = 'b'
3096      xaaaab      xaaaab
3097   0: xaaaab   0: xaaaab
3098    
3099  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/D  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
3100  ------------------------------------------------------------------  ------------------------------------------------------------------
3101    0 116 Bra 0          Bra
3102    3     ^          ^
3103    4 109 Bra 1          CBra 1
3104    9   7 Bra 2          CBra 2
3105   14     a+          a+
3106   16   7 Ket          Ket
3107   19  39 Bra 3          CBra 3
3108   24     [ab]+?          [ab]+?
3109   58  39 Ket          Ket
3110   61  39 Bra 4          CBra 4
3111   66     [bc]+          [bc]+
3112  100  39 Ket          Ket
3113  103   7 Bra 5          CBra 5
3114  108     \w*          \w*+
3115  110   7 Ket          Ket
3116  113 109 Ket          Ket
3117  116 116 Ket          Ket
3118  119     End          End
3119  ------------------------------------------------------------------  ------------------------------------------------------------------
3120  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
3121  Options: anchored  Options: anchored
3122  No first char  No first char
3123  No need char  No need char
3124    
3125  /^x(?U)a+b/D  /^x(?U)a+b/DZ
3126  ------------------------------------------------------------------  ------------------------------------------------------------------
3127    0  10 Bra 0          Bra
3128    3     ^          ^
3129    4     x          x
3130    6     a++          a++
3131    8     b          b
3132   10  10 Ket          Ket
3133   13     End          End
3134  ------------------------------------------------------------------  ------------------------------------------------------------------
3135  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3136  Options: anchored  Options: anchored
3137  No first char  No first char
3138  Need char = 'b'  Need char = 'b'
3139    
3140  /^x(?U)(a+)b/D  /^x(?U)(a+)b/DZ
3141  ------------------------------------------------------------------  ------------------------------------------------------------------
3142    0  18 Bra 0          Bra
3143    3     ^          ^
3144    4     x          x
3145    6   7 Bra 1          CBra 1
3146   11     a+?          a+?
3147   13   7 Ket          Ket
3148   16     b          b
3149   18  18 Ket          Ket
3150   21     End          End
3151  ------------------------------------------------------------------  ------------------------------------------------------------------
3152  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3153  Options: anchored  Options: anchored
3154  No first char  No first char
3155  Need char = 'b'  Need char = 'b'
# Line 3225  Failed: POSIX collating elements are not Line 3164  Failed: POSIX collating elements are not
3164  Failed: POSIX named classes are supported only within a class at offset 0  Failed: POSIX named classes are supported only within a class at offset 0
3165    
3166  /\l/I  /\l/I
3167  Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1  Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1
3168    
3169  /\L/I  /\L/I
3170  Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1  Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1
3171    
3172  /\N{name}/I  /\N{name}/I
3173  Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1  Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1
3174    
3175  /\u/I  /\u/I
3176  Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1  Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1
3177    
3178  /\U/I  /\U/I
3179  Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1  Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1
3180    
3181    /a{1,3}b/U
3182        ab
3183     0: ab
3184    
3185  /[/I  /[/I
3186  Failed: missing terminating ] for character class at offset 1  Failed: missing terminating ] for character class at offset 1
# Line 3248  Failed: missing terminating ] for charac Line 3191  Failed: missing terminating ] for charac
3191  /[[:space:]/I  /[[:space:]/I
3192  Failed: missing terminating ] for character class at offset 10  Failed: missing terminating ] for character class at offset 10
3193    
3194  /[\s]/IDM  /[\s]/IDZ
 Memory allocation (code space): 40  
3195  ------------------------------------------------------------------  ------------------------------------------------------------------
3196    0  36 Bra 0          Bra
3197    3     [\x09\x0a\x0c\x0d ]          [\x09-\x0d ]
3198   36  36 Ket          Ket
3199   39     End          End
3200  ------------------------------------------------------------------  ------------------------------------------------------------------
3201  Capturing subpattern count = 0  Capturing subpattern count = 0
3202  No options  No options
3203  No first char  No first char
3204  No need char  No need char
3205    
3206  /[[:space:]]/IDM  /[[:space:]]/IDZ
 Memory allocation (code space): 40  
3207  ------------------------------------------------------------------  ------------------------------------------------------------------
3208    0  36 Bra 0          Bra
3209    3     [\x09-\x0d ]          [\x09-\x0d ]
3210   36  36 Ket          Ket
3211   39     End          End
3212  ------------------------------------------------------------------  ------------------------------------------------------------------
3213  Capturing subpattern count = 0  Capturing subpattern count = 0
3214  No options  No options
3215  No first char  No first char
3216  No need char  No need char
3217    
3218  /[[:space:]abcde]/IDM  /[[:space:]abcde]/IDZ
 Memory allocation (code space): 40  
3219  ------------------------------------------------------------------  ------------------------------------------------------------------
3220    0  36 Bra 0          Bra
3221    3     [\x09-\x0d a-e]          [\x09-\x0d a-e]
3222   36  36 Ket          Ket
3223   39     End          End
3224  ------------------------------------------------------------------  ------------------------------------------------------------------
3225  Capturing subpattern count = 0  Capturing subpattern count = 0
3226  No options  No options
# Line 3289  No need char Line 3229  No need char
3229    
3230  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix
3231  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
3232  Options: extended  Options: extended
3233  First char = '<'  First char = '<'
3234  Need char = '>'  Need char = '>'
# Line 3310  No match Line 3249  No match
3249      <abc      <abc
3250  No match  No match
3251    
3252  |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDM  |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
 Memory allocation (code space): 826  
3253  ------------------------------------------------------------------  ------------------------------------------------------------------
3254    0 822 Bra 0          Bra
3255    3     8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X          8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
3256  821     \b          \b
3257  822 822 Ket          Ket
3258  825     End          End
3259  ------------------------------------------------------------------  ------------------------------------------------------------------
3260  Capturing subpattern count = 0  Capturing subpattern count = 0
3261    Max lookbehind = 1
3262  No options  No options
3263  First char = '8'  First char = '8'
3264  Need char = 'X'  Need char = 'X'
3265    
3266  |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDM  |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
 Memory allocation (code space): 816  
3267  ------------------------------------------------------------------  ------------------------------------------------------------------
3268    0 812 Bra 0          Bra
3269    3     $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X          $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
3270  811     \b          \b
3271  812 812 Ket          Ket
3272  815     End          End
3273  ------------------------------------------------------------------  ------------------------------------------------------------------
3274  Capturing subpattern count = 0  Capturing subpattern count = 0
3275    Max lookbehind = 1
3276  No options  No options
3277  First char = '$'  First char = '$'
3278  Need char = 'X'  Need char = 'X'
# Line 3341  Need char = 'X' Line 3280  Need char = 'X'
3280  /(.*)\d+\1/I  /(.*)\d+\1/I
3281  Capturing subpattern count = 1  Capturing subpattern count = 1
3282  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3283  No options  No options
3284  No first char  No first char
3285  No need char  No need char
3286    
3287  /(.*)\d+/I  /(.*)\d+/I
3288  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3289  No options  No options
3290  First char at start or follows newline  First char at start or follows newline
3291  No need char  No need char
# Line 3356  No need char Line 3293  No need char
3293  /(.*)\d+\1/Is  /(.*)\d+\1/Is
3294  Capturing subpattern count = 1  Capturing subpattern count = 1
3295  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3296  Options: dotall  Options: dotall
3297  No first char  No first char
3298  No need char  No need char
3299    
3300  /(.*)\d+/Is  /(.*)\d+/Is
3301  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
3302  Options: anchored dotall  Options: anchored dotall
3303  No first char  No first char
3304  No need char  No need char
# Line 3371  No need char Line 3306  No need char
3306  /(.*(xyz))\d+\2/I  /(.*(xyz))\d+\2/I
3307  Capturing subpattern count = 2  Capturing subpattern count = 2
3308  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
3309  No options  No options
3310  First char at start or follows newline  First char at start or follows newline
3311  Need char = 'z'  Need char = 'z'
# Line 3379  Need char = 'z' Line 3313  Need char = 'z'
3313  /((.*))\d+\1/I  /((.*))\d+\1/I
3314  Capturing subpattern count = 2  Capturing subpattern count = 2
3315  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
3316  No options  No options
3317  No first char  No first char
3318  No need char  No need char
# Line 3396  Need char = 'b' Line 3329  Need char = 'b'
3329    
3330  /(?=a).*/I  /(?=a).*/I
3331  Capturing subpattern count = 0  Capturing subpattern count = 0
3332  Partial matching not supported  May match empty string
3333  No options  No options
3334  First char = 'a'  First char = 'a'
3335  No need char  No need char
# Line 3415  Need char = 'z' (caseless) Line 3348  Need char = 'z' (caseless)
3348    
3349  /(?=a)(?=b)/I  /(?=a)(?=b)/I
3350  Capturing subpattern count = 0  Capturing subpattern count = 0
3351    May match empty string
3352  No options  No options
3353  First char = 'a'  First char = 'a'
3354  No need char  No need char
# Line 3443  No options Line 3377  No options
3377  No first char  No first char
3378  Need char = 'a'  Need char = 'a'
3379    
3380  /(?(1)ab|ac)/I  /(?(1)ab|ac)(.)/I
3381  Capturing subpattern count = 0  Capturing subpattern count = 1
3382  No options  No options
3383  First char = 'a'  First char = 'a'
3384  No need char  No need char
3385    
3386  /(?(1)abz|acz)/I  /(?(1)abz|acz)(.)/I
3387  Capturing subpattern count = 0  Capturing subpattern count = 1
3388  No options  No options
3389  First char = 'a'  First char = 'a'
3390  Need char = 'z'  Need char = 'z'
3391    
3392  /(?(1)abz)/I  /(?(1)abz)(.)/I
3393  Capturing subpattern count = 0  Capturing subpattern count = 1
3394  No options  No options
3395  No first char  No first char
3396  No need char  No need char
3397    
3398  /(?(1)abz)123/I  /(?(1)abz)(1)23/I
3399  Capturing subpattern count = 0  Capturing subpattern count = 1
3400  No options  No options
3401  No first char  No first char
3402  Need char = '3'  Need char = '3'
# Line 3481  Need char = 'a' Line 3415  Need char = 'a'
3415    
3416  /(a)*/I  /(a)*/I
3417  Capturing subpattern count = 1  Capturing subpattern count = 1
3418    May match empty string
3419  No options  No options
3420  No first char  No first char
3421  No need char  No need char
# Line 3502  Capturing subpattern count = 0 Line 3437  Capturing subpattern count = 0
3437  No options  No options
3438  No first char  No first char
3439  No need char  No need char
3440  Starting byte set: a b  Subject length lower bound = 1
3441    Starting chars: a b
3442    
3443  /[^a]/I  /[^a]/I
3444  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 3521  Capturing subpattern count = 0 Line 3457  Capturing subpattern count = 0
3457  No options  No options
3458  No first char  No first char
3459  Need char = '6'  Need char = '6'
3460  Starting byte set: 0 1 2 3 4 5 6 7 8 9  Subject length lower bound = 4
3461    Starting chars: 0 1 2 3 4 5 6 7 8 9
3462    
3463  /a^b/I  /a^b/I
3464  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 3554  Capturing subpattern count = 0 Line 3491  Capturing subpattern count = 0
3491  Options: caseless  Options: caseless
3492  No first char  No first char
3493  No need char  No need char
3494  Starting byte set: A B a b  Subject length lower bound = 1
3495    Starting chars: A B a b
3496    
3497  /[ab](?i)cd/IS  /[ab](?i)cd/IS
3498  Capturing subpattern count = 0  Capturing subpattern count = 0
3499  No options  No options
3500  No first char  No first char
3501  Need char = 'd' (caseless)  Need char = 'd' (caseless)
3502  Starting byte set: a b  Subject length lower bound = 3
3503    Starting chars: a b
3504    
3505  /abc(?C)def/I  /abc(?C)def/I
3506  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 3596  Need char = 'f' Line 3535  Need char = 'f'
3535    1    ^    ^     f    1    ^    ^     f
3536   0: abcdef   0: abcdef
3537    
3538  /(?C1)\dabc(?C2)def/I  /(?C1)\dabc(?C2)def/IS
3539    Capturing subpattern count = 0
3540    No options
3541    No first char
3542    Need char = 'f'
3543    Subject length lower bound = 7
3544    Starting chars: 0 1 2 3 4 5 6 7 8 9
3545        1234abcdef
3546    --->1234abcdef
3547      1 ^              \d
3548      1  ^             \d
3549      1   ^            \d
3550      1    ^           \d
3551      2    ^   ^       d
3552     0: 4abcdef
3553        *** Failers
3554    No match
3555        abcdef
3556    No match
3557    
3558    /(?C1)\dabc(?C2)def/ISS
3559  Capturing subpattern count = 0  Capturing subpattern count = 0
3560  No options  No options
3561  No first char  No first char
# Line 3685  No match Line 3644  No match
3644    
3645  /(?C0)(abc(?C1))*/I  /(?C0)(abc(?C1))*/I
3646  Capturing subpattern count = 1  Capturing subpattern count = 1
3647    May match empty string
3648  No options  No options
3649  No first char  No first char
3650  No need char  No need char
# Line 3718  No need char Line 3678  No need char
3678    
3679  /(\d{3}(?C))*/I  /(\d{3}(?C))*/I
3680  Capturing subpattern count = 1  Capturing subpattern count = 1
3681  Partial matching not supported  May match empty string
3682  No options  No options
3683  No first char  No first char
3684  No need char  No need char
# Line 3833  Callout 2: last capture = -1 Line 3793  Callout 2: last capture = -1
3793    
3794  /(?<=(abc)(?C))xyz/I  /(?<=(abc)(?C))xyz/I
3795  Capturing subpattern count = 1  Capturing subpattern count = 1
3796    Max lookbehind = 3
3797  No options  No options
3798  First char = 'x'  First char = 'x'
3799  Need char = 'z'  Need char = 'z'
# Line 3847  Callout 0: last capture = 1 Line 3808  Callout 0: last capture = 1
3808    
3809  /a(b+)(c*)(?C1)/I  /a(b+)(c*)(?C1)/I
3810  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3811  No options  No options
3812  First char = 'a'  First char = 'a'
3813  Need char = 'b'  Need char = 'b'
# Line 3855  Need char = 'b' Line 3815  Need char = 'b'
3815  --->abbbbbccc  --->abbbbbccc
3816    1 ^        ^    1 ^        ^
3817  Callout data = 1  Callout data = 1
   1 ^       ^  
 Callout data = 1  
   1 ^      ^  
 Callout data = 1  
   1 ^     ^  
 Callout data = 1  
   1 ^    ^  
 Callout data = 1  
   1 ^   ^  
 Callout data = 1  
   1 ^  ^  
 Callout data = 1  
   1 ^ ^  
 Callout data = 1  
3818  No match  No match
3819    
3820  /a(b+?)(c*?)(?C1)/I  /a(b+?)(c*?)(?C1)/I
3821  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3822  No options  No options
3823  First char = 'a'  First char = 'a'
3824  Need char = 'b'  Need char = 'b'
# Line 3914  Capturing subpattern count = 0 Line 3859  Capturing subpattern count = 0
3859  No options  No options
3860  No first char  No first char
3861  No need char  No need char
3862  Starting byte set: a b  Subject length lower bound = 1
3863    Starting chars: a b
3864    
3865  /(?R)/I  /(?R)/I
3866  Failed: recursive call could loop indefinitely at offset 3  Failed: recursive call could loop indefinitely at offset 3
# Line 3965  Failed: recursive call could loop indefi Line 3911  Failed: recursive call could loop indefi
3911    
3912  /^([^()]|\((?1)*\))*$/I  /^([^()]|\((?1)*\))*$/I
3913  Capturing subpattern count = 1  Capturing subpattern count = 1
3914    May match empty string
3915  Options: anchored  Options: anchored
3916  No first char  No first char
3917  No need char  No need char
# Line 3997  Need char = '<' Line 3944  Need char = '<'
3944   0: >abc>(1(2)3)<xyz<   0: >abc>(1(2)3)<xyz<
3945   1: (1(2)3)   1: (1(2)3)
3946    
3947  /(a(?1)b)/D  /(a(?1)b)/DZ
3948  ------------------------------------------------------------------  ------------------------------------------------------------------
3949    0  24 Bra 0          Bra
3950    3  18 Bra 1          CBra 1
3951    8     a          a
3952   10   6 Once          Recurse
3953   13   3 Recurse          b
3954   16   6 Ket          Ket
3955   19     b          Ket
3956   21  18 Ket          End
  24  24 Ket  
  27     End  
3957  ------------------------------------------------------------------  ------------------------------------------------------------------
3958  Capturing subpattern count = 1  Capturing subpattern count = 1
3959  No options  No options
3960  First char = 'a'  First char = 'a'
3961  Need char = 'b'  Need char = 'b'
3962    
3963  /(a(?1)+b)/D  /(a(?1)+b)/DZ
3964  ------------------------------------------------------------------  ------------------------------------------------------------------
3965    0  24 Bra 0          Bra
3966    3  18 Bra 1          CBra 1
3967    8     a          a
3968   10   6 Once          Once
3969   13   3 Recurse          Recurse
3970   16   6 KetRmax          KetRmax
3971   19     b          b
3972   21  18 Ket          Ket
3973   24  24 Ket          Ket
3974   27     End          End
3975  ------------------------------------------------------------------  ------------------------------------------------------------------
3976  Capturing subpattern count = 1  Capturing subpattern count = 1
3977  No options  No options
3978  First char = 'a'  First char = 'a'
3979  Need char = 'b'  Need char = 'b'
3980    
 /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii  
 Capturing subpattern count = 4  
 Max back reference = 4  
 Partial matching not supported  
 Options: anchored caseless  
 No first char  
 No need char  
     1221  
  0: 1221  
  1: 1221  
  2: 1  
     Satan, oscillate my metallic sonatas!  
  0: Satan, oscillate my metallic sonatas!  
  1: <unset>  
  2: <unset>  
  3: Satan, oscillate my metallic sonatas  
  4: S  
     A man, a plan, a canal: Panama!  
  0: A man, a plan, a canal: Panama!  
  1: <unset>  
  2: <unset>  
  3: A man, a plan, a canal: Panama  
  4: A  
     Able was I ere I saw Elba.  
  0: Able was I ere I saw Elba.  
  1: <unset>  
  2: <unset>  
  3: Able was I ere I saw Elba  
  4: A  
     *** Failers  
 No match  
     The quick brown fox  
 No match  
   
3981  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
3982  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
3983  Options: anchored  Options: anchored
3984  No first char  No first char
3985  No need char  No need char
# Line 4110  No match Line 4020  No match
4020    
4021  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix
4022  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
4023  Options: extended  Options: extended
4024  First char = '<'  First char = '<'
4025  Need char = '>'  Need char = '>'
# Line 4191  No need char Line 4100  No need char
4100   1: a   1: a
4101   2: c   2: c
4102    
4103  /a(?P<name1>b|c)d(?P<longername2>e)/D  /a(?P<name1>b|c)d(?P<longername2>e)/DZ
4104  ------------------------------------------------------------------  ------------------------------------------------------------------
4105    0  32 Bra 0          Bra
4106    3     a          a
4107    5   7 Bra 1          CBra 1
4108   10     b          b
4109   12   5 Alt          Alt
4110   15     c          c
4111   17  12 Ket          Ket
4112   20     d          d
4113   22   7 Bra 2          CBra 2
4114   27     e          e
4115   29   7 Ket          Ket
4116   32  32 Ket          Ket
4117   35     End          End
4118  ------------------------------------------------------------------  ------------------------------------------------------------------
4119  Capturing subpattern count = 2  Capturing subpattern count = 2
4120  Named capturing subpatterns:  Named capturing subpatterns:
# Line 4223  Need char = 'e' Line 4132  Need char = 'e'
4132   1: c   1: c
4133   2: e   2: e
4134    
4135  /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/D  /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
4136  ------------------------------------------------------------------  ------------------------------------------------------------------
4137    0  41 Bra 0          Bra
4138    3  25 Bra 0          Bra
4139    6     a          a
4140    8  17 Bra 1          CBra 1
4141   13     c          c
4142   15   7 Bra 2          CBra 2
4143   20     d          d
4144   22   7 Ket          Ket
4145   25  17 Ket          Ket
4146   28  25 Ket          Ket
4147   31   7 Bra 3          CBra 3
4148   36     a          a
4149   38   7 Ket          Ket
4150   41  41 Ket          Ket
4151   44     End          End
4152  ------------------------------------------------------------------  ------------------------------------------------------------------
4153  Capturing subpattern count = 3  Capturing subpattern count = 3
4154  Named capturing subpatterns:  Named capturing subpatterns:
# Line 4250  No options Line 4159  No options
4159  First char = 'a'  First char = 'a'
4160  Need char = 'a'  Need char = 'a'
4161    
4162  /(?P<a>a)...(?P=a)bbb(?P>a)d/D  /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
4163  ------------------------------------------------------------------  ------------------------------------------------------------------
4164    0  36 Bra 0          Bra
4165    3   7 Bra 1          CBra 1
4166    8     a          a
4167   10   7 Ket          Ket
4168   13     Any          Any
4169   14     Any          Any
4170   15     Any          Any
4171   16     \1          \1
4172   19     bbb          bbb
4173   25   6 Once          Recurse
4174   28   3 Recurse          d
4175   31   6 Ket          Ket
4176   34     d          End
  36  36 Ket  
  39     End  
4177  ------------------------------------------------------------------  ------------------------------------------------------------------
4178  Capturing subpattern count = 1  Capturing subpattern count = 1
4179  Max back reference = 1  Max back reference = 1
# Line 4284  Named capturing subpatterns: Line 4191  Named capturing subpatterns:
4191    one     1    one     1
4192    three   3    three   3
4193    two     2    two     2
4194  Partial matching not supported  May match empty string
4195  Options: anchored caseless  Options: anchored caseless
4196  No first char  No first char
4197  No need char  No need char
# Line 4330  No need char Line 4237  No need char
4237    
4238  /(.*)a/Is  /(.*)a/Is
4239  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
4240  Options: anchored dotall  Options: anchored dotall
4241  No first char  No first char
4242  Need char = 'a'  Need char = 'a'
# Line 4338  Need char = 'a' Line 4244  Need char = 'a'
4244  /(.*)a\1/Is  /(.*)a\1/Is
4245  Capturing subpattern count = 1  Capturing subpattern count = 1
4246  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
4247  Options: dotall  Options: dotall
4248  No first char  No first char
4249  Need char = 'a'  Need char = 'a'
# Line 4346  Need char = 'a' Line 4251  Need char = 'a'
4251  /(.*)a(b)\2/Is  /(.*)a(b)\2/Is
4252  Capturing subpattern count = 2  Capturing subpattern count = 2
4253  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
4254  Options: anchored dotall  Options: anchored dotall
4255  No first char  No first char
4256  Need char = 'b'  Need char = 'b'
4257    
4258  /((.*)a|(.*)b)z/Is  /((.*)a|(.*)b)z/Is
4259  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4260  Options: anchored dotall  Options: anchored dotall
4261  No first char  No first char
4262  Need char = 'z'  Need char = 'z'
# Line 4361  Need char = 'z' Line 4264  Need char = 'z'
4264  /((.*)a|(.*)b)z\1/Is  /((.*)a|(.*)b)z\1/Is
4265  Capturing subpattern count = 3  Capturing subpattern count = 3
4266  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
4267  Options: dotall  Options: dotall
4268  No first char  No first char
4269  Need char = 'z'  Need char = 'z'
# Line 4369  Need char = 'z' Line 4271  Need char = 'z'
4271  /((.*)a|(.*)b)z\2/Is  /((.*)a|(.*)b)z\2/Is
4272  Capturing subpattern count = 3  Capturing subpattern count = 3
4273  Max back reference = 2  Max back reference = 2
 Partial matching not supported  
4274  Options: dotall  Options: dotall
4275  No first char  No first char
4276  Need char = 'z'  Need char = 'z'
# Line 4377  Need char = 'z' Line 4278  Need char = 'z'
4278  /((.*)a|(.*)b)z\3/Is  /((.*)a|(.*)b)z\3/Is
4279  Capturing subpattern count = 3  Capturing subpattern count = 3
4280  Max back reference = 3  Max back reference = 3
 Partial matching not supported  
4281  Options: dotall  Options: dotall
4282  No first char  No first char
4283  Need char = 'z'  Need char = 'z'
# Line 4385  Need char = 'z' Line 4285  Need char = 'z'
4285  /((.*)a|^(.*)b)z\3/Is  /((.*)a|^(.*)b)z\3/Is
4286  Capturing subpattern count = 3  Capturing subpattern count = 3
4287  Max back reference = 3  Max back reference = 3
 Partial matching not supported  
4288  Options: anchored dotall  Options: anchored dotall
4289  No first char  No first char
4290  Need char = 'z'  Need char = 'z'
4291    
4292  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4293  Capturing subpattern count = 31  Capturing subpattern count = 31
4294  Partial matching not supported  May match empty string
4295  Options: anchored dotall  Options: anchored dotall
4296  No first char  No first char
4297  No need char  No need char
# Line 4400  No need char Line 4299  No need char
4299  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4300  Capturing subpattern count = 31  Capturing subpattern count = 31
4301  Max back reference = 31  Max back reference = 31
4302  Partial matching not supported  May match empty string
4303  Options: dotall  Options: dotall
4304  No first char  No first char
4305  No need char  No need char
# Line 4408  No need char Line 4307  No need char
4307  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4308  Capturing subpattern count = 32  Capturing subpattern count = 32
4309  Max back reference = 32  Max back reference = 32
4310  Partial matching not supported  May match empty string
4311  Options: dotall  Options: dotall
4312  No first char  No first char
4313  No need char  No need char
4314    
4315  /(a)(bc)/IND  /(a)(bc)/INDZ
4316  ------------------------------------------------------------------  ------------------------------------------------------------------
4317    0  21 Bra 0          Bra
4318    3   5 Bra 0          Bra
4319    6     a          a
4320    8   5 Ket          Ket
4321   11   7 Bra 0          Bra
4322   14     bc          bc
4323   18   7 Ket          Ket
4324   21  21 Ket          Ket
4325   24     End          End
4326  ------------------------------------------------------------------  ------------------------------------------------------------------
4327  Capturing subpattern count = 0  Capturing subpattern count = 0
4328  Options: no_auto_capture  Options: no_auto_capture
# Line 4432  Need char = 'c' Line 4331  Need char = 'c'
4331    abc    abc
4332   0: abc   0: abc
4333    
4334  /(?P<one>a)(bc)/IND  /(?P<one>a)(bc)/INDZ
4335  ------------------------------------------------------------------  ------------------------------------------------------------------
4336    0  23 Bra 0          Bra
4337    3   7 Bra 1          CBra 1
4338    8     a          a
4339   10   7 Ket          Ket
4340   13   7 Bra 0          Bra
4341   16     bc          bc
4342   20   7 Ket          Ket
4343   23  23 Ket          Ket
4344   26     End          End
4345  ------------------------------------------------------------------  ------------------------------------------------------------------
4346  Capturing subpattern count = 1  Capturing subpattern count = 1
4347  Named capturing subpatterns:  Named capturing subpatterns:
# Line 4454  Need char = 'c' Line 4353  Need char = 'c'
4353   0: abc   0: abc
4354   1: a   1: a
4355    
4356  /(a)(?P<named>bc)/IND  /(a)(?P<named>bc)/INDZ
4357  ------------------------------------------------------------------  ------------------------------------------------------------------
4358    0  23 Bra 0          Bra
4359    3   5 Bra 0          Bra
4360    6     a          a
4361    8   5 Ket          Ket
4362   11   9 Bra 1          CBra 1
4363   16     bc          bc
4364   20   9 Ket          Ket
4365   23  23 Ket          Ket
4366   26     End          End
4367  ------------------------------------------------------------------  ------------------------------------------------------------------
4368  Capturing subpattern count = 1  Capturing subpattern count = 1
4369  Named capturing subpatterns:  Named capturing subpatterns:
# Line 4475  Need char = 'c' Line 4374  Need char = 'c'
4374    
4375  /(a+)*zz/I  /(a+)*zz/I
4376  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
4377  No options  No options
4378  No first char  No first char
4379  Need char = 'z'  Need char = 'z'
# Line 4486  Minimum match() recursion limit = 6 Line 4384  Minimum match() recursion limit = 6
4384   1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa   1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4385    aaaaaaaaaaaaaz\M    aaaaaaaaaaaaaz\M
4386  Minimum match() limit = 32768  Minimum match() limit = 32768
4387  Minimum match() recursion limit = 42  Minimum match() recursion limit = 29
4388  No match  No match
4389    
4390  /(aaa(?C1)bbb|ab)/I  /(aaa(?C1)bbb|ab)/I
# Line 4547  no parentheses with name "three" Line 4445  no parentheses with name "three"
4445   2: gh   2: gh
4446  copy substring three failed -7  copy substring three failed -7
4447    
4448  /(?P<Tes>)(?P<Test>)/D  /(?P<Tes>)(?P<Test>)/DZ
4449  ------------------------------------------------------------------  ------------------------------------------------------------------
4450    0  19 Bra 0          Bra
4451    3   5 Bra 1          CBra 1
4452    8   5 Ket          Ket
4453   11   5 Bra 2          CBra 2
4454   16   5 Ket          Ket
4455   19  19 Ket          Ket
4456   22     End          End
4457  ------------------------------------------------------------------  ------------------------------------------------------------------
4458  Capturing subpattern count = 2  Capturing subpattern count = 2
4459  Named capturing subpatterns:  Named capturing subpatterns:
4460    Tes    1    Tes    1
4461    Test   2    Test   2
4462    May match empty string
4463  No options  No options
4464  No first char  No first char
4465  No need char  No need char
4466    
4467  /(?P<Test>)(?P<Tes>)/D  /(?P<Test>)(?P<Tes>)/DZ
4468  ------------------------------------------------------------------  ------------------------------------------------------------------
4469    0  19 Bra 0          Bra
4470    3   5 Bra 1          CBra 1
4471    8   5 Ket          Ket
4472   11   5 Bra 2          CBra 2
4473   16   5 Ket          Ket
4474   19  19 Ket          Ket
4475   22     End          End
4476  ------------------------------------------------------------------  ------------------------------------------------------------------
4477  Capturing subpattern count = 2  Capturing subpattern count = 2
4478  Named capturing subpatterns:  Named capturing subpatterns:
4479    Tes    2    Tes    2
4480    Test   1    Test   1
4481    May match empty string
4482  No options  No options
4483  No first char  No first char
4484  No need char  No need char
# Line 4612  Failed: two named subpatterns have the s Line 4512  Failed: two named subpatterns have the s
4512  Capturing subpattern count = 3  Capturing subpattern count = 3
4513  Named capturing subpatterns:  Named capturing subpatterns:
4514    elem   2    elem   2
 Partial matching not supported  
4515  No options  No options
4516  First char = '['  First char = '['
4517  Need char = ']'  Need char = ']'
# Line 4630  No match Line 4529  No match
4529  Capturing subpattern count = 3  Capturing subpattern count = 3
4530  Named capturing subpatterns:  Named capturing subpatterns:
4531    elem   2    elem   2
 Partial matching not supported  
4532  No options  No options
4533  First char = '['  First char = '['
4534  Need char = ']'  Need char = ']'
# Line 4642  Need char = ']' Line 4540  Need char = ']'
4540      []      []
4541   0: []   0: []
4542    
4543  /(a(b(?2)c))?/D  /(a(b(?2)c))?/DZ
4544  ------------------------------------------------------------------  ------------------------------------------------------------------
4545    0  35 Bra 0          Bra
4546    3     Brazero          Brazero
4547    4  28 Bra 1          CBra 1
4548    9     a          a
4549   11  18 Bra 2          CBra 2
4550   16     b          b
4551   18   6 Once          Recurse
4552   21  11 Recurse          c
4553   24   6 Ket          Ket
4554   27     c          Ket
4555   29  18 Ket          Ket
4556   32  28 Ket          End
  35  35 Ket  
  38     End  
4557  ------------------------------------------------------------------  ------------------------------------------------------------------
4558  Capturing subpattern count = 2  Capturing subpattern count = 2
4559    May match empty string
4560  No options  No options
4561  No first char  No first char
4562  No need char  No need char
4563    
4564  /(a(b(?2)c))*/D  /(a(b(?2)c))*/DZ
4565  ------------------------------------------------------------------  ------------------------------------------------------------------
4566    0  35 Bra 0          Bra
4567    3     Brazero          Brazero
4568    4  28 Bra 1          CBra 1
4569    9     a          a
4570   11  18 Bra 2          CBra 2
4571   16     b          b
4572   18   6 Once          Recurse
4573   21  11 Recurse          c
4574   24   6 Ket          Ket
4575   27     c          KetRmax
4576   29  18 Ket          Ket
4577   32  28 KetRmax          End
  35  35 Ket  
  38     End  
4578  ------------------------------------------------------------------  ------------------------------------------------------------------
4579  Capturing subpattern count = 2  Capturing subpattern count = 2
4580    May match empty string
4581  No options  No options
4582  No first char  No first char
4583  No need char  No need char
4584    
4585  /(a(b(?2)c)){0,2}/D  /(a(b(?2)c)){0,2}/DZ
4586  ------------------------------------------------------------------  ------------------------------------------------------------------
4587    0  73 Bra 0          Bra
4588    3     Brazero          Brazero
4589    4  66 Bra 0          Bra
4590    7  28 Bra 1          CBra 1
4591   12     a          a
4592   14  18 Bra 2          CBra 2
4593   19     b          b
4594   21   6 Once          Recurse
4595   24  14 Recurse          c
4596   27   6 Ket          Ket
4597   30     c          Ket
4598   32  18 Ket          Brazero
4599   35  28 Ket          CBra 1
4600   38     Brazero          a
4601   39  28 Bra 1          CBra 2
4602   44     a          b
4603   46  18 Bra 2          Recurse
4604   51     b          c
4605   53   6 Once          Ket
4606   56  14 Recurse          Ket
4607   59   6 Ket          Ket
4608   62     c          Ket
4609   64  18 Ket          End
  67  28 Ket  
  70  66 Ket  
  73  73 Ket  
  76     End  
4610  ------------------------------------------------------------------  ------------------------------------------------------------------
4611  Capturing subpattern count = 2  Capturing subpattern count = 2
4612    May match empty string
4613  No options  No options
4614  No first char  No first char
4615  No need char  No need char
4616    
4617  /[ab]{1}+/D  /[ab]{1}+/DZ
4618  ------------------------------------------------------------------  ------------------------------------------------------------------
4619    0  47 Bra 0          Bra
4620    3  41 Once          [ab]{1,1}+
4621    6     [ab]{1,1}          Ket
4622   44  41 Ket          End
  47  47 Ket  
  50     End  
4623  ------------------------------------------------------------------  ------------------------------------------------------------------
4624  Capturing subpattern count = 0  Capturing subpattern count = 0
4625  No options  No options
# Line 4737  No need char Line 4628  No need char
4628    
4629  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4630  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4631  Options: caseless  Options: caseless
4632  No first char  No first char
4633  Need char = 'g' (caseless)  Need char = 'g' (caseless)
# Line 4747  Need char = 'g' (caseless) Line 4637  Need char = 'g' (caseless)
4637    
4638  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
4639  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
4640  Options: caseless  Options: caseless
4641  No first char  No first char
4642  Need char = 'g' (caseless)  Need char = 'g' (caseless)
4643  Study returned NULL  Subject length lower bound = 8
4644    No starting char list
4645       Baby Bjorn Active Carrier - With free SHIPPING!!       Baby Bjorn Active Carrier - With free SHIPPING!!
4646   0: Baby Bjorn Active Carrier - With free SHIPPING!!   0: Baby Bjorn Active Carrier - With free SHIPPING!!
4647   1: Baby Bjorn Active Carrier - With free SHIPPING!!   1: Baby Bjorn Active Carrier - With free SHIPPING!!
4648    
4649  /a*.*b/ISD  /a*.*b/ISDZ
4650  ------------------------------------------------------------------  ------------------------------------------------------------------
4651    0   9 Bra 0          Bra
4652    3     a*          a*
4653    5     Any*          Any*
4654    7     b          b
4655    9   9 Ket          Ket
4656   12     End          End
4657  ------------------------------------------------------------------  ------------------------------------------------------------------
4658  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4659  No options  No options
4660  No first char  No first char
4661  Need char = 'b'  Need char = 'b'
4662  Study returned NULL  Subject length lower bound = 1
4663    No starting char list
4664    
4665  /(a|b)*.?c/ISD  /(a|b)*.?c/ISDZ
4666  ------------------------------------------------------------------  ------------------------------------------------------------------
4667    0  23 Bra 0          Bra
4668    3     Brazero          Brazero
4669    4   7 Bra 1          CBra 1
4670    9     a          a
4671   11   5 Alt          Alt
4672   14     b          b
4673   16  12 KetRmax          KetRmax
4674   19     Any?          Any?
4675   21     c          c
4676   23  23 Ket          Ket
4677   26     End          End
4678  ------------------------------------------------------------------  ------------------------------------------------------------------
4679  Capturing subpattern count = 1  Capturing subpattern count = 1
4680  No options  No options
4681  No first char  No first char
4682  Need char = 'c'  Need char = 'c'
4683  Study returned NULL  Subject length lower bound = 1
4684    No starting char list
4685    
4686  /abc(?C255)de(?C)f/D  /abc(?C255)de(?C)f/DZ
4687  ------------------------------------------------------------------  ------------------------------------------------------------------
4688    0  27 Bra 0          Bra
4689    3     abc          abc
4690    9     Callout 255 10 1          Callout 255 10 1
4691   15     de          de
4692   19     Callout 0 16 1          Callout 0 16 1
4693   25     f          f
4694   27  27 Ket          Ket
4695   30     End          End
4696  ------------------------------------------------------------------  ------------------------------------------------------------------
4697  Capturing subpattern count = 0  Capturing subpattern count = 0
4698  No options  No options
4699  First char = 'a'  First char = 'a'
4700  Need char = 'f'  Need char = 'f'
4701    
4702  /abcde/ICD  /abcde/ICDZ
4703  ------------------------------------------------------------------  ------------------------------------------------------------------
4704    0  49 Bra 0          Bra
4705    3     Callout 255 0 1          Callout 255 0 1
4706    9     a          a
4707   11     Callout 255 1 1          Callout 255 1 1
4708   17     b          b
4709   19     Callout 255 2 1          Callout 255 2 1
4710   25     c          c
4711   27     Callout 255 3 1          Callout 255 3 1
4712   33     d          d
4713   35     Callout 255 4 1          Callout 255 4 1
4714   41     e          e
4715   43     Callout 255 5 0          Callout 255 5 0
4716   49  49 Ket          Ket
4717   52     End          End
4718  ------------------------------------------------------------------  ------------------------------------------------------------------
4719  Capturing subpattern count = 0  Capturing subpattern count = 0
4720  Options:  Options:
# Line 4847  Need char = 'e' Line 4738  Need char = 'e'
4738   +4 ^   ^      e   +4 ^   ^      e
4739  No match  No match
4740    
4741  /a*b/ICD  /a*b/ICDZS
4742    ------------------------------------------------------------------
4743            Bra
4744            Callout 255 0 2
4745            a*+
4746            Callout 255 2 1
4747            b
4748            Callout 255 3 0
4749            Ket
4750            End
4751    ------------------------------------------------------------------
4752    Capturing subpattern count = 0
4753    Options:
4754    No first char
4755    Need char = 'b'
4756    Subject length lower bound = 1
4757    Starting chars: a b
4758      ab
4759    --->ab
4760     +0 ^      a*
4761     +2 ^^     b
4762     +3 ^ ^
4763     0: ab
4764      aaaab
4765    --->aaaab
4766     +0 ^         a*
4767     +2 ^   ^     b
4768     +3 ^    ^
4769     0: aaaab
4770      aaaacb
4771    --->aaaacb
4772     +0 ^          a*
4773     +2 ^   ^      b
4774     +0  ^         a*
4775     +2  ^  ^      b
4776     +0   ^        a*
4777     +2   ^ ^      b
4778     +0    ^       a*
4779     +2    ^^      b
4780     +0      ^     a*
4781     +2      ^     b
4782     +3      ^^
4783     0: b
4784    
4785    /a*b/ICDZSS
4786  ------------------------------------------------------------------  ------------------------------------------------------------------
4787    0  25 Bra 0          Bra
4788    3     Callout 255 0 2          Callout 255 0 2
4789    9     a*+          a*+
4790   11     Callout 255 2 1          Callout 255 2 1
4791   17     b          b
4792   19     Callout 255 3 0          Callout 255 3 0
4793   25  25 Ket          Ket
4794   28     End          End
4795  ------------------------------------------------------------------  ------------------------------------------------------------------
4796  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4797  Options:  Options:
4798  No first char  No first char
4799  Need char = 'b'  Need char = 'b'
# Line 4892  Need char = 'b' Line 4826  Need char = 'b'
4826   +3      ^^   +3      ^^
4827   0: b   0: b
4828    
4829  /a+b/ICD  /a+b/ICDZ
4830  ------------------------------------------------------------------  ------------------------------------------------------------------
4831    0  25 Bra 0          Bra
4832    3     Callout 255 0 2          Callout 255 0 2
4833    9     a++          a++
4834   11     Callout 255 2 1          Callout 255 2 1
4835   17     b          b
4836   19     Callout 255 3 0          Callout 255 3 0
4837   25  25 Ket          Ket
4838   28     End          End
4839  ------------------------------------------------------------------  ------------------------------------------------------------------
4840  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
4841  Options:  Options:
4842  First char = 'a'  First char = 'a'
4843  Need char = 'b'  Need char = 'b'
# Line 4932  Need char = 'b' Line 4865  Need char = 'b'
4865   +2    ^^      b   +2    ^^      b
4866  No match  No match
4867    
4868  /(abc|def)x/ICD  /(abc|def)x/ICDZS
4869  ------------------------------------------------------------------  ------------------------------------------------------------------
4870    0  94 Bra 0          Bra
4871    3     Callout 255 0 9          Callout 255 0 9
4872    9  35 Bra 1          CBra 1
4873   14     Callout 255 1 1          Callout 255 1 1
4874   20     a          a
4875   22     Callout 255 2 1          Callout 255 2 1
4876   28     b          b
4877   30     Callout 255 3 1          Callout 255 3 1
4878   36     c          c
4879   38     Callout 255 4 0          Callout 255 4 0
4880   44  33 Alt          Alt
4881   47     Callout 255 5 1          Callout 255 5 1
4882   53     d          d
4883   55     Callout 255 6 1          Callout 255 6 1
4884   61     e          e
4885   63     Callout 255 7 1          Callout 255 7 1
4886   69     f          f
4887   71     Callout 255 8 0          Callout 255 8 0
4888   77  68 Ket          Ket
4889   80     Callout 255 9 1          Callout 255 9 1
4890   86     x          x
4891   88     Callout 255 10 0          Callout 255 10 0
4892   94  94 Ket          Ket
4893   97     End          End
4894  ------------------------------------------------------------------  ------------------------------------------------------------------
4895  Capturing subpattern count = 1  Capturing subpattern count = 1
4896  Options:  Options:
4897  No first char  No first char
4898  Need char = 'x'  Need char = 'x'
4899    Subject length lower bound = 4
4900    Starting chars: a d
4901    abcx    abcx
4902  --->abcx  --->abcx
4903   +0 ^        (abc|def)   +0 ^        (abc|def)
# Line 4986  Need char = 'x' Line 4921  Need char = 'x'
4921  +10 ^   ^  +10 ^   ^
4922   0: defx   0: defx
4923   1: def   1: def
4924      ** Failers
4925    No match
4926    abcdefzx    abcdefzx
4927  --->abcdefzx  --->abcdefzx
4928   +0 ^            (abc|def)   +0 ^            (abc|def)
# Line 4995  Need char = 'x' Line 4932  Need char = 'x'
4932   +4 ^  ^         |   +4 ^  ^         |
4933   +9 ^  ^         x   +9 ^  ^         x
4934   +5 ^            d   +5 ^            d
  +0  ^           (abc|def)  
  +1  ^           a  
  +5  ^           d  
  +0   ^          (abc|def)  
  +1   ^          a  
  +5   ^          d  
4935   +0    ^         (abc|def)   +0    ^         (abc|def)
4936   +1    ^         a   +1    ^         a
4937   +5    ^         d   +5    ^         d
# Line 5008  Need char = 'x' Line 4939  Need char = 'x'
4939   +7    ^ ^       f   +7    ^ ^       f
4940   +8    ^  ^      )   +8    ^  ^      )
4941   +9    ^  ^      x   +9    ^  ^      x
  +0     ^        (abc|def)  
  +1     ^        a  
  +5     ^        d  
  +0      ^       (abc|def)  
  +1      ^       a  
  +5      ^       d  
  +0       ^      (abc|def)  
  +1       ^      a  
  +5       ^      d  
  +0        ^     (abc|def)  
  +1        ^     a  
  +5        ^     d  
4942  No match  No match
4943    
4944  /(ab|cd){3,4}/IC  /(abc|def)x/ICDZSS
4945    ------------------------------------------------------------------
4946            Bra
4947            Callout 255 0 9
4948            CBra 1
4949            Callout 255 1 1
4950            a
4951            Callout 255 2 1
4952            b
4953            Callout 255 3 1
4954            c
4955            Callout 255 4 0
4956            Alt
4957            Callout 255 5 1
4958            d
4959            Callout 255 6 1
4960            e
4961            Callout 255 7 1
4962            f
4963            Callout 255 8 0
4964            Ket
4965            Callout 255 9 1
4966            x
4967            Callout 255 10 0
4968            Ket
4969            End
4970    ------------------------------------------------------------------
4971  Capturing subpattern count = 1  Capturing subpattern count = 1
4972  Options:  Options:
4973  No first char  No first char
4974  No need char  Need char = 'x'
4975    ababab    abcx
4976  --->ababab  --->abcx
4977   +0 ^          (ab|cd){3,4}   +0 ^        (abc|def)
4978   +1 ^          a   +1 ^        a
4979   +2 ^^         b   +2 ^^       b
4980     +3 ^ ^      c
4981     +4 ^  ^     |
4982     +9 ^  ^     x
4983    +10 ^   ^
4984     0: abcx
4985     1: abc
4986      defx
4987    --->defx
4988     +0 ^        (abc|def)
4989     +1 ^        a
4990     +5 ^        d
4991     +6 ^^       e
4992     +7 ^ ^      f
4993     +8 ^  ^     )
4994     +9 ^  ^     x
4995    +10 ^   ^
4996     0: defx
4997     1: def
4998      ** Failers
4999    No match
5000      abcdefzx
5001    --->abcdefzx
5002     +0 ^            (abc|def)
5003     +1 ^            a
5004     +2 ^^           b
5005     +3 ^ ^          c
5006     +4 ^  ^         |
5007     +9 ^  ^         x
5008     +5 ^            d
5009     +0  ^           (abc|def)
5010     +1  ^           a
5011     +5  ^           d
5012     +0   ^          (abc|def)
5013     +1   ^          a
5014     +5   ^          d
5015     +0    ^         (abc|def)
5016     +1    ^         a
5017     +5    ^         d
5018     +6    ^^        e
5019     +7    ^ ^       f
5020     +8    ^  ^      )
5021     +9    ^  ^      x
5022     +0     ^        (abc|def)
5023     +1     ^        a
5024     +5     ^        d
5025     +0      ^       (abc|def)
5026     +1      ^       a
5027     +5      ^       d
5028     +0       ^      (abc|def)
5029     +1       ^      a
5030     +5       ^      d
5031     +0        ^     (abc|def)
5032     +1        ^     a
5033     +5        ^     d
5034    No match
5035    
5036    /(ab|cd){3,4}/IC
5037    Capturing subpattern count = 1
5038    Options:
5039    No first char
5040    No need char
5041      ababab
5042    --->ababab
5043     +0 ^          (ab|cd){3,4}
5044     +1 ^          a
5045     +2 ^^         b
5046   +3 ^ ^        |   +3 ^ ^        |
5047   +1 ^ ^        a   +1 ^ ^        a
5048   +2 ^  ^       b   +2 ^  ^       b
# Line 5086  No need char Line 5097  No need char
5097   0: abcdcdcd   0: abcdcdcd
5098   1: cd   1: cd
5099    
5100  /([ab]{,4}c|xy)/ICD  /([ab]{,4}c|xy)/ICDZS
5101    ------------------------------------------------------------------
5102            Bra
5103            Callout 255 0 14
5104            CBra 1
5105            Callout 255 1 4
5106            [ab]
5107            Callout 255 5 1
5108            {
5109            Callout 255 6 1
5110            ,
5111            Callout 255 7 1
5112            4
5113            Callout 255 8 1
5114            }
5115            Callout 255 9 1
5116            c
5117            Callout 255 10 0
5118            Alt
5119            Callout 255 11 1
5120            x
5121            Callout 255 12 1
5122            y
5123            Callout 255 13 0
5124            Ket
5125            Callout 255 14 0
5126            Ket
5127            End
5128    ------------------------------------------------------------------
5129    Capturing subpattern count = 1
5130    Options:
5131    No first char
5132    No need char
5133    Subject length lower bound = 2
5134    Starting chars: a b x
5135        Note: that { does NOT introduce a quantifier
5136    --->Note: that { does NOT introduce a quantifier
5137     +0         ^                                        ([ab]{,4}c|xy)
5138     +1         ^                                        [ab]
5139     +5         ^^                                       {
5140    +11         ^                                        x
5141     +0                                 ^                ([ab]{,4}c|xy)
5142     +1                                 ^                [ab]
5143     +5                                 ^^               {
5144    +11                                 ^                x
5145     +0                                     ^            ([ab]{,4}c|xy)
5146     +1                                     ^            [ab]
5147     +5                                     ^^           {
5148    +11                                     ^            x
5149    No match
5150    
5151    /([ab]{,4}c|xy)/ICDZSS
5152  ------------------------------------------------------------------  ------------------------------------------------------------------
5153    0 133 Bra 0          Bra
5154    3     Callout 255 0 14          Callout 255 0 14
5155    9  90 Bra 1          CBra 1
5156   14     Callout 255 1 4          Callout 255 1 4
5157   20     [ab]          [ab]
5158   53     Callout 255 5 1          Callout 255 5 1
5159   59     {          {
5160   61     Callout 255 6 1          Callout 255 6 1
5161   67     ,          ,
5162   69     Callout 255 7 1          Callout 255 7 1
5163   75     4          4
5164   77     Callout 255 8 1          Callout 255 8 1
5165   83     }          }
5166   85     Callout 255 9 1          Callout 255 9 1
5167   91     c          c
5168   93     Callout 255 10 0          Callout 255 10 0
5169   99  25 Alt          Alt
5170  102     Callout 255 11 1          Callout 255 11 1
5171  108     x          x
5172  110     Callout 255 12 1          Callout 255 12 1
5173  116     y          y
5174  118     Callout 255 13 0          Callout 255 13 0
5175  124 115 Ket          Ket
5176  127     Callout 255 14 0          Callout 255 14 0
5177  133 133 Ket          Ket
5178  136     End          End
5179  ------------------------------------------------------------------  ------------------------------------------------------------------
5180  Capturing subpattern count = 1  Capturing subpattern count = 1
5181  Options:  Options:
# Line 5261  No need char Line 5323  No need char
5323  +11                                             ^    x  +11                                             ^    x
5324  No match  No match
5325    
5326  /([ab]{1,4}c|xy){4,5}?123/ICD  /([ab]{1,4}c|xy){4,5}?123/ICDZ
5327  ------------------------------------------------------------------  ------------------------------------------------------------------
5328    0 495 Bra 0          Bra
5329    3     Callout 255 0 21          Callout 255 0 21
5330    9  63 Bra 1          CBra 1
5331   14     Callout 255 1 9          Callout 255 1 9
5332   20     [ab]{1,4}          [ab]{1,4}+
5333   58     Callout 255 10 1          Callout 255 10 1
5334   64     c          c
5335   66     Callout 255 11 0          Callout 255 11 0
5336   72  25 Alt          Alt
5337   75     Callout 255 12 1          Callout 255 12 1
5338   81     x          x
5339   83     Callout 255 13 1          Callout 255 13 1
5340   89     y          y
5341   91     Callout 255 14 0          Callout 255 14 0
5342   97  88 Ket          Ket
5343  100  63 Bra 1          CBra 1
5344  105     Callout 255 1 9          Callout 255 1 9
5345  111     [ab]{1,4}          [ab]{1,4}+
5346  149     Callout 255 10 1          Callout 255 10 1
5347  155     c          c
5348  157     Callout 255 11 0          Callout 255 11 0
5349  163  25 Alt          Alt
5350  166     Callout 255 12 1          Callout 255 12 1
5351  172     x          x
5352  174     Callout 255 13 1          Callout 255 13 1
5353  180     y          y
5354  182     Callout 255 14 0          Callout 255 14 0
5355  188  88 Ket          Ket
5356  191  63 Bra 1          CBra 1
5357  196     Callout 255 1 9          Callout 255 1 9
5358  202     [ab]{1,4}          [ab]{1,4}+
5359  240     Callout 255 10 1          Callout 255 10 1
5360  246     c          c
5361  248     Callout 255 11 0          Callout 255 11 0
5362  254  25 Alt          Alt
5363  257     Callout 255 12 1          Callout 255 12 1
5364  263     x          x
5365  265     Callout 255 13 1          Callout 255 13 1
5366  271     y          y
5367  273     Callout 255 14 0          Callout 255 14 0
5368  279  88 Ket          Ket
5369  282  63 Bra 1          CBra 1
5370  287     Callout 255 1 9          Callout 255 1 9
5371  293     [ab]{1,4}          [ab]{1,4}+
5372  331     Callout 255 10 1          Callout 255 10 1
5373  337     c          c
5374  339     Callout 255 11 0          Callout 255 11 0
5375  345  25 Alt          Alt
5376  348     Callout 255 12 1          Callout 255 12 1
5377  354     x          x
5378  356     Callout 255 13 1          Callout 255 13 1
5379  362     y          y
5380  364     Callout 255 14 0          Callout 255 14 0
5381  370  88 Ket          Ket
5382  373     Braminzero          Braminzero
5383  374  63 Bra 1          CBra 1
5384  379     Callout 255 1 9          Callout 255 1 9
5385  385     [ab]{1,4}          [ab]{1,4}+
5386  423     Callout 255 10 1          Callout 255 10 1
5387  429     c          c
5388  431     Callout 255 11 0          Callout 255 11 0
5389  437  25 Alt          Alt
5390  440     Callout 255 12 1          Callout 255 12 1
5391  446     x          x
5392  448     Callout 255 13 1          Callout 255 13 1
5393  454     y          y
5394  456     Callout 255 14 0          Callout 255 14 0
5395  462  88 Ket          Ket
5396  465     Callout 255 21 1          Callout 255 21 1
5397  471     1          1
5398  473     Callout 255 22 1          Callout 255 22 1
5399  479     2          2
5400  481     Callout 255 23 1          Callout 255 23 1
5401  487     3          3
5402  489     Callout 255 24 0          Callout 255 24 0
5403  495 495 Ket          Ket
5404  498     End          End
5405  ------------------------------------------------------------------  ------------------------------------------------------------------
5406  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
5407  Options:  Options:
5408  No first char  No first char
5409  Need char = '3'  Need char = '3'
# Line 5374  Need char = '3' Line 5435  Need char = '3'
5435    
5436  /\b.*/I  /\b.*/I
5437  Capturing subpattern count = 0  Capturing subpattern count = 0
5438  Partial matching not supported  Max lookbehind = 1
5439    May match empty string
5440  No options  No options
5441  No first char  No first char
5442  No need char  No need char
# Line 5383  No need char Line 5445  No need char
5445    
5446  /\b.*/Is  /\b.*/Is
5447  Capturing subpattern count = 0  Capturing subpattern count = 0
5448  Partial matching not supported  Max lookbehind = 1
5449    May match empty string
5450  Options: dotall  Options: dotall
5451  No first char  No first char
5452  No need char  No need char
# Line 5392  No need char Line 5455  No need char
5455    
5456  /(?!.bcd).*/I  /(?!.bcd).*/I
5457  Capturing subpattern count = 0  Capturing subpattern count = 0
5458  Partial matching not supported  May match empty string
5459  No options  No options
5460  No first char  No first char
5461  No need char  No need char
# Line 5405  No options Line 5468  No options
5468  First char = 'a'  First char = 'a'
5469  Need char = 'e'  Need char = 'e'
5470      ab\P      ab\P
5471  Partial match  Partial match: ab
5472      abc\P      abc\P
5473  Partial match  Partial match: abc
5474      abcd\P      abcd\P
5475  Partial match  Partial match: abcd
5476      abcde\P      abcde\P
5477   0: abcde   0: abcde
5478      the quick brown abc\P      the quick brown abc\P
5479  Partial match  Partial match: abc
5480      ** Failers\P      ** Failers\P
5481  No match  No match
5482      the quick brown abxyz fox\P      the quick brown abxyz fox\P
# Line 5438  Need char = '/' Line 5501  Need char = '/'
5501   1: 02   1: 02
5502   2: 05   2: 05
5503      1\P      1\P
5504  Partial match  Partial match: 1
5505      1/2\P      1/2\P
5506  Partial match  Partial match: 1/2
5507      1/2/0\P      1/2/0\P
5508  Partial match  Partial match: 1/2/0
5509      1/2/04\P      1/2/04\P
5510   0: 1/2/04   0: 1/2/04
5511   1: 1   1: 1
5512   2: 2   2: 2
5513      0\P      0\P
5514  Partial match  Partial match: 0
5515      02/\P      02/\P
5516  Partial match  Partial match: 02/
5517      02/0\P      02/0\P
5518  Partial match  Partial match: 02/0
5519      02/1\P      02/1\P
5520  Partial match  Partial match: 02/1
5521      ** Failers\P      ** Failers\P
5522  No match  No match
5523      \P      \P
# Line 5476  No match Line 5539  No match
5539    
5540  /0{0,2}ABC/I  /0{0,2}ABC/I
5541  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5542  No options  No options
5543  No first char  No first char
5544  Need char = 'C'  Need char = 'C'
5545    
5546  /\d{3,}ABC/I  /\d{3,}ABC/I
5547  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5548  No options  No options
5549  No first char  No first char
5550  Need char = 'C'  Need char = 'C'
5551    
5552  /\d*ABC/I  /\d*ABC/I
5553  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5554  No options  No options
5555  No first char  No first char
5556  Need char = 'C'  Need char = 'C'
5557    
5558  /[abc]+DE/I  /[abc]+DE/I
5559  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
5560  No options  No options
5561  No first char  No first char
5562  Need char = 'E'  Need char = 'E'
# Line 5510  Need char = '3' Line 5569  Need char = '3'
5569      123\P      123\P
5570   0: 123   0: 123
5571      a\P      a\P
5572  Partial match  Partial match: a
5573      b\P      b\P
5574  Partial match  Partial match: b
5575      c\P      c\P
5576  Partial match  Partial match: c
5577      c12\P      c12\P
5578  Partial match  Partial match: c12
5579      c123\P      c123\P
5580   0: c123   0: c123
5581    
# Line 5526  Options: anchored Line 5585  Options: anchored
5585  No first char  No first char
5586  Need char = 'X'  Need char = 'X'
5587      1\P      1\P
5588  Partial match  Partial match: 1
5589      123\P      123\P
5590  Partial match  Partial match: 123
5591      123X      123X
5592   0: 123X   0: 123X
5593      1234\P      1234\P
5594  Partial match  Partial match: 1234
5595      1234X      1234X
5596   0: 1234X   0: 1234X
5597      12345\P      12345\P
5598  Partial match  Partial match: 12345
5599      12345X      12345X
5600   0: 12345X   0: 12345X
5601      *** Failers      *** Failers
# Line 5546  No match Line 5605  No match
5605      123456\P      123456\P
5606  No match  No match
5607    
5608  /abc/I>testsavedregex  /abc/IS>testsavedregex
5609    Capturing subpattern count = 0
5610    No options
5611    First char = 'a'
5612    Need char = 'c'
5613    Subject length lower bound = 3
5614    No starting char list
5615    Compiled pattern written to testsavedregex
5616    Study data written to testsavedregex
5617    <testsavedregex
5618    Compiled pattern loaded from testsavedregex
5619    Study data loaded from testsavedregex
5620        abc
5621     0: abc
5622        ** Failers
5623    No match
5624        bca
5625    No match
5626    
5627    /abc/ISS>testsavedregex
5628  Capturing subpattern count = 0  Capturing subpattern count = 0
5629  No options  No options
5630  First char = 'a'  First char = 'a'
5631  Need char = 'c'  Need char = 'c'
5632  Compiled regex written to testsavedregex  Compiled pattern written to testsavedregex
5633  <testsavedregex  <testsavedregex
5634  Compiled regex loaded from testsavedregex  Compiled pattern loaded from testsavedregex
5635  No study data  No study data
5636      abc      abc
5637   0: abc   0: abc
# Line 5562  No match Line 5640  No match
5640      bca      bca
5641  No match  No match
5642    
5643  /abc/IF>testsavedregex  /abc/IFS>testsavedregex
5644    Capturing subpattern count = 0
5645    No options
5646    First char = 'a'
5647    Need char = 'c'
5648    Subject length lower bound = 3
5649    No starting char list
5650    Compiled pattern written to testsavedregex
5651    Study data written to testsavedregex
5652    <testsavedregex
5653    Compiled pattern (byte-inverted) loaded from testsavedregex
5654    Study data loaded from testsavedregex
5655        abc
5656     0: abc
5657        ** Failers
5658    No match
5659        bca
5660    No match
5661    
5662    /abc/IFSS>testsavedregex
5663  Capturing subpattern count = 0  Capturing subpattern count = 0
5664  No options  No options
5665  First char = 'a'  First char = 'a'
5666  Need char = 'c'  Need char = 'c'
5667  Compiled regex written to testsavedregex  Compiled pattern written to testsavedregex
5668  <testsavedregex  <testsavedregex
5669  Compiled regex (byte-inverted) loaded from testsavedregex  Compiled pattern (byte-inverted) loaded from testsavedregex
5670