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

Diff of /code/trunk/testdata/testinput2

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

revision 79 by nigel, Sat Feb 24 21:40:52 2007 UTC revision 282 by ph10, Fri Dec 7 19:32:32 2007 UTC
# Line 1  Line 1 
1  /(a)b|/  /(a)b|/I
2    
3  /abc/  /abc/I
4      abc      abc
5      defabc      defabc
6      \Aabc      \Aabc
# Line 8  Line 8 
8      \Adefabc      \Adefabc
9      ABC      ABC
10    
11  /^abc/  /^abc/I
12      abc      abc
13      \Aabc      \Aabc
14      *** Failers      *** Failers
15      defabc      defabc
16      \Adefabc      \Adefabc
17    
18  /a+bc/  /a+bc/I
19    
20  /a*bc/  /a*bc/I
21    
22  /a{3}bc/  /a{3}bc/I
23    
24  /(abc|a+z)/  /(abc|a+z)/I
25    
26  /^abc$/  /^abc$/I
27      abc      abc
28      *** Failers      *** Failers
29      def\nabc      def\nabc
30    
31  /ab\gdef/X  /ab\idef/X
32    
33  /(?X)ab\gdef/X  /(?X)ab\idef/X
34    
35  /x{5,4}/  /x{5,4}/
36    
# Line 50  Line 50 
50    
51  /(?z)abc/  /(?z)abc/
52    
53  /.*b/  /.*b/I
54    
55  /.*?b/  /.*?b/I
56    
57  /cat|dog|elephant/  /cat|dog|elephant/I
58      this sentence eventually mentions a cat      this sentence eventually mentions a cat
59      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
60    
61  /cat|dog|elephant/S  /cat|dog|elephant/IS
62      this sentence eventually mentions a cat      this sentence eventually mentions a cat
63      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
64    
65  /cat|dog|elephant/iS  /cat|dog|elephant/IiS
66      this sentence eventually mentions a CAT cat      this sentence eventually mentions a CAT cat
67      this sentences rambles on and on for a while to elephant ElePhant      this sentences rambles on and on for a while to elephant ElePhant
68    
69  /a|[bcd]/S  /a|[bcd]/IS
70    
71  /(a|[^\dZ])/S  /(a|[^\dZ])/IS
72    
73  /(a|b)*[\s]/S  /(a|b)*[\s]/IS
74    
75  /(ab\2)/  /(ab\2)/
76    
77  /{4,5}abc/  /{4,5}abc/
78    
79  /(a)(b)(c)\2/  /(a)(b)(c)\2/I
80      abcb      abcb
81      \O0abcb      \O0abcb
82      \O3abcb      \O3abcb
83      \O6abcb      \O6abcb
84      \O9abcb      \O9abcb
85      \O12abcb      \O12abcb
86    
87  /(a)bc|(a)(b)\2/  /(a)bc|(a)(b)\2/I
88      abc      abc
89      \O0abc      \O0abc
90      \O3abc      \O3abc
# Line 96  Line 96 
96      \O9aba      \O9aba
97      \O12aba      \O12aba
98    
99  /abc$/E  /abc$/IE
100      abc      abc
101      *** Failers      *** Failers
102      abc\n      abc\n
# Line 104  Line 104 
104    
105  /(a)(b)(c)(d)(e)\6/  /(a)(b)(c)(d)(e)\6/
106    
107  /the quick brown fox/  /the quick brown fox/I
108      the quick brown fox      the quick brown fox
109      this is a line with the quick brown fox      this is a line with the quick brown fox
110    
111  /the quick brown fox/A  /the quick brown fox/IA
112      the quick brown fox      the quick brown fox
113      *** Failers      *** Failers
114      this is a line with the quick brown fox      this is a line with the quick brown fox
115    
116  /ab(?z)cd/  /ab(?z)cd/
117    
118  /^abc|def/  /^abc|def/I
119      abcdef      abcdef
120      abcdef\B      abcdef\B
121    
122  /.*((abc)$|(def))/  /.*((abc)$|(def))/I
123      defabc      defabc
124      \Zdefabc      \Zdefabc
125    
126  /abc/P  /abc/IP
127      abc      abc
128      *** Failers      *** Failers
129    
130  /^abc|def/P  /^abc|def/IP
131      abcdef      abcdef
132      abcdef\B      abcdef\B
133    
134  /.*((abc)$|(def))/P  /.*((abc)$|(def))/IP
135      defabc      defabc
136      \Zdefabc      \Zdefabc
137    
138  /the quick brown fox/P  /the quick brown fox/IP
139      the quick brown fox      the quick brown fox
140      *** Failers      *** Failers
141      The Quick Brown Fox      The Quick Brown Fox
142    
143  /the quick brown fox/Pi  /the quick brown fox/IPi
144      the quick brown fox      the quick brown fox
145      The Quick Brown Fox      The Quick Brown Fox
146    
147  /abc.def/P  /abc.def/IP
148      *** Failers      *** Failers
149      abc\ndef      abc\ndef
150    
151  /abc$/P  /abc$/IP
152      abc      abc
153      abc\n      abc\n
154    
155  /(abc)\2/P  /(abc)\2/IP
156    
157  /(abc\1)/P  /(abc\1)/IP
158      abc      abc
159    
160  /)/  /)/
161    
162  /a[]b/  /a[]b/
163    
164  /[^aeiou ]{3,}/  /[^aeiou ]{3,}/I
165      co-processors, and for      co-processors, and for
166    
167  /<.*>/  /<.*>/I
168      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
169    
170  /<.*?>/  /<.*?>/I
171      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
172    
173  /<.*>/U  /<.*>/IU
174      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
175    
176  /(?U)<.*>/  /(?U)<.*>/I
177      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
178    
179  /<.*?>/U  /<.*?>/IU
180      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
181    
182  /={3,}/U  /={3,}/IU
183      abc========def      abc========def
184    
185  /(?U)={3,}?/  /(?U)={3,}?/I
186      abc========def      abc========def
187    
188  /(?<!bar|cattle)foo/  /(?<!bar|cattle)foo/I
189      foo      foo
190      catfoo      catfoo
191      *** Failers      *** Failers
192      the barfoo      the barfoo
193      and cattlefoo      and cattlefoo
194    
195  /(?<=a+)b/  /(?<=a+)b/
196    
# Line 198  Line 198 
198    
199  /(?<!(foo)a\1)bar/  /(?<!(foo)a\1)bar/
200    
201  /(?i)abc/  /(?i)abc/I
202    
203  /(a|(?m)a)/  /(a|(?m)a)/I
204    
205  /(?i)^1234/  /(?i)^1234/I
206    
207  /(^b|(?i)^d)/  /(^b|(?i)^d)/I
208    
209  /(?s).*/  /(?s).*/I
210    
211  /[abcd]/S  /[abcd]/IS
212    
213  /(?i)[abcd]/S  /(?i)[abcd]/IS
214    
215  /(?m)[xy]|(b|c)/S  /(?m)[xy]|(b|c)/IS
216    
217  /(^a|^b)/m  /(^a|^b)/Im
218    
219  /(?i)(^a|^b)/m  /(?i)(^a|^b)/Im
220    
221  /(a)(?(1)a|b|c)/  /(a)(?(1)a|b|c)/
222    
# Line 224  Line 224 
224    
225  /(?(1a)/  /(?(1a)/
226    
227    /(?(1a))/
228    
229  /(?(?i))/  /(?(?i))/
230    
231  /(?(abc))/  /(?(abc))/
232    
233  /(?(?<ab))/  /(?(?<ab))/
234    
235  /((?s)blah)\s+\1/  /((?s)blah)\s+\1/I
236    
237  /((?i)blah)\s+\1/  /((?i)blah)\s+\1/I
238    
239  /((?i)b)/DS  /((?i)b)/IDZS
240    
241  /(a*b|(?i:c*(?-i)d))/S  /(a*b|(?i:c*(?-i)d))/IS
242    
243  /a$/  /a$/I
244      a      a
245      a\n      a\n
246      *** Failers      *** Failers
247      \Za      \Za
248      \Za\n      \Za\n
249    
250  /a$/m  /a$/Im
251      a      a
252      a\n      a\n
253      \Za\n      \Za\n
254      *** Failers      *** Failers
255      \Za      \Za
   
 /\Aabc/m  
256    
257  /^abc/m  /\Aabc/Im
258    
259    /^abc/Im
260    
261  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
262    aaaaabbbbbcccccdef    aaaaabbbbbcccccdef
263    
264  /(?<=foo)[ab]/S  /(?<=foo)[ab]/IS
265    
266  /(?<!foo)(alpha|omega)/S  /(?<!foo)(alpha|omega)/IS
267    
268  /(?!alphabet)[ab]/S  /(?!alphabet)[ab]/IS
269    
270  /(?<=foo\n)^bar/m  /(?<=foo\n)^bar/Im
271      foo\nbarbar      foo\nbarbar
272      ***Failers      ***Failers
273      rhubarb      rhubarb
274      barbell      barbell
275      abc\nbarton      abc\nbarton
276    
277  /^(?<=foo\n)bar/m  /^(?<=foo\n)bar/Im
278      foo\nbarbar      foo\nbarbar
279      ***Failers      ***Failers
280      rhubarb      rhubarb
281      barbell      barbell
282      abc\nbarton      abc\nbarton
283    
284  /(?>^abc)/m  /(?>^abc)/Im
285      abc      abc
286      def\nabc      def\nabc
287      *** Failers      *** Failers
288      defabc      defabc
289    
290  /(?<=ab(c+)d)ef/  /(?<=ab(c+)d)ef/
291    
# Line 293  Line 295 
295    
296  /The next three are in testinput2 because they have variable length branches/  /The next three are in testinput2 because they have variable length branches/
297    
298  /(?<=bullock|donkey)-cart/  /(?<=bullock|donkey)-cart/I
299      the bullock-cart      the bullock-cart
300      a donkey-cart race      a donkey-cart race
301      *** Failers      *** Failers
302      cart      cart
303      horse-and-cart      horse-and-cart
304    
305  /(?<=ab(?i)x|y|z)/  /(?<=ab(?i)x|y|z)/I
306    
307  /(?>.*)(?<=(abcd)|(xyz))/  /(?>.*)(?<=(abcd)|(xyz))/I
308      alphabetabcd      alphabetabcd
309      endingxyz      endingxyz
310    
311  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
312      abxyZZ      abxyZZ
313      abXyZZ      abXyZZ
314      ZZZ      ZZZ
315      zZZ      zZZ
316      bZZ      bZZ
317      BZZ      BZZ
318      *** Failers      *** Failers
319      ZZ      ZZ
320      abXYZZ      abXYZZ
321      zzz      zzz
322      bzz      bzz
323    
324  /(?<!(foo)a)bar/  /(?<!(foo)a)bar/I
325      bar      bar
326      foobbar      foobbar
327      *** Failers      *** Failers
328      fooabar      fooabar
329    
330  /This one is here because Perl 5.005_02 doesn't fail it/  /This one is here because Perl 5.005_02 doesn't fail it/I
331    
332  /^(a)?(?(1)a|b)+$/  /^(a)?(?(1)a|b)+$/I
333      *** Failers      *** Failers
334      a      a
335    
336  /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/  /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/I
337    
338  /^(a\1?){4}$/  /^(a\1?){4}$/I
339      aaaaaa      aaaaaa
340    
341  /These are syntax tests from Perl 5.005/  /These are syntax tests from Perl 5.005/I
342    
343  /a[b-a]/  /a[b-a]/
344    
# Line 362  Line 364 
364    
365  /(a)|\2/  /(a)|\2/
366    
367  /a[b-a]/i  /a[b-a]/Ii
368    
369  /a[]b/i  /a[]b/Ii
370    
371  /a[/i  /a[/Ii
372    
373  /*a/i  /*a/Ii
374    
375  /(*)b/i  /(*)b/Ii
376    
377  /abc)/i  /abc)/Ii
378    
379  /(abc/i  /(abc/Ii
380    
381  /a**/i  /a**/Ii
382    
383  /)(/i  /)(/Ii
384    
385  /:(?:/  /:(?:/
386    
# Line 396  Line 398 
398    
399  /(?(1?)a|b)/  /(?(1?)a|b)/
400    
 /(?(1)a|b|c)/  
   
401  /[a[:xyz:/  /[a[:xyz:/
402    
403  /(?<=x+)y/  /(?<=x+)y/
# Line 410  Line 410 
410    
411  /abc/\i  /abc/\i
412    
413  /(a)bc(d)/  /(a)bc(d)/I
414      abcd      abcd
415      abcd\C2      abcd\C2
416      abcd\C5      abcd\C5
417    
418  /(.{20})/  /(.{20})/I
419      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
420      abcdefghijklmnopqrstuvwxyz\C1      abcdefghijklmnopqrstuvwxyz\C1
421      abcdefghijklmnopqrstuvwxyz\G1      abcdefghijklmnopqrstuvwxyz\G1
422    
423  /(.{15})/  /(.{15})/I
424      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
425      abcdefghijklmnopqrstuvwxyz\C1\G1      abcdefghijklmnopqrstuvwxyz\C1\G1
426    
427  /(.{16})/  /(.{16})/I
428      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
429      abcdefghijklmnopqrstuvwxyz\C1\G1\L      abcdefghijklmnopqrstuvwxyz\C1\G1\L
   
 /^(a|(bc))de(f)/  
     adef\G1\G2\G3\G4\L  
     bcdef\G1\G2\G3\G4\L  
     adefghijk\C0  
   
 /^abc\00def/  
     abc\00def\L\C0  
   
 /word ((?:[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]+  
 )?)?)?)?)?)?)?)?)?otherword/M  
430    
431  /.*X/D  /^(a|(bc))de(f)/I
432        adef\G1\G2\G3\G4\L
433        bcdef\G1\G2\G3\G4\L
434        adefghijk\C0
435    
436  /.*X/Ds  /^abc\00def/I
437        abc\00def\L\C0
438    
439  /(.*X|^B)/D  /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
440    )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
441    )?)?)?)?)?)?)?)?)?otherword/I
442    
443  /(.*X|^B)/Ds  /.*X/IDZ
444    
445  /(?s)(.*X|^B)/D  /.*X/IDZs
446    
447    /(.*X|^B)/IDZ
448    
449    /(.*X|^B)/IDZs
450    
451    /(?s)(.*X|^B)/IDZ
452    
453  /(?s:.*X|^B)/D  /(?s:.*X|^B)/IDZ
454    
455  /\Biss\B/+  /\Biss\B/I+
456      Mississippi      Mississippi
457    
458  /\Biss\B/+P  /\Biss\B/I+P
459      Mississippi      Mississippi
460    
461  /iss/G+  /iss/IG+
462      Mississippi      Mississippi
463    
464  /\Biss\B/G+  /\Biss\B/IG+
465      Mississippi      Mississippi
466    
467  /\Biss\B/g+  /\Biss\B/Ig+
468      Mississippi      Mississippi
469      *** Failers      *** Failers
470      Mississippi\A      Mississippi\A
471    
472  /(?<=[Ms])iss/g+  /(?<=[Ms])iss/Ig+
473      Mississippi      Mississippi
474    
475  /(?<=[Ms])iss/G+  /(?<=[Ms])iss/IG+
476      Mississippi      Mississippi
477    
478  /^iss/g+  /^iss/Ig+
479      ississippi      ississippi
   
 /.*iss/g+  
     abciss\nxyzisspqr  
480    
481  /.i./+g  /.*iss/Ig+
482        abciss\nxyzisspqr
483    
484    /.i./I+g
485      Mississippi      Mississippi
486      Mississippi\A      Mississippi\A
487      Missouri river      Missouri river
488      Missouri river\A      Missouri river\A
489    
490  /^.is/+g  /^.is/I+g
491      Mississippi      Mississippi
492    
493  /^ab\n/g+  /^ab\n/Ig+
494      ab\nab\ncd      ab\nab\ncd
495    
496  /^ab\n/mg+  /^ab\n/Img+
497      ab\nab\ncd      ab\nab\ncd
498    
499  /abc/  /abc/I
500    
501  /abc|bac/  /abc|bac/I
502    
503  /(abc|bac)/  /(abc|bac)/I
504    
505  /(abc|(c|dc))/  /(abc|(c|dc))/I
506    
507  /(abc|(d|de)c)/  /(abc|(d|de)c)/I
508    
509  /a*/  /a*/I
510    
511  /a+/  /a+/I
512    
513  /(baa|a+)/  /(baa|a+)/I
514    
515  /a{0,3}/  /a{0,3}/I
516    
517  /baa{3,}/  /baa{3,}/I
518    
519  /"([^\\"]+|\\.)*"/  /"([^\\"]+|\\.)*"/I
520    
521  /(abc|ab[cd])/  /(abc|ab[cd])/I
522    
523  /(a|.)/  /(a|.)/I
524    
525  /a|ba|\w/  /a|ba|\w/I
526    
527  /abc(?=pqr)/  /abc(?=pqr)/I
528    
529  /...(?<=abc)/  /...(?<=abc)/I
530    
531  /abc(?!pqr)/  /abc(?!pqr)/I
532    
533  /ab./  /ab./I
534    
535  /ab[xyz]/  /ab[xyz]/I
536    
537  /abc*/  /abc*/I
538    
539  /ab.c*/  /ab.c*/I
540    
541  /a.c*/  /a.c*/I
542    
543  /.c*/  /.c*/I
544    
545  /ac*/  /ac*/I
546    
547  /(a.c*|b.c*)/  /(a.c*|b.c*)/I
548    
549  /a.c*|aba/  /a.c*|aba/I
550    
551  /.+a/  /.+a/I
552    
553  /(?=abcda)a.*/  /(?=abcda)a.*/I
554    
555  /(?=a)a.*/  /(?=a)a.*/I
556    
557  /a(b)*/  /a(b)*/I
558    
559  /a\d*/  /a\d*/I
560    
561  /ab\d*/  /ab\d*/I
562    
563  /a(\d)*/  /a(\d)*/I
564    
565  /abcde{0,0}/  /abcde{0,0}/I
566    
567  /ab\d+/  /ab\d+/I
568    
569  /a(?(1)b)/  /a(?(1)b)(.)/I
570    
571  /a(?(1)bag|big)/  /a(?(1)bag|big)(.)/I
572    
573  /a(?(1)bag|big)*/  /a(?(1)bag|big)*(.)/I
574    
575  /a(?(1)bag|big)+/  /a(?(1)bag|big)+(.)/I
576    
577  /a(?(1)b..|b..)/  /a(?(1)b..|b..)(.)/I
578    
579  /ab\d{0}e/  /ab\d{0}e/I
580    
581  /a?b?/  /a?b?/I
582      a      a
583      b      b
584      ab      ab
585      \      \
586      *** Failers      *** Failers
587      \N      \N
588    
589  /|-/  /|-/I
590      abcd      abcd
591      -abc      -abc
592      \Nab-c      \Nab-c
593      *** Failers      *** Failers
594      \Nabc      \Nabc
595    
596  /a*(b+)(z)(z)/P  /a*(b+)(z)(z)/IP
597      aaaabbbbzzzz      aaaabbbbzzzz
598      aaaabbbbzzzz\O0      aaaabbbbzzzz\O0
599      aaaabbbbzzzz\O1      aaaabbbbzzzz\O1
# Line 601  Line 601 
601      aaaabbbbzzzz\O3      aaaabbbbzzzz\O3
602      aaaabbbbzzzz\O4      aaaabbbbzzzz\O4
603      aaaabbbbzzzz\O5      aaaabbbbzzzz\O5
604    
605  /^.?abcd/S  /^.?abcd/IS
606    
607  /\(             # ( at start  /\(             # ( at start
608    (?:           # Non-capturing bracket    (?:           # Non-capturing bracket
# Line 611  Line 611 
611    (?R)          # Recurse - i.e. nested bracketed string    (?R)          # Recurse - i.e. nested bracketed string
612    )*            # Zero or more contents    )*            # Zero or more contents
613    \)            # Closing )    \)            # Closing )
614    /x    /Ix
615      (abcd)      (abcd)
616      (abcd)xyz      (abcd)xyz
617      xyz(abcd)      xyz(abcd)
618      (ab(xy)cd)pqr      (ab(xy)cd)pqr
619      (ab(xycd)pqr      (ab(xycd)pqr
620      () abc ()      () abc ()
621      12(abcde(fsh)xyz(foo(bar))lmno)89      12(abcde(fsh)xyz(foo(bar))lmno)89
622      *** Failers      *** Failers
623      abcd      abcd
624      abcd)      abcd)
625      (abcd      (abcd
626    
627  /\(  ( (?>[^()]+) | (?R) )* \) /xg  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg
628      (ab(xy)cd)pqr      (ab(xy)cd)pqr
629      1(abcd)(x(y)z)pqr      1(abcd)(x(y)z)pqr
630    
631  /\(  (?: (?>[^()]+) | (?R) ) \) /x  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix
632      (abcd)      (abcd)
633      (ab(xy)cd)      (ab(xy)cd)
634      (a(b(c)d)e)      (a(b(c)d)e)
635      ((ab))      ((ab))
636      *** Failers      *** Failers
637      ()      ()
638    
639  /\(  (?: (?>[^()]+) | (?R) )? \) /x  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix
640      ()      ()
641      12(abcde(fsh)xyz(foo(bar))lmno)89      12(abcde(fsh)xyz(foo(bar))lmno)89
642    
643  /\(  ( (?>[^()]+) | (?R) )* \) /x  /\(  ( (?>[^()]+) | (?R) )* \) /Ix
644      (ab(xy)cd)      (ab(xy)cd)
645    
646  /\( ( ( (?>[^()]+) | (?R) )* ) \) /x  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
647      (ab(xy)cd)      (ab(xy)cd)
648    
649  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /x  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
650      (ab(xy)cd)      (ab(xy)cd)
651      (123ab(xy)cd)      (123ab(xy)cd)
652    
653  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /x  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
654      (ab(xy)cd)      (ab(xy)cd)
655      (123ab(xy)cd)      (123ab(xy)cd)
656    
657  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /x  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
658      (ab(xy)cd)      (ab(xy)cd)
659    
660  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /x  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
661      (abcd(xyz<p>qrs)123)      (abcd(xyz<p>qrs)123)
662    
663  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /x  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
664      (ab(cd)ef)      (ab(cd)ef)
665      (ab(cd(ef)gh)ij)      (ab(cd(ef)gh)ij)
666    
667  /^[[:alnum:]]/D  /^[[:alnum:]]/DZ
668    
669  /^[[:^alnum:]]/D  /^[[:^alnum:]]/DZ
670    
671  /^[[:alpha:]]/D  /^[[:alpha:]]/DZ
672    
673  /^[[:^alpha:]]/D  /^[[:^alpha:]]/DZ
   
 /^[[:ascii:]]/D  
674    
675  /^[[:^ascii:]]/D  /[_[:alpha:]]/IS
676    
677  /^[[:blank:]]/D  /^[[:ascii:]]/DZ
678    
679  /^[[:cntrl:]]/D  /^[[:^ascii:]]/DZ
680    
681  /^[[:digit:]]/D  /^[[:blank:]]/DZ
682    
683  /^[[:graph:]]/D  /^[[:^blank:]]/DZ
684    
685  /^[[:lower:]]/D  /[\n\x0b\x0c\x0d[:blank:]]/IS
686    
687  /^[[:print:]]/D  /^[[:cntrl:]]/DZ
688    
689  /^[[:punct:]]/D  /^[[:digit:]]/DZ
690    
691  /^[[:space:]]/D  /^[[:graph:]]/DZ
692    
693  /^[[:upper:]]/D  /^[[:lower:]]/DZ
694    
695  /^[[:xdigit:]]/D  /^[[:print:]]/DZ
696    
697  /^[[:word:]]/D  /^[[:punct:]]/DZ
698    
699  /^[[:^cntrl:]]/D  /^[[:space:]]/DZ
700    
701  /^[12[:^digit:]]/D  /^[[:upper:]]/DZ
702    
703  /^[[:^blank:]]/D  /^[[:xdigit:]]/DZ
704    
705  /[01[:alpha:]%]/D  /^[[:word:]]/DZ
706    
707  /[[.ch.]]/  /^[[:^cntrl:]]/DZ
708    
709  /[[=ch=]]/  /^[12[:^digit:]]/DZ
710    
711  /[[:rhubarb:]]/  /^[[:^blank:]]/DZ
712    
713  /[[:upper:]]/i  /[01[:alpha:]%]/DZ
714    
715    /[[.ch.]]/I
716    
717    /[[=ch=]]/I
718    
719    /[[:rhubarb:]]/I
720    
721    /[[:upper:]]/Ii
722      A      A
723      a      a
724    
725  /[[:lower:]]/i  /[[:lower:]]/Ii
726      A      A
727      a      a
728    
729  /((?-i)[[:lower:]])[[:lower:]]/i  /((?-i)[[:lower:]])[[:lower:]]/Ii
730      ab      ab
731      aB      aB
732      *** Failers      *** Failers
733      Ab      Ab
734      AB      AB
735    
736  /[\200-\410]/  /[\200-\110]/I
737    
738  /^(?(0)f|b)oo/  /^(?(0)f|b)oo/I
739    
740  /This one's here because of the large output vector needed/  /This one's here because of the large output vector needed/I
741    
742  /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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)/  /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
743      \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC      \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
744    
745  /This one's here because Perl does this differently and PCRE can't at present/  /This one's here because Perl does this differently and PCRE can't at present/I
746    
747  /(main(O)?)+/  /(main(O)?)+/I
748      mainmain      mainmain
749      mainOmain      mainOmain
   
 /These are all cases where Perl does it differently (nested captures)/  
750    
751  /^(a(b)?)+$/  /These are all cases where Perl does it differently (nested captures)/I
752    
753    /^(a(b)?)+$/I
754      aba      aba
   
 /^(aa(bb)?)+$/  
     aabbaa  
   
 /^(aa|aa(bb))+$/  
     aabbaa  
   
 /^(aa(bb)??)+$/  
     aabbaa  
   
 /^(?:aa(bb)?)+$/  
     aabbaa  
   
 /^(aa(b(b))?)+$/  
     aabbaa  
755    
756  /^(?:aa(b(b))?)+$/  /^(aa(bb)?)+$/I
757      aabbaa      aabbaa
758    
759  /^(?:aa(b(?:b))?)+$/  /^(aa|aa(bb))+$/I
760      aabbaa      aabbaa
761    
762  /^(?:aa(bb(?:b))?)+$/  /^(aa(bb)??)+$/I
763      aabbbaa      aabbaa
   
 /^(?:aa(b(?:bb))?)+$/  
     aabbbaa  
764    
765  /^(?:aa(?:b(b))?)+$/  /^(?:aa(bb)?)+$/I
766      aabbaa      aabbaa
767    
768  /^(?:aa(?:b(bb))?)+$/  /^(aa(b(b))?)+$/I
769      aabbbaa      aabbaa
770    
771  /^(aa(b(bb))?)+$/  /^(?:aa(b(b))?)+$/I
772      aabbbaa      aabbaa
773    
774  /^(aa(bb(bb))?)+$/  /^(?:aa(b(?:b))?)+$/I
775      aabbbbaa      aabbaa
776    
777  /--------------------------------------------------------------------/  /^(?:aa(bb(?:b))?)+$/I
778        aabbbaa
779  /#/xMD  
780    /^(?:aa(b(?:bb))?)+$/I
781        aabbbaa
782    
783    /^(?:aa(?:b(b))?)+$/I
784        aabbaa
785    
786    /^(?:aa(?:b(bb))?)+$/I
787        aabbbaa
788    
789    /^(aa(b(bb))?)+$/I
790        aabbbaa
791    
792    /^(aa(bb(bb))?)+$/I
793        aabbbbaa
794    
795    /--------------------------------------------------------------------/I
796    
797    /#/IxDZ
798    
799  /a#/xMD  /a#/IxDZ
800    
801  /[\s]/D  /[\s]/DZ
802    
803  /[\S]/D  /[\S]/DZ
804    
805  /a(?i)b/D  /a(?i)b/DZ
806      ab      ab
807      aB      aB
808      *** Failers      *** Failers
809      AB      AB
810    
811  /(a(?i)b)/D  /(a(?i)b)/DZ
812      ab      ab
813      aB      aB
814      *** Failers      *** Failers
815      AB      AB
816    
817  /   (?i)abc/xD  /   (?i)abc/IxDZ
818    
819  /#this is a comment  /#this is a comment
820    (?i)abc/xD    (?i)abc/IxDZ
821    
822  /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D  /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
823    
824  /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D  /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
825    
826  /\Q\E/D  /\Q\E/DZ
827      \      \
828    
829  /\Q\Ex/D  /\Q\Ex/DZ
830    
831  / \Q\E/D  / \Q\E/DZ
832    
833  /a\Q\E/D  /a\Q\E/DZ
834    abc    abc
835    bca    bca
836    bac    bac
837    
838  /a\Q\Eb/D  /a\Q\Eb/DZ
839    abc    abc
840    
841  /\Q\Eabc/D  /\Q\Eabc/DZ
842    
843  /x*+\w/D  /x*+\w/DZ
844      *** Failers      *** Failers
845      xxxxx      xxxxx
   
 /x?+/D  
846    
847  /x++/D  /x?+/DZ
848    
849    /x++/DZ
850    
851  /x{1,3}+/D  /x{1,3}+/DZ
852    
853  /(x)*+/D  /(x)*+/DZ
854    
855  /^(\w++|\s++)*$/  /^(\w++|\s++)*$/I
856      now is the time for all good men to come to the aid of the party      now is the time for all good men to come to the aid of the party
857      *** Failers      *** Failers
858      this is not a line with only words and spaces!      this is not a line with only words and spaces!
859    
860  /(\d++)(\w)/  /(\d++)(\w)/I
861      12345a      12345a
862      *** Failers      *** Failers
863      12345+      12345+
864    
865  /a++b/  /a++b/I
866      aaab      aaab
867    
868  /(a++b)/  /(a++b)/I
869      aaab      aaab
870    
871  /(a++)b/  /(a++)b/I
872      aaab      aaab
873    
874  /([^()]++|\([^()]*\))+/  /([^()]++|\([^()]*\))+/I
875      ((abc(ade)ufh()()x      ((abc(ade)ufh()()x
876    
877  /\(([^()]++|\([^()]+\))+\)/  /\(([^()]++|\([^()]+\))+\)/I
878      (abc)      (abc)
879      (abc(def)xyz)      (abc(def)xyz)
880      *** Failers      *** Failers
881      ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa      ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
882    
883  /(abc){1,3}+/D  /(abc){1,3}+/DZ
884    
885  /a+?+/  /a+?+/I
886    
887  /a{2,3}?+b/  /a{2,3}?+b/I
888    
889  /(?U)a+?+/  /(?U)a+?+/I
890    
891  /a{2,3}?+b/U  /a{2,3}?+b/IU
892    
893  /x(?U)a++b/D  /x(?U)a++b/DZ
894      xaaaab      xaaaab
895    
896  /(?U)xa++b/D  /(?U)xa++b/DZ
897      xaaaab      xaaaab
898    
899  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/D  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
900    
901  /^x(?U)a+b/D  /^x(?U)a+b/DZ
902    
903  /^x(?U)(a+)b/D  /^x(?U)(a+)b/DZ
904    
905  /[.x.]/  /[.x.]/I
906    
907  /[=x=]/  /[=x=]/I
908    
909  /[:x:]/  /[:x:]/I
910    
911  /\l/  /\l/I
912    
913  /\L/  /\L/I
914    
915  /\N{name}/  /\N{name}/I
916    
917  /\u/  /\u/I
918    
919  /\U/  /\U/I
920    
921  /[/  /[/I
922    
923  /[a-/  /[a-/I
924    
925  /[[:space:]/  /[[:space:]/I
926    
927  /[\s]/DM  /[\s]/IDZ
928    
929  /[[:space:]]/DM  /[[:space:]]/IDZ
930    
931  /[[:space:]abcde]/DM  /[[:space:]abcde]/IDZ
932    
933  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/x  /< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/Ix
934      <>      <>
935      <abcd>      <abcd>
936      <abc <123> hij>      <abc <123> hij>
937      <abc <def> hij>      <abc <def> hij>
938      <abc<>def>      <abc<>def>
939      <abc<>      <abc<>
940      *** Failers      *** Failers
941      <abc      <abc
942    
943  |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|DM  |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
944    
945  |\$\<\.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|DM  |\$\<\.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
946    
947  /(.*)\d+\1/I  /(.*)\d+\1/I
948    
949  /(.*)\d+/I  /(.*)\d+/I
950    
951  /(.*)\d+\1/Is  /(.*)\d+\1/Is
952    
953  /(.*)\d+/Is  /(.*)\d+/Is
# Line 950  Line 956 
956    
957  /((.*))\d+\1/I  /((.*))\d+\1/I
958      abc123bc      abc123bc
959    
960  /a[b]/I  /a[b]/I
961    
962  /(?=a).*/I  /(?=a).*/I
963    
964  /(?=abc).xyz/iI  /(?=abc).xyz/IiI
965    
966  /(?=abc)(?i).xyz/I  /(?=abc)(?i).xyz/I
967    
# Line 969  Line 975 
975    
976  /()a/I  /()a/I
977    
978  /(?(1)ab|ac)/I  /(?(1)ab|ac)(.)/I
979    
980  /(?(1)abz|acz)/I  /(?(1)abz|acz)(.)/I
981    
982  /(?(1)abz)/I  /(?(1)abz)(.)/I
983    
984  /(?(1)abz)123/I  /(?(1)abz)(1)23/I
985    
986  /(a)+/I  /(a)+/I
987    
# Line 997  Line 1003 
1003    
1004  /a^b/I  /a^b/I
1005    
1006  /^a/mI  /^a/Im
1007    abcde    abcde
1008    xy\nabc    xy\nabc
1009    *** Failers    *** Failers
1010    xyabc    xyabc
1011    
1012  /c|abc/I  /c|abc/I
1013    
# Line 1009  Line 1015 
1015    
1016  /[ab](?i)cd/IS  /[ab](?i)cd/IS
1017    
1018  /abc(?C)def/  /abc(?C)def/I
1019      abcdef      abcdef
1020      1234abcdef      1234abcdef
1021      *** Failers      *** Failers
1022      abcxyz      abcxyz
1023      abcxyzf      abcxyzf
1024    
1025  /abc(?C)de(?C1)f/  /abc(?C)de(?C1)f/I
1026      123abcdef      123abcdef
1027    
1028  /(?C1)\dabc(?C2)def/  /(?C1)\dabc(?C2)def/I
1029      1234abcdef      1234abcdef
1030      *** Failers      *** Failers
1031      abcdef      abcdef
1032    
1033  /(?C255)ab/  /(?C255)ab/I
1034    
1035  /(?C256)ab/  /(?C256)ab/I
1036    
1037  /(?Cab)xx/  /(?Cab)xx/I
1038    
1039  /(?C12vr)x/  /(?C12vr)x/I
1040    
1041  /abc(?C)def/  /abc(?C)def/I
1042      *** Failers      *** Failers
1043      \x83\x0\x61bcdef      \x83\x0\x61bcdef
1044    
1045  /(abc)(?C)de(?C1)f/  /(abc)(?C)de(?C1)f/I
1046      123abcdef      123abcdef
1047      123abcdef\C+      123abcdef\C+
1048      123abcdef\C-      123abcdef\C-
1049      *** Failers      *** Failers
1050      123abcdef\C!1      123abcdef\C!1
1051    
1052  /(?C0)(abc(?C1))*/  /(?C0)(abc(?C1))*/I
1053      abcabcabc      abcabcabc
1054      abcabc\C!1!3      abcabc\C!1!3
1055      *** Failers      *** Failers
1056      abcabcabc\C!1!3      abcabcabc\C!1!3
1057    
1058  /(\d{3}(?C))*/  /(\d{3}(?C))*/I
1059      123\C+      123\C+
1060      123456\C+      123456\C+
1061      123456789\C+      123456789\C+
1062    
1063  /((xyz)(?C)p|(?C1)xyzabc)/  /((xyz)(?C)p|(?C1)xyzabc)/I
1064      xyzabc\C+      xyzabc\C+
1065    
1066  /(X)((xyz)(?C)p|(?C1)xyzabc)/  /(X)((xyz)(?C)p|(?C1)xyzabc)/I
1067      Xxyzabc\C+      Xxyzabc\C+
1068    
1069  /(?=(abc))(?C)abcdef/  /(?=(abc))(?C)abcdef/I
1070      abcdef\C+      abcdef\C+
   
 /(?!(abc)(?C1)d)(?C2)abcxyz/  
     abcxyz\C+  
1071    
1072  /(?<=(abc)(?C))xyz/  /(?!(abc)(?C1)d)(?C2)abcxyz/I
1073        abcxyz\C+
1074    
1075    /(?<=(abc)(?C))xyz/I
1076     abcxyz\C+     abcxyz\C+
1077    
1078  /a(b+)(c*)(?C1)/  /a(b+)(c*)(?C1)/I
1079      abbbbbccc\C*1      abbbbbccc\C*1
1080    
1081  /a(b+?)(c*?)(?C1)/  /a(b+?)(c*?)(?C1)/I
1082      abbbbbccc\C*1      abbbbbccc\C*1
   
 /(?C)abc/  
1083    
1084  /(?C)^abc/  /(?C)abc/I
1085    
1086    /(?C)^abc/I
1087    
1088  /(?C)a|b/S  /(?C)a|b/IS
1089    
1090  /(?R)/  /(?R)/I
1091    
1092  /(a|(?R))/  /(a|(?R))/I
1093    
1094  /(ab|(bc|(de|(?R))))/  /(ab|(bc|(de|(?R))))/I
1095    
1096  /x(ab|(bc|(de|(?R))))/  /x(ab|(bc|(de|(?R))))/I
1097      xab      xab
1098      xbc      xbc
1099      xde      xde
1100      xxab      xxab
1101      xxxab      xxxab
1102      *** Failers      *** Failers
1103      xyab      xyab
1104    
1105  /(ab|(bc|(de|(?1))))/  /(ab|(bc|(de|(?1))))/I
1106    
1107  /x(ab|(bc|(de|(?1)x)x)x)/  /x(ab|(bc|(de|(?1)x)x)x)/I
1108    
1109  /^([^()]|\((?1)*\))*$/  /^([^()]|\((?1)*\))*$/I
1110      abc      abc
1111      a(b)c      a(b)c
1112      a(b(c))d      a(b(c))d
1113      *** Failers)      *** Failers)
1114      a(b(c)d      a(b(c)d
1115    
1116  /^>abc>([^()]|\((?1)*\))*<xyz<$/  /^>abc>([^()]|\((?1)*\))*<xyz<$/I
1117     >abc>123<xyz<     >abc>123<xyz<
1118     >abc>1(2)3<xyz<     >abc>1(2)3<xyz<
1119     >abc>(1(2)3)<xyz<     >abc>(1(2)3)<xyz<
1120    
1121  /(a(?1)b)/D  /(a(?1)b)/DZ
1122    
1123  /(a(?1)+b)/D  /(a(?1)+b)/DZ
1124    
1125  /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/i  /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii
1126      1221      1221
1127      Satan, oscillate my metallic sonatas!      Satan, oscillate my metallic sonatas!
1128      A man, a plan, a canal: Panama!      A man, a plan, a canal: Panama!
1129      Able was I ere I saw Elba.      Able was I ere I saw Elba.
1130      *** Failers      *** Failers
1131      The quick brown fox      The quick brown fox
1132    
1133  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/  /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
1134      12      12
1135      (((2+2)*-3)-7)      (((2+2)*-3)-7)
1136      -12      -12
1137      *** Failers      *** Failers
1138      ((2+2)*-3)-7)      ((2+2)*-3)-7)
1139    
1140  /^(x(y|(?1){2})z)/  /^(x(y|(?1){2})z)/I
1141      xyz      xyz
1142      xxyzxyzz      xxyzxyzz
1143      *** Failers      *** Failers
1144      xxyzz      xxyzz
1145      xxyzxyzxyzz      xxyzxyzxyzz
1146    
1147  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/x  /((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/Ix
1148      <>      <>
1149      <abcd>      <abcd>
1150      <abc <123> hij>      <abc <123> hij>
1151      <abc <def> hij>      <abc <def> hij>
1152      <abc<>def>      <abc<>def>
1153      <abc<>      <abc<>
1154      *** Failers      *** Failers
1155      <abc      <abc
1156    
1157  /(?1)/  /(?1)/I
1158    
1159  /((?2)(abc)/  /((?2)(abc)/I
1160    
1161  /^(abc)def(?1)/  /^(abc)def(?1)/I
1162      abcdefabc      abcdefabc
1163    
1164  /^(a|b|c)=(?1)+/  /^(a|b|c)=(?1)+/I
1165      a=a      a=a
1166      a=b      a=b
1167      a=bc      a=bc
1168    
1169  /^(a|b|c)=((?1))+/  /^(a|b|c)=((?1))+/I
1170      a=a      a=a
1171      a=b      a=b
1172      a=bc      a=bc
1173    
1174  /a(?P<name1>b|c)d(?P<longername2>e)/D  /a(?P<name1>b|c)d(?P<longername2>e)/DZ
1175      abde      abde
1176      acde      acde
1177    
1178  /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/D  /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
1179    
1180  /(?P<a>a)...(?P=a)bbb(?P>a)d/D  /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
1181    
1182  /^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/i  /^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/Ii
1183      1221      1221
1184      Satan, oscillate my metallic sonatas!      Satan, oscillate my metallic sonatas!
1185      A man, a plan, a canal: Panama!      A man, a plan, a canal: Panama!
1186      Able was I ere I saw Elba.      Able was I ere I saw Elba.
1187      *** Failers      *** Failers
1188      The quick brown fox      The quick brown fox
1189    
1190  /((?(R)a|b))\1(?1)?/  /((?(R)a|b))\1(?1)?/I
1191    bb    bb
1192    bbaa    bbaa
1193    
1194  /(.*)a/sI  /(.*)a/Is
1195    
1196  /(.*)a\1/sI  /(.*)a\1/Is
1197    
1198  /(.*)a(b)\2/sI  /(.*)a(b)\2/Is
1199    
1200  /((.*)a|(.*)b)z/sI  /((.*)a|(.*)b)z/Is
1201    
1202  /((.*)a|(.*)b)z\1/sI  /((.*)a|(.*)b)z\1/Is
1203    
1204  /((.*)a|(.*)b)z\2/sI  /((.*)a|(.*)b)z\2/Is
1205    
1206  /((.*)a|(.*)b)z\3/sI  /((.*)a|(.*)b)z\3/Is
1207    
1208  /((.*)a|^(.*)b)z\3/sI  /((.*)a|^(.*)b)z\3/Is
1209    
1210  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/sI  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
1211    
1212  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/sI  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
1213    
1214  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/sI  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
1215    
1216  /(a)(bc)/ND  /(a)(bc)/INDZ
1217    abc    abc
1218    
1219  /(?P<one>a)(bc)/ND  /(?P<one>a)(bc)/INDZ
1220    abc    abc
1221    
1222  /(a)(?P<named>bc)/ND  /(a)(?P<named>bc)/INDZ
1223    
1224  /(a+)*zz/  /(a+)*zz/I
1225    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
1226    aaaaaaaaaaaaaz\M    aaaaaaaaaaaaaz\M
1227    
1228  /(aaa(?C1)bbb|ab)/  /(aaa(?C1)bbb|ab)/I
1229     aaabbb     aaabbb
1230     aaabbb\C*0     aaabbb\C*0
1231     aaabbb\C*1     aaabbb\C*1
1232     aaabbb\C*-1     aaabbb\C*-1
1233    
1234  /ab(?P<one>cd)ef(?P<two>gh)/  /ab(?P<one>cd)ef(?P<two>gh)/I
1235      abcdefgh      abcdefgh
1236      abcdefgh\C1\Gtwo      abcdefgh\C1\Gtwo
1237      abcdefgh\Cone\Ctwo      abcdefgh\Cone\Ctwo
1238      abcdefgh\Cthree      abcdefgh\Cthree
1239    
1240  /(?P<Tes>)(?P<Test>)/D  /(?P<Tes>)(?P<Test>)/DZ
1241    
1242  /(?P<Test>)(?P<Tes>)/D  /(?P<Test>)(?P<Tes>)/DZ
1243    
1244  /(?P<Z>zz)(?P<A>aa)/  /(?P<Z>zz)(?P<A>aa)/I
1245      zzaa\CZ      zzaa\CZ
1246      zzaa\CA      zzaa\CA
1247    
1248  /(?P<x>eks)(?P<x>eccs)/  /(?P<x>eks)(?P<x>eccs)/I
1249    
1250  /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/  /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
1251    
1252  "\[((?P<elem>\d+)(,(?P>elem))*)\]"  "\[((?P<elem>\d+)(,(?P>elem))*)\]"I
1253      [10,20,30,5,5,4,4,2,43,23,4234]      [10,20,30,5,5,4,4,2,43,23,4234]
1254      *** Failers      *** Failers
1255      []      []
1256    
1257  "\[((?P<elem>\d+)(,(?P>elem))*)?\]"  "\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
1258      [10,20,30,5,5,4,4,2,43,23,4234]      [10,20,30,5,5,4,4,2,43,23,4234]
1259      []      []
1260    
1261  /(a(b(?2)c))?/D  /(a(b(?2)c))?/DZ
1262    
1263  /(a(b(?2)c))*/D  /(a(b(?2)c))*/DZ
1264    
1265  /(a(b(?2)c)){0,2}/D  /(a(b(?2)c)){0,2}/DZ
1266    
1267  /[ab]{1}+/D  /[ab]{1}+/DZ
1268    
1269  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/i  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
1270       Baby Bjorn Active Carrier - With free SHIPPING!!       Baby Bjorn Active Carrier - With free SHIPPING!!
1271    
1272  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/iS  /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
1273       Baby Bjorn Active Carrier - With free SHIPPING!!       Baby Bjorn Active Carrier - With free SHIPPING!!
   
 /a*.*b/SD  
1274    
1275  /(a|b)*.?c/SD  /a*.*b/ISDZ
1276    
1277  /abc(?C255)de(?C)f/D  /(a|b)*.?c/ISDZ
1278    
1279  /abcde/CD  /abc(?C255)de(?C)f/DZ
1280    
1281    /abcde/ICDZ
1282    abcde    abcde
1283    abcdfe    abcdfe
1284    
1285  /a*b/CD  /a*b/ICDZ
1286    ab    ab
1287    aaaab    aaaab
1288    aaaacb    aaaacb
1289    
1290  /a+b/CD  /a+b/ICDZ
1291    ab    ab
1292    aaaab    aaaab
1293    aaaacb    aaaacb
1294    
1295  /(abc|def)x/CD  /(abc|def)x/ICDZ
1296    abcx    abcx
1297    defx    defx
1298    abcdefzx    abcdefzx
1299    
1300  /(ab|cd){3,4}/C  /(ab|cd){3,4}/IC
1301    ababab    ababab
1302    abcdabcd    abcdabcd
1303    abcdcdcdcdcd    abcdcdcdcdcd
1304    
1305  /([ab]{,4}c|xy)/CD  /([ab]{,4}c|xy)/ICDZ
1306      Note: that { does NOT introduce a quantifier      Note: that { does NOT introduce a quantifier
1307    
1308  /([ab]{1,4}c|xy){4,5}?123/CD  /([ab]{1,4}c|xy){4,5}?123/ICDZ
1309      aacaacaacaacaac123      aacaacaacaacaac123
1310    
1311  /\b.*/I  /\b.*/I
1312    ab cd\>1    ab cd\>1
1313    
1314  /\b.*/Is  /\b.*/Is
1315    ab cd\>1    ab cd\>1
1316    
1317  /(?!.bcd).*/I  /(?!.bcd).*/I
1318    Xbcd12345    Xbcd12345
1319    
1320  /abcde/  /abcde/I
1321      ab\P      ab\P
1322      abc\P      abc\P
1323      abcd\P      abcd\P
1324      abcde\P      abcde\P
1325      the quick brown abc\P      the quick brown abc\P
1326      ** Failers\P      ** Failers\P
1327      the quick brown abxyz fox\P      the quick brown abxyz fox\P
1328    
1329  "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"  "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
1330      13/05/04\P      13/05/04\P
1331      13/5/2004\P      13/5/2004\P
1332      02/05/09\P      02/05/09\P
1333      1\P      1\P
1334      1/2\P      1/2\P
1335      1/2/0\P      1/2/0\P
1336      1/2/04\P      1/2/04\P
1337      0\P      0\P
1338      02/\P      02/\P
1339      02/0\P      02/0\P
1340      02/1\P      02/1\P
1341      ** Failers\P      ** Failers\P
1342      \P      \P
# Line 1338  Line 1344 
1344      33/4/04\P      33/4/04\P
1345      3/13/04\P      3/13/04\P
1346      0/1/2003\P      0/1/2003\P
1347      0/\P      0/\P
1348      02/0/\P      02/0/\P
1349      02/13\P      02/13\P
1350    
1351  /0{0,2}ABC/I  /0{0,2}ABC/I
1352    
1353  /\d{3,}ABC/I  /\d{3,}ABC/I
1354    
1355  /\d*ABC/I  /\d*ABC/I
1356    
1357  /[abc]+DE/I  /[abc]+DE/I
1358    
1359  /[abc]?123/  /[abc]?123/I
1360      123\P      123\P
1361      a\P      a\P
1362      b\P      b\P
1363      c\P      c\P
1364      c12\P      c12\P
1365      c123\P      c123\P
1366    
1367  /^(?:\d){3,5}X/  /^(?:\d){3,5}X/I
1368      1\P      1\P
1369      123\P      123\P
1370      123X      123X
1371      1234\P      1234\P
1372      1234X      1234X
1373      12345\P      12345\P
1374      12345X      12345X
1375      *** Failers      *** Failers
1376      1X      1X
1377      123456\P      123456\P
1378    
1379  /abc/>testsavedregex  /abc/I>testsavedregex
1380  <testsavedregex  <testsavedregex
1381      abc      abc
1382      ** Failers      ** Failers
1383      bca      bca
1384    
1385  /abc/F>testsavedregex  /abc/IF>testsavedregex
1386  <testsavedregex  <testsavedregex
1387      abc      abc
1388      ** Failers      ** Failers
1389      bca      bca
1390    
1391  /(a|b)/S>testsavedregex  /(a|b)/IS>testsavedregex
1392  <testsavedregex  <testsavedregex
1393      abc      abc
1394      ** Failers      ** Failers
1395      def      def
1396    
1397  /(a|b)/SF>testsavedregex  /(a|b)/ISF>testsavedregex
1398  <testsavedregex  <testsavedregex
1399      abc      abc
1400      ** Failers      ** Failers
1401      def      def
1402    
1403  ~<(\w+)/?>(.)*</(\1)>~smg  ~<(\w+)/?>(.)*</(\1)>~smgI
1404      <!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite>      <!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite>
1405    
1406  /^a/IF  /^a/IF
1407    
1408  /line\nbreak/  /line\nbreak/I
1409      this is a line\nbreak      this is a line\nbreak
1410      line one\nthis is a line\nbreak in the second line      line one\nthis is a line\nbreak in the second line
1411    
1412  /line\nbreak/f  /line\nbreak/If
1413      this is a line\nbreak      this is a line\nbreak
1414      ** Failers      ** Failers
1415      line one\nthis is a line\nbreak in the second line      line one\nthis is a line\nbreak in the second line
1416    
1417  /line\nbreak/mf  /line\nbreak/Imf
1418      this is a line\nbreak      this is a line\nbreak
1419      ** Failers      ** Failers
1420      line one\nthis is a line\nbreak in the second line      line one\nthis is a line\nbreak in the second line
1421    
1422  /ab.cd/P  /ab.cd/IP
1423      ab-cd      ab-cd
1424      ab=cd      ab=cd
1425      ** Failers      ** Failers
1426      ab\ncd      ab\ncd
1427    
1428  /ab.cd/Ps  /ab.cd/IPs
1429      ab-cd      ab-cd
1430      ab=cd      ab=cd
1431      ab\ncd      ab\ncd
1432    
1433  /(?i)(?-i)AbCd/  /(?i)(?-i)AbCd/I
1434      AbCd      AbCd
1435      ** Failers      ** Failers
1436      abcd      abcd
1437    
1438    /a{11111111111111111111}/I
1439    
1440    /(){64294967295}/I
1441    
1442    /(){2,4294967295}/I
1443    
1444    "(?i:a)(?i:b)(?i:c)(?i:d)(?i:e)(?i:f)(?i:g)(?i:h)(?i:i)(?i:j)(k)(?i:l)A\1B"I
1445        abcdefghijklAkB
1446    
1447    "(?P<n0>a)(?P<n1>b)(?P<n2>c)(?P<n3>d)(?P<n4>e)(?P<n5>f)(?P<n6>g)(?P<n7>h)(?P<n8>i)(?P<n9>j)(?P<n10>k)(?P<n11>l)A\11B"I
1448        abcdefghijklAkB
1449    
1450    "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
1451        abcdefghijklAkB
1452    
1453    "(?P<name0>a)(?P<name1>a)(?P<name2>a)(?P<name3>a)(?P<name4>a)(?P<name5>a)(?P<name6>a)(?P<name7>a)(?P<name8>a)(?P<name9>a)(?P<name10>a)(?P<name11>a)(?P<name12>a)(?P<name13>a)(?P<name14>a)(?P<name15>a)(?P<name16>a)(?P<name17>a)(?P<name18>a)(?P<name19>a)(?P<name20>a)(?P<name21>a)(?P<name22>a)(?P<name23>a)(?P<name24>a)(?P<name25>a)(?P<name26>a)(?P<name27>a)(?P<name28>a)(?P<name29>a)(?P<name30>a)(?P<name31>a)(?P<name32>a)(?P<name33>a)(?P<name34>a)(?P<name35>a)(?P<name36>a)(?P<name37>a)(?P<name38>a)(?P<name39>a)(?P<name40>a)(?P<name41>a)(?P<name42>a)(?P<name43>a)(?P<name44>a)(?P<name45>a)(?P<name46>a)(?P<name47>a)(?P<name48>a)(?P<name49>a)(?P<name50>a)(?P<name51>a)(?P<name52>a)(?P<name53>a)(?P<name54>a)(?P<name55>a)(?P<name56>a)(?P<name57>a)(?P<name58>a)(?P<name59>a)(?P<name60>a)(?P<name61>a)(?P<name62>a)(?P<name63>a)(?P<name64>a)(?P<name65>a)(?P<name66>a)(?P<name67>a)(?P<name68>a)(?P<name69>a)(?P<name70>a)(?P<name71>a)(?P<name72>a)(?P<name73>a)(?P<name74>a)(?P<name75>a)(?P<name76>a)(?P<name77>a)(?P<name78>a)(?P<name79>a)(?P<name80>a)(?P<name81>a)(?P<name82>a)(?P<name83>a)(?P<name84>a)(?P<name85>a)(?P<name86>a)(?P<name87>a)(?P<name88>a)(?P<name89>a)(?P<name90>a)(?P<name91>a)(?P<name92>a)(?P<name93>a)(?P<name94>a)(?P<name95>a)(?P<name96>a)(?P<name97>a)(?P<name98>a)(?P<name99>a)(?P<name100>a)"I
1454        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
1455    
1456    "(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)"I
1457        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
1458    
1459    /[^()]*(?:\((?R)\)[^()]*)*/I
1460        (this(and)that
1461        (this(and)that)
1462        (this(and)that)stuff
1463    
1464    /[^()]*(?:\((?>(?R))\)[^()]*)*/I
1465        (this(and)that
1466        (this(and)that)
1467    
1468    /[^()]*(?:\((?R)\))*[^()]*/I
1469        (this(and)that
1470        (this(and)that)
1471    
1472    /(?:\((?R)\))*[^()]*/I
1473        (this(and)that
1474        (this(and)that)
1475        ((this))
1476    
1477    /(?:\((?R)\))|[^()]*/I
1478        (this(and)that
1479        (this(and)that)
1480        (this)
1481        ((this))
1482    
1483    /a(b)c/IPN
1484        abc
1485    
1486    /a(?P<name>b)c/IPN
1487        abc
1488    
1489    /\x{100}/I
1490    
1491    /\x{0000ff}/I
1492    
1493    /^((?P<A>a1)|(?P<A>a2)b)/I
1494    
1495    /^((?P<A>a1)|(?P<A>a2)b)/IJ
1496        a1b\CA
1497        a2b\CA
1498        ** Failers
1499        a1b\CZ\CA
1500    
1501    /^(?P<A>a)(?P<A>b)/IJ
1502        ab\CA
1503    
1504    /^(?P<A>a)(?P<A>b)|cd/IJ
1505        ab\CA
1506        cd\CA
1507    
1508    /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
1509        cdefgh\CA
1510    
1511    /^((?P<A>a1)|(?P<A>a2)b)/IJ
1512        a1b\GA
1513        a2b\GA
1514        ** Failers
1515        a1b\GZ\GA
1516    
1517    /^(?P<A>a)(?P<A>b)/IJ
1518        ab\GA
1519    
1520    /^(?P<A>a)(?P<A>b)|cd/IJ
1521        ab\GA
1522        cd\GA
1523    
1524    /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
1525        cdefgh\GA
1526    
1527    /(?J)^((?P<A>a1)|(?P<A>a2)b)/I
1528        a1b\CA
1529        a2b\CA
1530    
1531    /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I
1532    
1533    / In this next test, J is not set at the outer level; consequently it isn't
1534    set in the pattern's options; consequently pcre_get_named_substring() produces
1535    a random value. /Ix
1536    
1537    /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I
1538        a bc d\CA\CB\CC
1539    
1540    /^(?P<A>a)?(?(A)a|b)/I
1541        aabc
1542        bc
1543        ** Failers
1544        abc
1545    
1546    /(?:(?(ZZ)a|b)(?P<ZZ>X))+/I
1547        bXaX
1548    
1549    /(?:(?(2y)a|b)(X))+/I
1550    
1551    /(?:(?(ZA)a|b)(?P<ZZ>X))+/I
1552    
1553    /(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I
1554        bbXaaX
1555    
1556    /(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I
1557        (b)\\Xa\\X
1558    
1559    /(?P<ABC/I
1560    
1561    /(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
1562        bXXaYYaY
1563        bXYaXXaX
1564    
1565    /()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
1566        bXXaYYaY
1567    
1568    /\777/I
1569    
1570    /\s*,\s*/IS
1571        \x0b,\x0b
1572        \x0c,\x0d
1573    
1574    /^abc/Im
1575        xyz\nabc
1576        xyz\nabc\<lf>
1577        xyz\r\nabc\<lf>
1578        xyz\rabc\<cr>
1579        xyz\r\nabc\<crlf>
1580        ** Failers
1581        xyz\nabc\<cr>
1582        xyz\r\nabc\<cr>
1583        xyz\nabc\<crlf>
1584        xyz\rabc\<crlf>
1585        xyz\rabc\<lf>
1586    
1587    /abc$/Im<lf>
1588        xyzabc
1589        xyzabc\n
1590        xyzabc\npqr
1591        xyzabc\r\<cr>
1592        xyzabc\rpqr\<cr>
1593        xyzabc\r\n\<crlf>
1594        xyzabc\r\npqr\<crlf>
1595        ** Failers
1596        xyzabc\r
1597        xyzabc\rpqr
1598        xyzabc\r\n
1599        xyzabc\r\npqr
1600    
1601    /^abc/Im<cr>
1602        xyz\rabcdef
1603        xyz\nabcdef\<lf>
1604        ** Failers
1605        xyz\nabcdef
1606    
1607    /^abc/Im<lf>
1608        xyz\nabcdef
1609        xyz\rabcdef\<cr>
1610        ** Failers
1611        xyz\rabcdef
1612    
1613    /^abc/Im<crlf>
1614        xyz\r\nabcdef
1615        xyz\rabcdef\<cr>
1616        ** Failers
1617        xyz\rabcdef
1618    
1619    /^abc/Im<bad>
1620    
1621    /abc/I
1622        xyz\rabc\<bad>
1623        abc
1624    
1625    /.*/I<lf>
1626        abc\ndef
1627        abc\rdef
1628        abc\r\ndef
1629        \<cr>abc\ndef
1630        \<cr>abc\rdef
1631        \<cr>abc\r\ndef
1632        \<crlf>abc\ndef
1633        \<crlf>abc\rdef
1634        \<crlf>abc\r\ndef
1635    
1636    /\w+(.)(.)?def/Is
1637        abc\ndef
1638        abc\rdef
1639        abc\r\ndef
1640    
1641    +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
1642       /* this is a C style comment */\M
1643    
1644    /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
1645    
1646    /()()()()()()()()()()()()()()()()()()()()
1647     ()()()()()()()()()()()()()()()()()()()()
1648     ()()()()()()()()()()()()()()()()()()()()
1649     ()()()()()()()()()()()()()()()()()()()()
1650     ()()()()()()()()()()()()()()()()()()()()
1651     (.(.))/Ix
1652        XY\O400
1653    
1654    /(a*b|(?i:c*(?-i)d))/IS
1655    
1656    /()[ab]xyz/IS
1657    
1658    /(|)[ab]xyz/IS
1659    
1660    /(|c)[ab]xyz/IS
1661    
1662    /(|c?)[ab]xyz/IS
1663    
1664    /(d?|c?)[ab]xyz/IS
1665    
1666    /(d?|c)[ab]xyz/IS
1667    
1668    /^a*b\d/DZ
1669    
1670    /^a*+b\d/DZ
1671    
1672    /^a*?b\d/DZ
1673    
1674    /^a+A\d/DZ
1675        aaaA5
1676        ** Failers
1677        aaaa5
1678    
1679    /^a*A\d/IiDZ
1680        aaaA5
1681        aaaa5
1682    
1683    /(a*|b*)[cd]/IS
1684    
1685    /(a+|b*)[cd]/IS
1686    
1687    /(a*|b+)[cd]/IS
1688    
1689    /(a+|b+)[cd]/IS
1690    
1691    /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
1692     ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
1693     (((
1694     a
1695     ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
1696     ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
1697     )))
1698    /Ix
1699      large nest
1700    
1701    /a*\d/BZ
1702    
1703    /a*\D/BZ
1704    
1705    /0*\d/BZ
1706    
1707    /0*\D/BZ
1708    
1709    /a*\s/BZ
1710    
1711    /a*\S/BZ
1712    
1713    / *\s/BZ
1714    
1715    / *\S/BZ
1716    
1717    /a*\w/BZ
1718    
1719    /a*\W/BZ
1720    
1721    /=*\w/BZ
1722    
1723    /=*\W/BZ
1724    
1725    /\d*a/BZ
1726    
1727    /\d*2/BZ
1728    
1729    /\d*\d/BZ
1730    
1731    /\d*\D/BZ
1732    
1733    /\d*\s/BZ
1734    
1735    /\d*\S/BZ
1736    
1737    /\d*\w/BZ
1738    
1739    /\d*\W/BZ
1740    
1741    /\D*a/BZ
1742    
1743    /\D*2/BZ
1744    
1745    /\D*\d/BZ
1746    
1747    /\D*\D/BZ
1748    
1749    /\D*\s/BZ
1750    
1751    /\D*\S/BZ
1752    
1753    /\D*\w/BZ
1754    
1755    /\D*\W/BZ
1756    
1757    /\s*a/BZ
1758    
1759    /\s*2/BZ
1760    
1761    /\s*\d/BZ
1762    
1763    /\s*\D/BZ
1764    
1765    /\s*\s/BZ
1766    
1767    /\s*\S/BZ
1768    
1769    /\s*\w/BZ
1770    
1771    /\s*\W/BZ
1772    
1773    /\S*a/BZ
1774    
1775    /\S*2/BZ
1776    
1777    /\S*\d/BZ
1778    
1779    /\S*\D/BZ
1780    
1781    /\S*\s/BZ
1782    
1783    /\S*\S/BZ
1784    
1785    /\S*\w/BZ
1786    
1787    /\S*\W/BZ
1788    
1789    /\w*a/BZ
1790    
1791    /\w*2/BZ
1792    
1793    /\w*\d/BZ
1794    
1795    /\w*\D/BZ
1796    
1797    /\w*\s/BZ
1798    
1799    /\w*\S/BZ
1800    
1801    /\w*\w/BZ
1802    
1803    /\w*\W/BZ
1804    
1805    /\W*a/BZ
1806    
1807    /\W*2/BZ
1808    
1809    /\W*\d/BZ
1810    
1811    /\W*\D/BZ
1812    
1813    /\W*\s/BZ
1814    
1815    /\W*\S/BZ
1816    
1817    /\W*\w/BZ
1818    
1819    /\W*\W/BZ
1820    
1821    /[^a]+a/BZ
1822    
1823    /[^a]+a/BZi
1824    
1825    /[^a]+A/BZi
1826    
1827    /[^a]+b/BZ
1828    
1829    /[^a]+\d/BZ
1830    
1831    /a*[^a]/BZ
1832    
1833    /(?P<abc>x)(?P<xyz>y)/I
1834        xy\Cabc\Cxyz
1835    
1836    /(?<abc>x)(?'xyz'y)/I
1837        xy\Cabc\Cxyz
1838    
1839    /(?<abc'x)(?'xyz'y)/I
1840    
1841    /(?<abc>x)(?'xyz>y)/I
1842    
1843    /(?P'abc'x)(?P<xyz>y)/I
1844    
1845    /^(?:(?(ZZ)a|b)(?<ZZ>X))+/
1846        bXaX
1847        bXbX
1848        ** Failers
1849        aXaX
1850        aXbX
1851    
1852    /^(?P>abc)(?<abcd>xxx)/
1853    
1854    /^(?P>abc)(?<abc>x|y)/
1855        xx
1856        xy
1857        yy
1858        yx
1859    
1860    /^(?P>abc)(?P<abc>x|y)/
1861        xx
1862        xy
1863        yy
1864        yx
1865    
1866    /^((?(abc)a|b)(?<abc>x|y))+/
1867        bxay
1868        bxby
1869        ** Failers
1870        axby
1871    
1872    /^(((?P=abc)|X)(?<abc>x|y))+/
1873        XxXxxx
1874        XxXyyx
1875        XxXyxx
1876        ** Failers
1877        x
1878    
1879    /^(?1)(abc)/
1880        abcabc
1881    
1882    /^(?:(?:\1|X)(a|b))+/
1883        Xaaa
1884        Xaba
1885    
1886    /^[\E\Qa\E-\Qz\E]+/BZ
1887    
1888    /^[a\Q]bc\E]/BZ
1889    
1890    /^[a-\Q\E]/BZ
1891    
1892    /^(?P>abc)[()](?<abc>)/BZ
1893    
1894    /^((?(abc)y)[()](?P<abc>x))+/BZ
1895        (xy)x
1896    
1897    /^(?P>abc)\Q()\E(?<abc>)/BZ
1898    
1899    /^(?P>abc)[a\Q(]\E(](?<abc>)/BZ
1900    
1901    /^(?P>abc) # this is (a comment)
1902      (?<abc>)/BZx
1903    
1904    /^\W*(?:(?<one>(?<two>.)\W*(?&one)\W*\k<two>|)|(?<three>(?<four>.)\W*(?&three)\W*\k'four'|\W*.\W*))\W*$/Ii
1905        1221
1906        Satan, oscillate my metallic sonatas!
1907        A man, a plan, a canal: Panama!
1908        Able was I ere I saw Elba.
1909        *** Failers
1910        The quick brown fox
1911    
1912    /(?=(\w+))\1:/I
1913        abcd:
1914    
1915    /(?=(?'abc'\w+))\k<abc>:/I
1916        abcd:
1917    
1918    /(?'abc'\w+):\k<abc>{2}/
1919        a:aaxyz
1920        ab:ababxyz
1921        ** Failers
1922        a:axyz
1923        ab:abxyz
1924    
1925    /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J
1926        adaa
1927        ** Failers
1928        addd
1929        adbb
1930    
1931    /(?'abc'a|b)(?<abc>d|e)(?&abc){2}/J
1932        bdaa
1933        bdab
1934        ** Failers
1935        bddd
1936    
1937    /^(?<ab>a)? (?(<ab>)b|c) (?('ab')d|e)/x
1938        abd
1939        ce
1940    
1941    /(?(<bc))/
1942    
1943    /(?(''))/
1944    
1945    /(?('R')stuff)/
1946    
1947    /((abc (?(R) (?(R1)1) (?(R2)2) X  |  (?1)  (?2)   (?R) ))) /x
1948        abcabc1Xabc2XabcXabcabc
1949    
1950    /(?<A> (?'B' abc (?(R) (?(R&A)1) (?(R&B)2) X  |  (?1)  (?2)   (?R) ))) /x
1951        abcabc1Xabc2XabcXabcabc
1952    
1953    /(?<A> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X  |  (?1)  (?2)   (?R) ))) /x
1954    
1955    /(?<1> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X  |  (?1)  (?2)   (?R) ))) /x
1956        abcabc1Xabc2XabcXabcabc
1957    
1958    /^(?(DEFINE) (?<A> a) (?<B> b) )  (?&A) (?&B) /x
1959        abcd
1960    
1961    /(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT))
1962      (?(DEFINE)
1963      (?<NAME_PAT>[a-z]+)
1964      (?<ADDRESS_PAT>\d+)
1965      )/x
1966        metcalfe 33
1967    
1968    /^(?(DEFINE) abc | xyz ) /x
1969    
1970    /(?(DEFINE) abc) xyz/xI
1971    
1972    /(?(DEFINE) abc){3} xyz/x
1973    
1974    /(a|)*\d/
1975      \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
1976      \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
1977    
1978    /^a.b/<lf>
1979        a\rb
1980        a\nb\<cr>
1981        a\x85b\<anycrlf>
1982        ** Failers
1983        a\nb
1984        a\nb\<any>
1985        a\rb\<cr>
1986        a\rb\<any>
1987        a\x85b\<any>
1988        a\rb\<anycrlf>
1989    
1990    /^abc./mgx<any>
1991        abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 \x{2028}abc8 \x{2029}abc9 JUNK
1992    
1993    /abc.$/mgx<any>
1994        abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9
1995    
1996    /a/<cr><any>
1997    
1998    /a/<any><crlf>
1999    
2000    /^a\Rb/<bsr_unicode>
2001        a\nb
2002        a\rb
2003        a\r\nb
2004        a\x0bb
2005        a\x0cb
2006        a\x85b
2007        ** Failers
2008        a\n\rb
2009    
2010    /^a\R*b/<bsr_unicode>
2011        ab
2012        a\nb
2013        a\rb
2014        a\r\nb
2015        a\x0bb
2016        a\x0cb
2017        a\x85b
2018        a\n\rb
2019        a\n\r\x85\x0cb
2020    
2021    /^a\R+b/<bsr_unicode>
2022        a\nb
2023        a\rb
2024        a\r\nb
2025        a\x0bb
2026        a\x0cb
2027        a\x85b
2028        a\n\rb
2029        a\n\r\x85\x0cb
2030        ** Failers
2031        ab
2032    
2033    /^a\R{1,3}b/<bsr_unicode>
2034        a\nb
2035        a\n\rb
2036        a\n\r\x85b
2037        a\r\n\r\nb
2038        a\r\n\r\n\r\nb
2039        a\n\r\n\rb
2040        a\n\n\r\nb
2041        ** Failers
2042        a\n\n\n\rb
2043        a\r
2044    
2045    /^a[\R]b/<bsr_unicode>
2046        aRb
2047        ** Failers
2048        a\nb
2049    
2050    /(?&abc)X(?<abc>P)/I
2051        abcPXP123
2052    
2053    /(?1)X(?<abc>P)/I
2054        abcPXP123
2055    
2056    /(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))\b(?&byte)(\.(?&byte)){3}/
2057        1.2.3.4
2058        131.111.10.206
2059        10.0.0.0
2060        ** Failers
2061        10.6
2062        455.3.4.5
2063    
2064    /\b(?&byte)(\.(?&byte)){3}(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))/
2065        1.2.3.4
2066        131.111.10.206
2067        10.0.0.0
2068        ** Failers
2069        10.6
2070        455.3.4.5
2071    
2072    /(?:a(?&abc)b)*(?<abc>x)/
2073        123axbaxbaxbx456
2074        123axbaxbaxb456
2075    
2076    /(?:a(?&abc)b){1,5}(?<abc>x)/
2077        123axbaxbaxbx456
2078    
2079    /(?:a(?&abc)b){2,5}(?<abc>x)/
2080        123axbaxbaxbx456
2081    
2082    /(?:a(?&abc)b){2,}(?<abc>x)/
2083        123axbaxbaxbx456
2084    
2085    /(abc)(?i:(?1))/
2086       defabcabcxyz
2087       DEFabcABCXYZ
2088    
2089    /(abc)(?:(?i)(?1))/
2090       defabcabcxyz
2091       DEFabcABCXYZ
2092    
2093    /^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/
2094        ababababbbabZXXXX
2095    
2096    /^(a)\g-2/
2097    
2098    /^(a)\g/
2099    
2100    /^(a)\g{0}/
2101    
2102    /^(a)\g{3/
2103    
2104    /^(a)\g{4a}/
2105    
2106    /^a.b/<lf>
2107        a\rb
2108        *** Failers
2109        a\nb
2110    
2111    /.+foo/
2112        afoo
2113        ** Failers
2114        \r\nfoo
2115        \nfoo
2116    
2117    /.+foo/<crlf>
2118        afoo
2119        \nfoo
2120        ** Failers
2121        \r\nfoo
2122    
2123    /.+foo/<any>
2124        afoo
2125        ** Failers
2126        \nfoo
2127        \r\nfoo
2128    
2129    /.+foo/s
2130        afoo
2131        \r\nfoo
2132        \nfoo
2133    
2134    /^$/mg<any>
2135        abc\r\rxyz
2136        abc\n\rxyz
2137        ** Failers
2138        abc\r\nxyz
2139    
2140    /(?m)^$/<any>g+
2141        abc\r\n\r\n
2142    
2143    /(?m)^$|^\r\n/<any>g+
2144        abc\r\n\r\n
2145    
2146    /(?m)$/<any>g+
2147        abc\r\n\r\n
2148    
2149    /abc.$/mgx<anycrlf>
2150        abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9
2151    
2152    /^X/m
2153        XABC
2154        ** Failers
2155        XABC\B
2156    
2157    /(ab|c)(?-1)/BZ
2158        abc
2159    
2160    /xy(?+1)(abc)/BZ
2161        xyabcabc
2162        ** Failers
2163        xyabc
2164    
2165    /x(?-0)y/
2166    
2167    /x(?-1)y/
2168    
2169    /x(?+0)y/
2170    
2171    /x(?+1)y/
2172    
2173    /^(abc)?(?(-1)X|Y)/BZ
2174        abcX
2175        Y
2176        ** Failers
2177        abcY
2178    
2179    /^((?(+1)X|Y)(abc))+/BZ
2180        YabcXabc
2181        YabcXabcXabc
2182        ** Failers
2183        XabcXabc
2184    
2185    /(?(-1)a)/BZ
2186    
2187    /((?(-1)a))/BZ
2188    
2189    /((?(-2)a))/BZ
2190    
2191    /^(?(+1)X|Y)(.)/BZ
2192        Y!
2193    
2194    /(foo)\Kbar/
2195        foobar
2196    
2197    /(foo)(\Kbar|baz)/
2198        foobar
2199        foobaz
2200    
2201    /(foo\Kbar)baz/
2202        foobarbaz
2203    
2204    /(?<A>tom|bon)-\k{A}/
2205        tom-tom
2206        bon-bon
2207        ** Failers
2208        tom-bon
2209    
2210    /(?<A>tom|bon)-\g{A}/
2211        tom-tom
2212        bon-bon
2213    
2214    /\g{A/
2215    
2216    /(?|(abc)|(xyz))/BZ
2217       >abc<
2218       >xyz<
2219    
2220    /(x)(?|(abc)|(xyz))(x)/BZ
2221        xabcx
2222        xxyzx
2223    
2224    /(x)(?|(abc)(pqr)|(xyz))(x)/BZ
2225        xabcpqrx
2226        xxyzx
2227    
2228    /(?|(abc)|(xyz))\1/
2229        abcabc
2230        xyzxyz
2231        ** Failers
2232        abcxyz
2233        xyzabc
2234    
2235    /(?|(abc)|(xyz))(?1)/
2236        abcabc
2237        xyzabc
2238        ** Failers
2239        xyzxyz
2240    
2241    /\H\h\V\v/
2242        X X\x0a
2243        X\x09X\x0b
2244        ** Failers
2245        \xa0 X\x0a
2246    
2247    /\H*\h+\V?\v{3,4}/
2248        \x09\x20\xa0X\x0a\x0b\x0c\x0d\x0a
2249        \x09\x20\xa0\x0a\x0b\x0c\x0d\x0a
2250        \x09\x20\xa0\x0a\x0b\x0c
2251        ** Failers
2252        \x09\x20\xa0\x0a\x0b
2253    
2254    /\H{3,4}/
2255        XY  ABCDE
2256        XY  PQR ST
2257    
2258    /.\h{3,4}./
2259        XY  AB    PQRS
2260    
2261    /\h*X\h?\H+Y\H?Z/
2262        >XNNNYZ
2263        >  X NYQZ
2264        ** Failers
2265        >XYZ
2266        >  X NY Z
2267    
2268    /\v*X\v?Y\v+Z\V*\x0a\V+\x0b\V{2,3}\x0c/
2269        >XY\x0aZ\x0aA\x0bNN\x0c
2270        >\x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c
2271    
2272    /[\h]/BZ
2273        >\x09<
2274    
2275    /[\h]+/BZ
2276        >\x09\x20\xa0<
2277    
2278    /[\v]/BZ
2279    
2280    /[\H]/BZ
2281    
2282    /[^\h]/BZ
2283    
2284    /[\V]/BZ
2285    
2286    /[\x0a\V]/BZ
2287    
2288    /\H++X/BZ
2289        ** Failers
2290        XXXX
2291    
2292    /\H+\hY/BZ
2293        XXXX Y
2294    
2295    /\H+ Y/BZ
2296    
2297    /\h+A/BZ
2298    
2299    /\v*B/BZ
2300    
2301    /\V+\x0a/BZ
2302    
2303    /A+\h/BZ
2304    
2305    / *\H/BZ
2306    
2307    /A*\v/BZ
2308    
2309    /\x0b*\V/BZ
2310    
2311    /\d+\h/BZ
2312    
2313    /\d*\v/BZ
2314    
2315    /S+\h\S+\v/BZ
2316    
2317    /\w{3,}\h\w+\v/BZ
2318    
2319    /\h+\d\h+\w\h+\S\h+\H/BZ
2320    
2321    /\v+\d\v+\w\v+\S\v+\V/BZ
2322    
2323    /\H+\h\H+\d/BZ
2324    
2325    /\V+\v\V+\w/BZ
2326    
2327    /\( (?: [^()]* | (?R) )* \)/x
2328    (0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(00)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)
2329    
2330    /[\E]AAA/
2331    
2332    /[\Q\E]AAA/
2333    
2334    /[^\E]AAA/
2335    
2336    /[^\Q\E]AAA/
2337    
2338    /[\E^]AAA/
2339    
2340    /[\Q\E^]AAA/
2341    
2342    /A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ
2343    
2344    /^a+(*FAIL)/
2345        aaaaaa
2346    
2347    /a+b?c+(*FAIL)/
2348        aaabccc
2349    
2350    /a+b?(*PRUNE)c+(*FAIL)/
2351        aaabccc
2352    
2353    /a+b?(*COMMIT)c+(*FAIL)/
2354        aaabccc
2355    
2356    /a+b?(*SKIP)c+(*FAIL)/
2357        aaabcccaaabccc
2358    
2359    /^(?:aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
2360        aaaxxxxxx
2361        aaa++++++
2362        bbbxxxxx
2363        bbb+++++
2364        cccxxxx
2365        ccc++++
2366        dddddddd
2367    
2368    /^(aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
2369        aaaxxxxxx
2370        aaa++++++
2371        bbbxxxxx
2372        bbb+++++
2373        cccxxxx
2374        ccc++++
2375        dddddddd
2376    
2377    /a+b?(*THEN)c+(*FAIL)/
2378        aaabccc
2379    
2380    /(A (A|B(*ACCEPT)|C) D)(E)/x
2381        ABX
2382        AADE
2383        ACDE
2384        ** Failers
2385        AD
2386    
2387    /^a+(*FAIL)/C
2388        aaaaaa
2389    
2390    /a+b?c+(*FAIL)/C
2391        aaabccc
2392    
2393    /a+b?(*PRUNE)c+(*FAIL)/C
2394        aaabccc
2395    
2396    /a+b?(*COMMIT)c+(*FAIL)/C
2397        aaabccc
2398    
2399    /a+b?(*SKIP)c+(*FAIL)/C
2400        aaabcccaaabccc
2401    
2402    /a+b?(*THEN)c+(*FAIL)/C
2403        aaabccc
2404    
2405    /a(*PRUNE:XXX)b/
2406    
2407    /a(*MARK)b/
2408    
2409    /(?i:A{1,}\6666666666)/
2410    
2411    /\g6666666666/
2412    
2413    /[\g6666666666]/
2414    
2415    /(?1)\c[/
2416    
2417    /.+A/<crlf>
2418        \r\nA
2419    
2420    /\nA/<crlf>
2421        \r\nA
2422    
2423    /[\r\n]A/<crlf>
2424        \r\nA
2425    
2426    /(\r|\n)A/<crlf>
2427        \r\nA
2428    
2429    /a(*CR)b/
2430    
2431    /(*CR)a.b/
2432        a\nb
2433        ** Failers
2434        a\rb
2435    
2436    /(*CR)a.b/<lf>
2437        a\nb
2438        ** Failers
2439        a\rb
2440    
2441    /(*LF)a.b/<CRLF>
2442        a\rb
2443        ** Failers
2444        a\nb
2445    
2446    /(*CRLF)a.b/
2447        a\rb
2448        a\nb
2449        ** Failers
2450        a\r\nb
2451    
2452    /(*ANYCRLF)a.b/<CR>
2453        ** Failers
2454        a\rb
2455        a\nb
2456        a\r\nb
2457    
2458    /(*ANY)a.b/<cr>
2459        ** Failers
2460        a\rb
2461        a\nb
2462        a\r\nb
2463        a\x85b
2464    
2465    /a\Rb/I<bsr_anycrlf>
2466        a\rb
2467        a\nb
2468        a\r\nb
2469        ** Failers
2470        a\x85b
2471        a\x0bb
2472    
2473    /a\Rb/I<bsr_unicode>
2474        a\rb
2475        a\nb
2476        a\r\nb
2477        a\x85b
2478        a\x0bb
2479        ** Failers
2480        a\x85b\<bsr_anycrlf>
2481        a\x0bb\<bsr_anycrlf>
2482    
2483    /a\R?b/I<bsr_anycrlf>
2484        a\rb
2485        a\nb
2486        a\r\nb
2487        ** Failers
2488        a\x85b
2489        a\x0bb
2490    
2491    /a\R?b/I<bsr_unicode>
2492        a\rb
2493        a\nb
2494        a\r\nb
2495        a\x85b
2496        a\x0bb
2497        ** Failers
2498        a\x85b\<bsr_anycrlf>
2499        a\x0bb\<bsr_anycrlf>
2500    
2501    /a\R{2,4}b/I<bsr_anycrlf>
2502        a\r\n\nb
2503        a\n\r\rb
2504        a\r\n\r\n\r\n\r\nb
2505        ** Failers
2506        a\x85\85b
2507        a\x0b\0bb
2508    
2509    /a\R{2,4}b/I<bsr_unicode>
2510        a\r\rb
2511        a\n\n\nb
2512        a\r\n\n\r\rb
2513        a\x85\85b
2514        a\x0b\0bb
2515        ** Failers
2516        a\r\r\r\r\rb
2517        a\x85\85b\<bsr_anycrlf>
2518        a\x0b\0bb\<bsr_anycrlf>
2519    
2520    /(*BSR_ANYCRLF)a\Rb/I
2521        a\nb
2522        a\rb
2523    
2524    /(*BSR_UNICODE)a\Rb/I
2525        a\x85b
2526    
2527    /(*BSR_ANYCRLF)(*CRLF)a\Rb/I
2528        a\nb
2529        a\rb
2530    
2531    /(*CRLF)(*BSR_UNICODE)a\Rb/I
2532        a\x85b
2533    
2534    /(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I
2535    
2536    /(?<a>)(?&)/
2537    
2538    /(?<abc>)(?&a)/
2539    
2540    /(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/
2541    
2542    /(?+-a)/
2543    
2544    /(?-+a)/
2545    
2546    /(?(-1))/
2547    
2548    /(?(+10))/
2549    
2550    /(?(10))/
2551    
2552    /(?(+2))()()/
2553    
2554    /(?(2))()()/
2555    
2556    /\k''/
2557    
2558    /\k<>/
2559    
2560    /\k{}/
2561    
2562    /(?P=)/
2563    
2564    /(?P>)/
2565    
2566    /(?!\w)(?R)/
2567    
2568    /(?=\w)(?R)/
2569    
2570    /(?<!\w)(?R)/
2571    
2572    /(?<=\w)(?R)/
2573    
2574  / End of testinput2 /  / End of testinput2 /

Legend:
Removed from v.79  
changed lines
  Added in v.282

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12