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

Contents of /code/trunk/testdata/testinput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1370 - (show annotations)
Wed Oct 9 10:18:26 2013 UTC (6 years, 3 months ago) by ph10
File size: 64129 byte(s)
Add \o{} and tidy up \x{} handling. Minor update to RunTest.
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 /(a)b|/I
12
13 /abc/I
14 abc
15 defabc
16 \Aabc
17 *** Failers
18 \Adefabc
19 ABC
20
21 /^abc/I
22 abc
23 \Aabc
24 *** Failers
25 defabc
26 \Adefabc
27
28 /a+bc/I
29
30 /a*bc/I
31
32 /a{3}bc/I
33
34 /(abc|a+z)/I
35
36 /^abc$/I
37 abc
38 *** Failers
39 def\nabc
40
41 /ab\idef/X
42
43 /(?X)ab\idef/X
44
45 /x{5,4}/
46
47 /z{65536}/
48
49 /[abcd/
50
51 /(?X)[\B]/
52
53 /(?X)[\R]/
54
55 /(?X)[\X]/
56
57 /[\B]/BZ
58
59 /[\R]/BZ
60
61 /[\X]/BZ
62
63 /[z-a]/
64
65 /^*/
66
67 /(abc/
68
69 /(?# abc/
70
71 /(?z)abc/
72
73 /.*b/I
74
75 /.*?b/I
76
77 /cat|dog|elephant/I
78 this sentence eventually mentions a cat
79 this sentences rambles on and on for a while and then reaches elephant
80
81 /cat|dog|elephant/IS
82 this sentence eventually mentions a cat
83 this sentences rambles on and on for a while and then reaches elephant
84
85 /cat|dog|elephant/IiS
86 this sentence eventually mentions a CAT cat
87 this sentences rambles on and on for a while to elephant ElePhant
88
89 /a|[bcd]/IS
90
91 /(a|[^\dZ])/IS
92
93 /(a|b)*[\s]/IS
94
95 /(ab\2)/
96
97 /{4,5}abc/
98
99 /(a)(b)(c)\2/I
100 abcb
101 \O0abcb
102 \O3abcb
103 \O6abcb
104 \O9abcb
105 \O12abcb
106
107 /(a)bc|(a)(b)\2/I
108 abc
109 \O0abc
110 \O3abc
111 \O6abc
112 aba
113 \O0aba
114 \O3aba
115 \O6aba
116 \O9aba
117 \O12aba
118
119 /abc$/IE
120 abc
121 *** Failers
122 abc\n
123 abc\ndef
124
125 /(a)(b)(c)(d)(e)\6/
126
127 /the quick brown fox/I
128 the quick brown fox
129 this is a line with the quick brown fox
130
131 /the quick brown fox/IA
132 the quick brown fox
133 *** Failers
134 this is a line with the quick brown fox
135
136 /ab(?z)cd/
137
138 /^abc|def/I
139 abcdef
140 abcdef\B
141
142 /.*((abc)$|(def))/I
143 defabc
144 \Zdefabc
145
146 /)/
147
148 /a[]b/
149
150 /[^aeiou ]{3,}/I
151 co-processors, and for
152
153 /<.*>/I
154 abc<def>ghi<klm>nop
155
156 /<.*?>/I
157 abc<def>ghi<klm>nop
158
159 /<.*>/IU
160 abc<def>ghi<klm>nop
161
162 /(?U)<.*>/I
163 abc<def>ghi<klm>nop
164
165 /<.*?>/IU
166 abc<def>ghi<klm>nop
167
168 /={3,}/IU
169 abc========def
170
171 /(?U)={3,}?/I
172 abc========def
173
174 /(?<!bar|cattle)foo/I
175 foo
176 catfoo
177 *** Failers
178 the barfoo
179 and cattlefoo
180
181 /(?<=a+)b/
182
183 /(?<=aaa|b{0,3})b/
184
185 /(?<!(foo)a\1)bar/
186
187 /(?i)abc/I
188
189 /(a|(?m)a)/I
190
191 /(?i)^1234/I
192
193 /(^b|(?i)^d)/I
194
195 /(?s).*/I
196
197 /[abcd]/IS
198
199 /(?i)[abcd]/IS
200
201 /(?m)[xy]|(b|c)/IS
202
203 /(^a|^b)/Im
204
205 /(?i)(^a|^b)/Im
206
207 /(a)(?(1)a|b|c)/
208
209 /(?(?=a)a|b|c)/
210
211 /(?(1a)/
212
213 /(?(1a))/
214
215 /(?(?i))/
216
217 /(?(abc))/
218
219 /(?(?<ab))/
220
221 /((?s)blah)\s+\1/I
222
223 /((?i)blah)\s+\1/I
224
225 /((?i)b)/IDZS
226
227 /(a*b|(?i:c*(?-i)d))/IS
228
229 /a$/I
230 a
231 a\n
232 *** Failers
233 \Za
234 \Za\n
235
236 /a$/Im
237 a
238 a\n
239 \Za\n
240 *** Failers
241 \Za
242
243 /\Aabc/Im
244
245 /^abc/Im
246
247 /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
248 aaaaabbbbbcccccdef
249
250 /(?<=foo)[ab]/IS
251
252 /(?<!foo)(alpha|omega)/IS
253
254 /(?!alphabet)[ab]/IS
255
256 /(?<=foo\n)^bar/Im
257 foo\nbarbar
258 ***Failers
259 rhubarb
260 barbell
261 abc\nbarton
262
263 /^(?<=foo\n)bar/Im
264 foo\nbarbar
265 ***Failers
266 rhubarb
267 barbell
268 abc\nbarton
269
270 /(?>^abc)/Im
271 abc
272 def\nabc
273 *** Failers
274 defabc
275
276 /(?<=ab(c+)d)ef/
277
278 /(?<=ab(?<=c+)d)ef/
279
280 /(?<=ab(c|de)f)g/
281
282 /The next three are in testinput2 because they have variable length branches/
283
284 /(?<=bullock|donkey)-cart/I
285 the bullock-cart
286 a donkey-cart race
287 *** Failers
288 cart
289 horse-and-cart
290
291 /(?<=ab(?i)x|y|z)/I
292
293 /(?>.*)(?<=(abcd)|(xyz))/I
294 alphabetabcd
295 endingxyz
296
297 /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
298 abxyZZ
299 abXyZZ
300 ZZZ
301 zZZ
302 bZZ
303 BZZ
304 *** Failers
305 ZZ
306 abXYZZ
307 zzz
308 bzz
309
310 /(?<!(foo)a)bar/I
311 bar
312 foobbar
313 *** Failers
314 fooabar
315
316 /This one is here because Perl behaves differently; see also the following/I
317
318 /^(a\1?){4}$/I
319 aaaa
320 aaaaaa
321
322 /Perl does not fail these two for the final subjects. Neither did PCRE until/
323 /release 8.01. The problem is in backtracking into a subpattern that contains/
324 /a recursive reference to itself. PCRE has now made these into atomic patterns./
325
326 /^(xa|=?\1a){2}$/
327 xa=xaa
328 ** Failers
329 xa=xaaa
330
331 /^(xa|=?\1a)+$/
332 xa=xaa
333 ** Failers
334 xa=xaaa
335
336 /These are syntax tests from Perl 5.005/I
337
338 /a[b-a]/
339
340 /a[]b/
341
342 /a[/
343
344 /*a/
345
346 /(*)b/
347
348 /abc)/
349
350 /(abc/
351
352 /a**/
353
354 /)(/
355
356 /\1/
357
358 /\2/
359
360 /(a)|\2/
361
362 /a[b-a]/Ii
363
364 /a[]b/Ii
365
366 /a[/Ii
367
368 /*a/Ii
369
370 /(*)b/Ii
371
372 /abc)/Ii
373
374 /(abc/Ii
375
376 /a**/Ii
377
378 /)(/Ii
379
380 /:(?:/
381
382 /(?<%)b/
383
384 /a(?{)b/
385
386 /a(?{{})b/
387
388 /a(?{}})b/
389
390 /a(?{"{"})b/
391
392 /a(?{"{"}})b/
393
394 /(?(1?)a|b)/
395
396 /[a[:xyz:/
397
398 /(?<=x+)y/
399
400 /a{37,17}/
401
402 /abc/\
403
404 /abc/\i
405
406 /(a)bc(d)/I
407 abcd
408 abcd\C2
409 abcd\C5
410
411 /(.{20})/I
412 abcdefghijklmnopqrstuvwxyz
413 abcdefghijklmnopqrstuvwxyz\C1
414 abcdefghijklmnopqrstuvwxyz\G1
415
416 /(.{15})/I
417 abcdefghijklmnopqrstuvwxyz
418 abcdefghijklmnopqrstuvwxyz\C1\G1
419
420 /(.{16})/I
421 abcdefghijklmnopqrstuvwxyz
422 abcdefghijklmnopqrstuvwxyz\C1\G1\L
423
424 /^(a|(bc))de(f)/I
425 adef\G1\G2\G3\G4\L
426 bcdef\G1\G2\G3\G4\L
427 adefghijk\C0
428
429 /^abc\00def/I
430 abc\00def\L\C0
431
432 /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
433 )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
434 )?)?)?)?)?)?)?)?)?otherword/I
435
436 /.*X/IDZ
437
438 /.*X/IDZs
439
440 /(.*X|^B)/IDZ
441
442 /(.*X|^B)/IDZs
443
444 /(?s)(.*X|^B)/IDZ
445
446 /(?s:.*X|^B)/IDZ
447
448 /\Biss\B/I+
449 Mississippi
450
451 /iss/IG+
452 Mississippi
453
454 /\Biss\B/IG+
455 Mississippi
456
457 /\Biss\B/Ig+
458 Mississippi
459 *** Failers
460 Mississippi\A
461
462 /(?<=[Ms])iss/Ig+
463 Mississippi
464
465 /(?<=[Ms])iss/IG+
466 Mississippi
467
468 /^iss/Ig+
469 ississippi
470
471 /.*iss/Ig+
472 abciss\nxyzisspqr
473
474 /.i./I+g
475 Mississippi
476 Mississippi\A
477 Missouri river
478 Missouri river\A
479
480 /^.is/I+g
481 Mississippi
482
483 /^ab\n/Ig+
484 ab\nab\ncd
485
486 /^ab\n/Img+
487 ab\nab\ncd
488
489 /abc/I
490
491 /abc|bac/I
492
493 /(abc|bac)/I
494
495 /(abc|(c|dc))/I
496
497 /(abc|(d|de)c)/I
498
499 /a*/I
500
501 /a+/I
502
503 /(baa|a+)/I
504
505 /a{0,3}/I
506
507 /baa{3,}/I
508
509 /"([^\\"]+|\\.)*"/I
510
511 /(abc|ab[cd])/I
512
513 /(a|.)/I
514
515 /a|ba|\w/I
516
517 /abc(?=pqr)/I
518
519 /...(?<=abc)/I
520
521 /abc(?!pqr)/I
522
523 /ab./I
524
525 /ab[xyz]/I
526
527 /abc*/I
528
529 /ab.c*/I
530
531 /a.c*/I
532
533 /.c*/I
534
535 /ac*/I
536
537 /(a.c*|b.c*)/I
538
539 /a.c*|aba/I
540
541 /.+a/I
542
543 /(?=abcda)a.*/I
544
545 /(?=a)a.*/I
546
547 /a(b)*/I
548
549 /a\d*/I
550
551 /ab\d*/I
552
553 /a(\d)*/I
554
555 /abcde{0,0}/I
556
557 /ab\d+/I
558
559 /a(?(1)b)(.)/I
560
561 /a(?(1)bag|big)(.)/I
562
563 /a(?(1)bag|big)*(.)/I
564
565 /a(?(1)bag|big)+(.)/I
566
567 /a(?(1)b..|b..)(.)/I
568
569 /ab\d{0}e/I
570
571 /a?b?/I
572 a
573 b
574 ab
575 \
576 *** Failers
577 \N
578
579 /|-/I
580 abcd
581 -abc
582 \Nab-c
583 *** Failers
584 \Nabc
585
586 /^.?abcd/IS
587
588 /\( # ( at start
589 (?: # Non-capturing bracket
590 (?>[^()]+) # Either a sequence of non-brackets (no backtracking)
591 | # Or
592 (?R) # Recurse - i.e. nested bracketed string
593 )* # Zero or more contents
594 \) # Closing )
595 /Ix
596 (abcd)
597 (abcd)xyz
598 xyz(abcd)
599 (ab(xy)cd)pqr
600 (ab(xycd)pqr
601 () abc ()
602 12(abcde(fsh)xyz(foo(bar))lmno)89
603 *** Failers
604 abcd
605 abcd)
606 (abcd
607
608 /\( ( (?>[^()]+) | (?R) )* \) /Ixg
609 (ab(xy)cd)pqr
610 1(abcd)(x(y)z)pqr
611
612 /\( (?: (?>[^()]+) | (?R) ) \) /Ix
613 (abcd)
614 (ab(xy)cd)
615 (a(b(c)d)e)
616 ((ab))
617 *** Failers
618 ()
619
620 /\( (?: (?>[^()]+) | (?R) )? \) /Ix
621 ()
622 12(abcde(fsh)xyz(foo(bar))lmno)89
623
624 /\( ( (?>[^()]+) | (?R) )* \) /Ix
625 (ab(xy)cd)
626
627 /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
628 (ab(xy)cd)
629
630 /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
631 (ab(xy)cd)
632 (123ab(xy)cd)
633
634 /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
635 (ab(xy)cd)
636 (123ab(xy)cd)
637
638 /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
639 (ab(xy)cd)
640
641 /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
642 (abcd(xyz<p>qrs)123)
643
644 /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
645 (ab(cd)ef)
646 (ab(cd(ef)gh)ij)
647
648 /^[[:alnum:]]/DZ
649
650 /^[[:^alnum:]]/DZ
651
652 /^[[:alpha:]]/DZ
653
654 /^[[:^alpha:]]/DZ
655
656 /[_[:alpha:]]/IS
657
658 /^[[:ascii:]]/DZ
659
660 /^[[:^ascii:]]/DZ
661
662 /^[[:blank:]]/DZ
663
664 /^[[:^blank:]]/DZ
665
666 /[\n\x0b\x0c\x0d[:blank:]]/IS
667
668 /^[[:cntrl:]]/DZ
669
670 /^[[:digit:]]/DZ
671
672 /^[[:graph:]]/DZ
673
674 /^[[:lower:]]/DZ
675
676 /^[[:print:]]/DZ
677
678 /^[[:punct:]]/DZ
679
680 /^[[:space:]]/DZ
681
682 /^[[:upper:]]/DZ
683
684 /^[[:xdigit:]]/DZ
685
686 /^[[:word:]]/DZ
687
688 /^[[:^cntrl:]]/DZ
689
690 /^[12[:^digit:]]/DZ
691
692 /^[[:^blank:]]/DZ
693
694 /[01[:alpha:]%]/DZ
695
696 /[[.ch.]]/I
697
698 /[[=ch=]]/I
699
700 /[[:rhubarb:]]/I
701
702 /[[:upper:]]/Ii
703 A
704 a
705
706 /[[:lower:]]/Ii
707 A
708 a
709
710 /((?-i)[[:lower:]])[[:lower:]]/Ii
711 ab
712 aB
713 *** Failers
714 Ab
715 AB
716
717 /[\200-\110]/I
718
719 /^(?(0)f|b)oo/I
720
721 /This one's here because of the large output vector needed/I
722
723 /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
724 \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
725
726 /This one's here because Perl does this differently and PCRE can't at present/I
727
728 /(main(O)?)+/I
729 mainmain
730 mainOmain
731
732 /These are all cases where Perl does it differently (nested captures)/I
733
734 /^(a(b)?)+$/I
735 aba
736
737 /^(aa(bb)?)+$/I
738 aabbaa
739
740 /^(aa|aa(bb))+$/I
741 aabbaa
742
743 /^(aa(bb)??)+$/I
744 aabbaa
745
746 /^(?:aa(bb)?)+$/I
747 aabbaa
748
749 /^(aa(b(b))?)+$/I
750 aabbaa
751
752 /^(?:aa(b(b))?)+$/I
753 aabbaa
754
755 /^(?:aa(b(?:b))?)+$/I
756 aabbaa
757
758 /^(?:aa(bb(?:b))?)+$/I
759 aabbbaa
760
761 /^(?:aa(b(?:bb))?)+$/I
762 aabbbaa
763
764 /^(?:aa(?:b(b))?)+$/I
765 aabbaa
766
767 /^(?:aa(?:b(bb))?)+$/I
768 aabbbaa
769
770 /^(aa(b(bb))?)+$/I
771 aabbbaa
772
773 /^(aa(bb(bb))?)+$/I
774 aabbbbaa
775
776 /--------------------------------------------------------------------/I
777
778 /#/IxDZ
779
780 /a#/IxDZ
781
782 /[\s]/DZ
783
784 /[\S]/DZ
785
786 /a(?i)b/DZ
787 ab
788 aB
789 *** Failers
790 AB
791
792 /(a(?i)b)/DZ
793 ab
794 aB
795 *** Failers
796 AB
797
798 / (?i)abc/IxDZ
799
800 /#this is a comment
801 (?i)abc/IxDZ
802
803 /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
804
805 /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
806
807 /\Q\E/DZ
808 \
809
810 /\Q\Ex/DZ
811
812 / \Q\E/DZ
813
814 /a\Q\E/DZ
815 abc
816 bca
817 bac
818
819 /a\Q\Eb/DZ
820 abc
821
822 /\Q\Eabc/DZ
823
824 /x*+\w/DZ
825 *** Failers
826 xxxxx
827
828 /x?+/DZ
829
830 /x++/DZ
831
832 /x{1,3}+/DZ
833
834 /(x)*+/DZ
835
836 /^(\w++|\s++)*$/I
837 now is the time for all good men to come to the aid of the party
838 *** Failers
839 this is not a line with only words and spaces!
840
841 /(\d++)(\w)/I
842 12345a
843 *** Failers
844 12345+
845
846 /a++b/I
847 aaab
848
849 /(a++b)/I
850 aaab
851
852 /(a++)b/I
853 aaab
854
855 /([^()]++|\([^()]*\))+/I
856 ((abc(ade)ufh()()x
857
858 /\(([^()]++|\([^()]+\))+\)/I
859 (abc)
860 (abc(def)xyz)
861 *** Failers
862 ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
863
864 /(abc){1,3}+/DZ
865
866 /a+?+/I
867
868 /a{2,3}?+b/I
869
870 /(?U)a+?+/I
871
872 /a{2,3}?+b/IU
873
874 /x(?U)a++b/DZ
875 xaaaab
876
877 /(?U)xa++b/DZ
878 xaaaab
879
880 /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
881
882 /^x(?U)a+b/DZ
883
884 /^x(?U)(a+)b/DZ
885
886 /[.x.]/I
887
888 /[=x=]/I
889
890 /[:x:]/I
891
892 /\l/I
893
894 /\L/I
895
896 /\N{name}/I
897
898 /\u/I
899
900 /\U/I
901
902 /[/I
903
904 /[a-/I
905
906 /[[:space:]/I
907
908 /[\s]/IDZ
909
910 /[[:space:]]/IDZ
911
912 /[[:space:]abcde]/IDZ
913
914 /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix
915 <>
916 <abcd>
917 <abc <123> hij>
918 <abc <def> hij>
919 <abc<>def>
920 <abc<>
921 *** Failers
922 <abc
923
924 |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
925
926 |\$\<\.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
927
928 /(.*)\d+\1/I
929
930 /(.*)\d+/I
931
932 /(.*)\d+\1/Is
933
934 /(.*)\d+/Is
935
936 /(.*(xyz))\d+\2/I
937
938 /((.*))\d+\1/I
939 abc123bc
940
941 /a[b]/I
942
943 /(?=a).*/I
944
945 /(?=abc).xyz/IiI
946
947 /(?=abc)(?i).xyz/I
948
949 /(?=a)(?=b)/I
950
951 /(?=.)a/I
952
953 /((?=abcda)a)/I
954
955 /((?=abcda)ab)/I
956
957 /()a/I
958
959 /(?(1)ab|ac)(.)/I
960
961 /(?(1)abz|acz)(.)/I
962
963 /(?(1)abz)(.)/I
964
965 /(?(1)abz)(1)23/I
966
967 /(a)+/I
968
969 /(a){2,3}/I
970
971 /(a)*/I
972
973 /[a]/I
974
975 /[ab]/I
976
977 /[ab]/IS
978
979 /[^a]/I
980
981 /\d456/I
982
983 /\d456/IS
984
985 /a^b/I
986
987 /^a/Im
988 abcde
989 xy\nabc
990 *** Failers
991 xyabc
992
993 /c|abc/I
994
995 /(?i)[ab]/IS
996
997 /[ab](?i)cd/IS
998
999 /abc(?C)def/I
1000 abcdef
1001 1234abcdef
1002 *** Failers
1003 abcxyz
1004 abcxyzf
1005
1006 /abc(?C)de(?C1)f/I
1007 123abcdef
1008
1009 /(?C1)\dabc(?C2)def/IS
1010 1234abcdef
1011 *** Failers
1012 abcdef
1013
1014 /(?C1)\dabc(?C2)def/ISS
1015 1234abcdef
1016 *** Failers
1017 abcdef
1018
1019 /(?C255)ab/I
1020
1021 /(?C256)ab/I
1022
1023 /(?Cab)xx/I
1024
1025 /(?C12vr)x/I
1026
1027 /abc(?C)def/I
1028 *** Failers
1029 \x83\x0\x61bcdef
1030
1031 /(abc)(?C)de(?C1)f/I
1032 123abcdef
1033 123abcdef\C+
1034 123abcdef\C-
1035 *** Failers
1036 123abcdef\C!1
1037
1038 /(?C0)(abc(?C1))*/I
1039 abcabcabc
1040 abcabc\C!1!3
1041 *** Failers
1042 abcabcabc\C!1!3
1043
1044 /(\d{3}(?C))*/I
1045 123\C+
1046 123456\C+
1047 123456789\C+
1048
1049 /((xyz)(?C)p|(?C1)xyzabc)/I
1050 xyzabc\C+
1051
1052 /(X)((xyz)(?C)p|(?C1)xyzabc)/I
1053 Xxyzabc\C+
1054
1055 /(?=(abc))(?C)abcdef/I
1056 abcdef\C+
1057
1058 /(?!(abc)(?C1)d)(?C2)abcxyz/I
1059 abcxyz\C+
1060
1061 /(?<=(abc)(?C))xyz/I
1062 abcxyz\C+
1063
1064 /a(b+)(c*)(?C1)/I
1065 abbbbbccc\C*1
1066
1067 /a(b+?)(c*?)(?C1)/I
1068 abbbbbccc\C*1
1069
1070 /(?C)abc/I
1071
1072 /(?C)^abc/I
1073
1074 /(?C)a|b/IS
1075
1076 /(?R)/I
1077
1078 /(a|(?R))/I
1079
1080 /(ab|(bc|(de|(?R))))/I
1081
1082 /x(ab|(bc|(de|(?R))))/I
1083 xab
1084 xbc
1085 xde
1086 xxab
1087 xxxab
1088 *** Failers
1089 xyab
1090
1091 /(ab|(bc|(de|(?1))))/I
1092
1093 /x(ab|(bc|(de|(?1)x)x)x)/I
1094
1095 /^([^()]|\((?1)*\))*$/I
1096 abc
1097 a(b)c
1098 a(b(c))d
1099 *** Failers)
1100 a(b(c)d
1101
1102 /^>abc>([^()]|\((?1)*\))*<xyz<$/I
1103 >abc>123<xyz<
1104 >abc>1(2)3<xyz<
1105 >abc>(1(2)3)<xyz<
1106
1107 /(a(?1)b)/DZ
1108
1109 /(a(?1)+b)/DZ
1110
1111 /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
1112 12
1113 (((2+2)*-3)-7)
1114 -12
1115 *** Failers
1116 ((2+2)*-3)-7)
1117
1118 /^(x(y|(?1){2})z)/I
1119 xyz
1120 xxyzxyzz
1121 *** Failers
1122 xxyzz
1123 xxyzxyzxyzz
1124
1125 /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix
1126 <>
1127 <abcd>
1128 <abc <123> hij>
1129 <abc <def> hij>
1130 <abc<>def>
1131 <abc<>
1132 *** Failers
1133 <abc
1134
1135 /(?1)/I
1136
1137 /((?2)(abc)/I
1138
1139 /^(abc)def(?1)/I
1140 abcdefabc
1141
1142 /^(a|b|c)=(?1)+/I
1143 a=a
1144 a=b
1145 a=bc
1146
1147 /^(a|b|c)=((?1))+/I
1148 a=a
1149 a=b
1150 a=bc
1151
1152 /a(?P<name1>b|c)d(?P<longername2>e)/DZ
1153 abde
1154 acde
1155
1156 /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
1157
1158 /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
1159
1160 /^\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
1161 1221
1162 Satan, oscillate my metallic sonatas!
1163 A man, a plan, a canal: Panama!
1164 Able was I ere I saw Elba.
1165 *** Failers
1166 The quick brown fox
1167
1168 /((?(R)a|b))\1(?1)?/I
1169 bb
1170 bbaa
1171
1172 /(.*)a/Is
1173
1174 /(.*)a\1/Is
1175
1176 /(.*)a(b)\2/Is
1177
1178 /((.*)a|(.*)b)z/Is
1179
1180 /((.*)a|(.*)b)z\1/Is
1181
1182 /((.*)a|(.*)b)z\2/Is
1183
1184 /((.*)a|(.*)b)z\3/Is
1185
1186 /((.*)a|^(.*)b)z\3/Is
1187
1188 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
1189
1190 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
1191
1192 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
1193
1194 /(a)(bc)/INDZ
1195 abc
1196
1197 /(?P<one>a)(bc)/INDZ
1198 abc
1199
1200 /(a)(?P<named>bc)/INDZ
1201
1202 /(a+)*zz/I
1203 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
1204 aaaaaaaaaaaaaz\M
1205
1206 /(aaa(?C1)bbb|ab)/I
1207 aaabbb
1208 aaabbb\C*0
1209 aaabbb\C*1
1210 aaabbb\C*-1
1211
1212 /ab(?P<one>cd)ef(?P<two>gh)/I
1213 abcdefgh
1214 abcdefgh\C1\Gtwo
1215 abcdefgh\Cone\Ctwo
1216 abcdefgh\Cthree
1217
1218 /(?P<Tes>)(?P<Test>)/DZ
1219
1220 /(?P<Test>)(?P<Tes>)/DZ
1221
1222 /(?P<Z>zz)(?P<A>aa)/I
1223 zzaa\CZ
1224 zzaa\CA
1225
1226 /(?P<x>eks)(?P<x>eccs)/I
1227
1228 /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
1229
1230 "\[((?P<elem>\d+)(,(?P>elem))*)\]"I
1231 [10,20,30,5,5,4,4,2,43,23,4234]
1232 *** Failers
1233 []
1234
1235 "\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
1236 [10,20,30,5,5,4,4,2,43,23,4234]
1237 []
1238
1239 /(a(b(?2)c))?/DZ
1240
1241 /(a(b(?2)c))*/DZ
1242
1243 /(a(b(?2)c)){0,2}/DZ
1244
1245 /[ab]{1}+/DZ
1246
1247 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
1248 Baby Bjorn Active Carrier - With free SHIPPING!!
1249
1250 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
1251 Baby Bjorn Active Carrier - With free SHIPPING!!
1252
1253 /a*.*b/ISDZ
1254
1255 /(a|b)*.?c/ISDZ
1256
1257 /abc(?C255)de(?C)f/DZ
1258
1259 /abcde/ICDZ
1260 abcde
1261 abcdfe
1262
1263 /a*b/ICDZS
1264 ab
1265 aaaab
1266 aaaacb
1267
1268 /a*b/ICDZSS
1269 ab
1270 aaaab
1271 aaaacb
1272
1273 /a+b/ICDZ
1274 ab
1275 aaaab
1276 aaaacb
1277
1278 /(abc|def)x/ICDZS
1279 abcx
1280 defx
1281 ** Failers
1282 abcdefzx
1283
1284 /(abc|def)x/ICDZSS
1285 abcx
1286 defx
1287 ** Failers
1288 abcdefzx
1289
1290 /(ab|cd){3,4}/IC
1291 ababab
1292 abcdabcd
1293 abcdcdcdcdcd
1294
1295 /([ab]{,4}c|xy)/ICDZS
1296 Note: that { does NOT introduce a quantifier
1297
1298 /([ab]{,4}c|xy)/ICDZSS
1299 Note: that { does NOT introduce a quantifier
1300
1301 /([ab]{1,4}c|xy){4,5}?123/ICDZ
1302 aacaacaacaacaac123
1303
1304 /\b.*/I
1305 ab cd\>1
1306
1307 /\b.*/Is
1308 ab cd\>1
1309
1310 /(?!.bcd).*/I
1311 Xbcd12345
1312
1313 /abcde/I
1314 ab\P
1315 abc\P
1316 abcd\P
1317 abcde\P
1318 the quick brown abc\P
1319 ** Failers\P
1320 the quick brown abxyz fox\P
1321
1322 "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
1323 13/05/04\P
1324 13/5/2004\P
1325 02/05/09\P
1326 1\P
1327 1/2\P
1328 1/2/0\P
1329 1/2/04\P
1330 0\P
1331 02/\P
1332 02/0\P
1333 02/1\P
1334 ** Failers\P
1335 \P
1336 123\P
1337 33/4/04\P
1338 3/13/04\P
1339 0/1/2003\P
1340 0/\P
1341 02/0/\P
1342 02/13\P
1343
1344 /0{0,2}ABC/I
1345
1346 /\d{3,}ABC/I
1347
1348 /\d*ABC/I
1349
1350 /[abc]+DE/I
1351
1352 /[abc]?123/I
1353 123\P
1354 a\P
1355 b\P
1356 c\P
1357 c12\P
1358 c123\P
1359
1360 /^(?:\d){3,5}X/I
1361 1\P
1362 123\P
1363 123X
1364 1234\P
1365 1234X
1366 12345\P
1367 12345X
1368 *** Failers
1369 1X
1370 123456\P
1371
1372 /abc/IS>testsavedregex
1373 <testsavedregex
1374 abc
1375 ** Failers
1376 bca
1377
1378 /abc/ISS>testsavedregex
1379 <testsavedregex
1380 abc
1381 ** Failers
1382 bca
1383
1384 /abc/IFS>testsavedregex
1385 <testsavedregex
1386 abc
1387 ** Failers
1388 bca
1389
1390 /abc/IFSS>testsavedregex
1391 <testsavedregex
1392 abc
1393 ** Failers
1394 bca
1395
1396 /(a|b)/IS>testsavedregex
1397 <testsavedregex
1398 abc
1399 ** Failers
1400 def
1401
1402 /(a|b)/ISS>testsavedregex
1403 <testsavedregex
1404 abc
1405 ** Failers
1406 def
1407
1408 /(a|b)/ISF>testsavedregex
1409 <testsavedregex
1410 abc
1411 ** Failers
1412 def
1413
1414 /(a|b)/ISSF>testsavedregex
1415 <testsavedregex
1416 abc
1417 ** Failers
1418 def
1419
1420 ~<(\w+)/?>(.)*</(\1)>~smgI
1421 \J1024<!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>
1422
1423 /^a/IF
1424
1425 /line\nbreak/I
1426 this is a line\nbreak
1427 line one\nthis is a line\nbreak in the second line
1428
1429 /line\nbreak/If
1430 this is a line\nbreak
1431 ** Failers
1432 line one\nthis is a line\nbreak in the second line
1433
1434 /line\nbreak/Imf
1435 this is a line\nbreak
1436 ** Failers
1437 line one\nthis is a line\nbreak in the second line
1438
1439 /(?i)(?-i)AbCd/I
1440 AbCd
1441 ** Failers
1442 abcd
1443
1444 /a{11111111111111111111}/I
1445
1446 /(){64294967295}/I
1447
1448 /(){2,4294967295}/I
1449
1450 "(?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
1451 abcdefghijklAkB
1452
1453 "(?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
1454 abcdefghijklAkB
1455
1456 "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
1457 abcdefghijklAkB
1458
1459 "(?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
1460 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
1461
1462 "(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
1463 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
1464
1465 /[^()]*(?:\((?R)\)[^()]*)*/I
1466 (this(and)that
1467 (this(and)that)
1468 (this(and)that)stuff
1469
1470 /[^()]*(?:\((?>(?R))\)[^()]*)*/I
1471 (this(and)that
1472 (this(and)that)
1473
1474 /[^()]*(?:\((?R)\))*[^()]*/I
1475 (this(and)that
1476 (this(and)that)
1477
1478 /(?:\((?R)\))*[^()]*/I
1479 (this(and)that
1480 (this(and)that)
1481 ((this))
1482
1483 /(?:\((?R)\))|[^()]*/I
1484 (this(and)that
1485 (this(and)that)
1486 (this)
1487 ((this))
1488
1489 /\x{0000ff}/I
1490
1491 /^((?P<A>a1)|(?P<A>a2)b)/I
1492
1493 /^((?P<A>a1)|(?P<A>a2)b)/IJ
1494 a1b\CA
1495 a2b\CA
1496 ** Failers
1497 a1b\CZ\CA
1498
1499 /(?|(?<a>)(?<b>)(?<a>)|(?<a>)(?<b>)(?<a>))/IJ
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 /\s*,\s*/IS
1569 \x0b,\x0b
1570 \x0c,\x0d
1571
1572 /^abc/Im
1573 xyz\nabc
1574 xyz\nabc\<lf>
1575 xyz\r\nabc\<lf>
1576 xyz\rabc\<cr>
1577 xyz\r\nabc\<crlf>
1578 ** Failers
1579 xyz\nabc\<cr>
1580 xyz\r\nabc\<cr>
1581 xyz\nabc\<crlf>
1582 xyz\rabc\<crlf>
1583 xyz\rabc\<lf>
1584
1585 /abc$/Im<lf>
1586 xyzabc
1587 xyzabc\n
1588 xyzabc\npqr
1589 xyzabc\r\<cr>
1590 xyzabc\rpqr\<cr>
1591 xyzabc\r\n\<crlf>
1592 xyzabc\r\npqr\<crlf>
1593 ** Failers
1594 xyzabc\r
1595 xyzabc\rpqr
1596 xyzabc\r\n
1597 xyzabc\r\npqr
1598
1599 /^abc/Im<cr>
1600 xyz\rabcdef
1601 xyz\nabcdef\<lf>
1602 ** Failers
1603 xyz\nabcdef
1604
1605 /^abc/Im<lf>
1606 xyz\nabcdef
1607 xyz\rabcdef\<cr>
1608 ** Failers
1609 xyz\rabcdef
1610
1611 /^abc/Im<crlf>
1612 xyz\r\nabcdef
1613 xyz\rabcdef\<cr>
1614 ** Failers
1615 xyz\rabcdef
1616
1617 /^abc/Im<bad>
1618
1619 /abc/I
1620 xyz\rabc\<bad>
1621 abc
1622
1623 /.*/I<lf>
1624 abc\ndef
1625 abc\rdef
1626 abc\r\ndef
1627 \<cr>abc\ndef
1628 \<cr>abc\rdef
1629 \<cr>abc\r\ndef
1630 \<crlf>abc\ndef
1631 \<crlf>abc\rdef
1632 \<crlf>abc\r\ndef
1633
1634 /\w+(.)(.)?def/Is
1635 abc\ndef
1636 abc\rdef
1637 abc\r\ndef
1638
1639 +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
1640 /* this is a C style comment */\M
1641
1642 /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
1643
1644 /()()()()()()()()()()()()()()()()()()()()
1645 ()()()()()()()()()()()()()()()()()()()()
1646 ()()()()()()()()()()()()()()()()()()()()
1647 ()()()()()()()()()()()()()()()()()()()()
1648 ()()()()()()()()()()()()()()()()()()()()
1649 (.(.))/Ix
1650 XY\O400
1651
1652 /(a*b|(?i:c*(?-i)d))/IS
1653
1654 /()[ab]xyz/IS
1655
1656 /(|)[ab]xyz/IS
1657
1658 /(|c)[ab]xyz/IS
1659
1660 /(|c?)[ab]xyz/IS
1661
1662 /(d?|c?)[ab]xyz/IS
1663
1664 /(d?|c)[ab]xyz/IS
1665
1666 /^a*b\d/DZ
1667
1668 /^a*+b\d/DZ
1669
1670 /^a*?b\d/DZ
1671
1672 /^a+A\d/DZ
1673 aaaA5
1674 ** Failers
1675 aaaa5
1676
1677 /^a*A\d/IiDZ
1678 aaaA5
1679 aaaa5
1680
1681 /(a*|b*)[cd]/IS
1682
1683 /(a+|b*)[cd]/IS
1684
1685 /(a*|b+)[cd]/IS
1686
1687 /(a+|b+)[cd]/IS
1688
1689 /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
1690 ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
1691 (((
1692 a
1693 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
1694 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
1695 )))
1696 /Ix
1697 large nest
1698
1699 /a*\d/BZ
1700
1701 /a*\D/BZ
1702
1703 /0*\d/BZ
1704
1705 /0*\D/BZ
1706
1707 /a*\s/BZ
1708
1709 /a*\S/BZ
1710
1711 / *\s/BZ
1712
1713 / *\S/BZ
1714
1715 /a*\w/BZ
1716
1717 /a*\W/BZ
1718
1719 /=*\w/BZ
1720
1721 /=*\W/BZ
1722
1723 /\d*a/BZ
1724
1725 /\d*2/BZ
1726
1727 /\d*\d/BZ
1728
1729 /\d*\D/BZ
1730
1731 /\d*\s/BZ
1732
1733 /\d*\S/BZ
1734
1735 /\d*\w/BZ
1736
1737 /\d*\W/BZ
1738
1739 /\D*a/BZ
1740
1741 /\D*2/BZ
1742
1743 /\D*\d/BZ
1744
1745 /\D*\D/BZ
1746
1747 /\D*\s/BZ
1748
1749 /\D*\S/BZ
1750
1751 /\D*\w/BZ
1752
1753 /\D*\W/BZ
1754
1755 /\s*a/BZ
1756
1757 /\s*2/BZ
1758
1759 /\s*\d/BZ
1760
1761 /\s*\D/BZ
1762
1763 /\s*\s/BZ
1764
1765 /\s*\S/BZ
1766
1767 /\s*\w/BZ
1768
1769 /\s*\W/BZ
1770
1771 /\S*a/BZ
1772
1773 /\S*2/BZ
1774
1775 /\S*\d/BZ
1776
1777 /\S*\D/BZ
1778
1779 /\S*\s/BZ
1780
1781 /\S*\S/BZ
1782
1783 /\S*\w/BZ
1784
1785 /\S*\W/BZ
1786
1787 /\w*a/BZ
1788
1789 /\w*2/BZ
1790
1791 /\w*\d/BZ
1792
1793 /\w*\D/BZ
1794
1795 /\w*\s/BZ
1796
1797 /\w*\S/BZ
1798
1799 /\w*\w/BZ
1800
1801 /\w*\W/BZ
1802
1803 /\W*a/BZ
1804
1805 /\W*2/BZ
1806
1807 /\W*\d/BZ
1808
1809 /\W*\D/BZ
1810
1811 /\W*\s/BZ
1812
1813 /\W*\S/BZ
1814
1815 /\W*\w/BZ
1816
1817 /\W*\W/BZ
1818
1819 /[^a]+a/BZ
1820
1821 /[^a]+a/BZi
1822
1823 /[^a]+A/BZi
1824
1825 /[^a]+b/BZ
1826
1827 /[^a]+\d/BZ
1828
1829 /a*[^a]/BZ
1830
1831 /(?P<abc>x)(?P<xyz>y)/I
1832 xy\Cabc\Cxyz
1833
1834 /(?<abc>x)(?'xyz'y)/I
1835 xy\Cabc\Cxyz
1836
1837 /(?<abc'x)(?'xyz'y)/I
1838
1839 /(?<abc>x)(?'xyz>y)/I
1840
1841 /(?P'abc'x)(?P<xyz>y)/I
1842
1843 /^(?:(?(ZZ)a|b)(?<ZZ>X))+/
1844 bXaX
1845 bXbX
1846 ** Failers
1847 aXaX
1848 aXbX
1849
1850 /^(?P>abc)(?<abcd>xxx)/
1851
1852 /^(?P>abc)(?<abc>x|y)/
1853 xx
1854 xy
1855 yy
1856 yx
1857
1858 /^(?P>abc)(?P<abc>x|y)/
1859 xx
1860 xy
1861 yy
1862 yx
1863
1864 /^((?(abc)a|b)(?<abc>x|y))+/
1865 bxay
1866 bxby
1867 ** Failers
1868 axby
1869
1870 /^(((?P=abc)|X)(?<abc>x|y))+/
1871 XxXxxx
1872 XxXyyx
1873 XxXyxx
1874 ** Failers
1875 x
1876
1877 /^(?1)(abc)/
1878 abcabc
1879
1880 /^(?:(?:\1|X)(a|b))+/
1881 Xaaa
1882 Xaba
1883
1884 /^[\E\Qa\E-\Qz\E]+/BZ
1885
1886 /^[a\Q]bc\E]/BZ
1887
1888 /^[a-\Q\E]/BZ
1889
1890 /^(?P>abc)[()](?<abc>)/BZ
1891
1892 /^((?(abc)y)[()](?P<abc>x))+/BZ
1893 (xy)x
1894
1895 /^(?P>abc)\Q()\E(?<abc>)/BZ
1896
1897 /^(?P>abc)[a\Q(]\E(](?<abc>)/BZ
1898
1899 /^(?P>abc) # this is (a comment)
1900 (?<abc>)/BZx
1901
1902 /^\W*(?:(?<one>(?<two>.)\W*(?&one)\W*\k<two>|)|(?<three>(?<four>.)\W*(?&three)\W*\k'four'|\W*.\W*))\W*$/Ii
1903 1221
1904 Satan, oscillate my metallic sonatas!
1905 A man, a plan, a canal: Panama!
1906 Able was I ere I saw Elba.
1907 *** Failers
1908 The quick brown fox
1909
1910 /(?=(\w+))\1:/I
1911 abcd:
1912
1913 /(?=(?'abc'\w+))\k<abc>:/I
1914 abcd:
1915
1916 /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J
1917 adaa
1918 ** Failers
1919 addd
1920 adbb
1921
1922 /(?'abc'a|b)(?<abc>d|e)(?&abc){2}/J
1923 bdaa
1924 bdab
1925 ** Failers
1926 bddd
1927
1928 /(?(<bc))/
1929
1930 /(?(''))/
1931
1932 /(?('R')stuff)/
1933
1934 /((abc (?(R) (?(R1)1) (?(R2)2) X | (?1) (?2) (?R) ))) /x
1935 abcabc1Xabc2XabcXabcabc
1936
1937 /(?<A> (?'B' abc (?(R) (?(R&A)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
1938 abcabc1Xabc2XabcXabcabc
1939
1940 /(?<A> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
1941
1942 /(?<1> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
1943 abcabc1Xabc2XabcXabcabc
1944
1945 /^(?(DEFINE) abc | xyz ) /x
1946
1947 /(?(DEFINE) abc) xyz/xI
1948
1949 /(a|)*\d/
1950 \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
1951 \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
1952
1953 /^a.b/<lf>
1954 a\rb
1955 a\nb\<cr>
1956 a\x85b\<anycrlf>
1957 ** Failers
1958 a\nb
1959 a\nb\<any>
1960 a\rb\<cr>
1961 a\rb\<any>
1962 a\x85b\<any>
1963 a\rb\<anycrlf>
1964
1965 /^abc./mgx<any>
1966 abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
1967
1968 /abc.$/mgx<any>
1969 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9
1970
1971 /a/<cr><any>
1972
1973 /a/<any><crlf>
1974
1975 /^a\Rb/<bsr_unicode>
1976 a\nb
1977 a\rb
1978 a\r\nb
1979 a\x0bb
1980 a\x0cb
1981 a\x85b
1982 ** Failers
1983 a\n\rb
1984
1985 /^a\R*b/<bsr_unicode>
1986 ab
1987 a\nb
1988 a\rb
1989 a\r\nb
1990 a\x0bb
1991 a\x0cb
1992 a\x85b
1993 a\n\rb
1994 a\n\r\x85\x0cb
1995
1996 /^a\R+b/<bsr_unicode>
1997 a\nb
1998 a\rb
1999 a\r\nb
2000 a\x0bb
2001 a\x0cb
2002 a\x85b
2003 a\n\rb
2004 a\n\r\x85\x0cb
2005 ** Failers
2006 ab
2007
2008 /^a\R{1,3}b/<bsr_unicode>
2009 a\nb
2010 a\n\rb
2011 a\n\r\x85b
2012 a\r\n\r\nb
2013 a\r\n\r\n\r\nb
2014 a\n\r\n\rb
2015 a\n\n\r\nb
2016 ** Failers
2017 a\n\n\n\rb
2018 a\r
2019
2020 /^a[\R]b/<bsr_unicode>
2021 aRb
2022 ** Failers
2023 a\nb
2024
2025 /(?&abc)X(?<abc>P)/I
2026 abcPXP123
2027
2028 /(?1)X(?<abc>P)/I
2029 abcPXP123
2030
2031 /(?:a(?&abc)b)*(?<abc>x)/
2032 123axbaxbaxbx456
2033 123axbaxbaxb456
2034
2035 /(?:a(?&abc)b){1,5}(?<abc>x)/
2036 123axbaxbaxbx456
2037
2038 /(?:a(?&abc)b){2,5}(?<abc>x)/
2039 123axbaxbaxbx456
2040
2041 /(?:a(?&abc)b){2,}(?<abc>x)/
2042 123axbaxbaxbx456
2043
2044 /(abc)(?i:(?1))/
2045 defabcabcxyz
2046 DEFabcABCXYZ
2047
2048 /(abc)(?:(?i)(?1))/
2049 defabcabcxyz
2050 DEFabcABCXYZ
2051
2052 /^(a)\g-2/
2053
2054 /^(a)\g/
2055
2056 /^(a)\g{0}/
2057
2058 /^(a)\g{3/
2059
2060 /^(a)\g{4a}/
2061
2062 /^a.b/<lf>
2063 a\rb
2064 *** Failers
2065 a\nb
2066
2067 /.+foo/
2068 afoo
2069 ** Failers
2070 \r\nfoo
2071 \nfoo
2072
2073 /.+foo/<crlf>
2074 afoo
2075 \nfoo
2076 ** Failers
2077 \r\nfoo
2078
2079 /.+foo/<any>
2080 afoo
2081 ** Failers
2082 \nfoo
2083 \r\nfoo
2084
2085 /.+foo/s
2086 afoo
2087 \r\nfoo
2088 \nfoo
2089
2090 /^$/mg<any>
2091 abc\r\rxyz
2092 abc\n\rxyz
2093 ** Failers
2094 abc\r\nxyz
2095
2096 /(?m)^$/<any>g+
2097 abc\r\n\r\n
2098
2099 /(?m)^$|^\r\n/<any>g+
2100 abc\r\n\r\n
2101
2102 /(?m)$/<any>g+
2103 abc\r\n\r\n
2104
2105 /abc.$/mgx<anycrlf>
2106 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
2107
2108 /^X/m
2109 XABC
2110 ** Failers
2111 XABC\B
2112
2113 /(ab|c)(?-1)/BZ
2114 abc
2115
2116 /xy(?+1)(abc)/BZ
2117 xyabcabc
2118 ** Failers
2119 xyabc
2120
2121 /x(?-0)y/
2122
2123 /x(?-1)y/
2124
2125 /x(?+0)y/
2126
2127 /x(?+1)y/
2128
2129 /^(abc)?(?(-1)X|Y)/BZ
2130 abcX
2131 Y
2132 ** Failers
2133 abcY
2134
2135 /^((?(+1)X|Y)(abc))+/BZ
2136 YabcXabc
2137 YabcXabcXabc
2138 ** Failers
2139 XabcXabc
2140
2141 /(?(-1)a)/BZ
2142
2143 /((?(-1)a))/BZ
2144
2145 /((?(-2)a))/BZ
2146
2147 /^(?(+1)X|Y)(.)/BZ
2148 Y!
2149
2150 /(?<A>tom|bon)-\k{A}/
2151 tom-tom
2152 bon-bon
2153 ** Failers
2154 tom-bon
2155
2156 /\g{A/
2157
2158 /(?|(abc)|(xyz))/BZ
2159 >abc<
2160 >xyz<
2161
2162 /(x)(?|(abc)|(xyz))(x)/BZ
2163 xabcx
2164 xxyzx
2165
2166 /(x)(?|(abc)(pqr)|(xyz))(x)/BZ
2167 xabcpqrx
2168 xxyzx
2169
2170 /\H++X/BZ
2171 ** Failers
2172 XXXX
2173
2174 /\H+\hY/BZ
2175 XXXX Y
2176
2177 /\H+ Y/BZ
2178
2179 /\h+A/BZ
2180
2181 /\v*B/BZ
2182
2183 /\V+\x0a/BZ
2184
2185 /A+\h/BZ
2186
2187 / *\H/BZ
2188
2189 /A*\v/BZ
2190
2191 /\x0b*\V/BZ
2192
2193 /\d+\h/BZ
2194
2195 /\d*\v/BZ
2196
2197 /S+\h\S+\v/BZ
2198
2199 /\w{3,}\h\w+\v/BZ
2200
2201 /\h+\d\h+\w\h+\S\h+\H/BZ
2202
2203 /\v+\d\v+\w\v+\S\v+\V/BZ
2204
2205 /\H+\h\H+\d/BZ
2206
2207 /\V+\v\V+\w/BZ
2208
2209 /\( (?: [^()]* | (?R) )* \)/x
2210 \J1024(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(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)
2211
2212 /[\E]AAA/
2213
2214 /[\Q\E]AAA/
2215
2216 /[^\E]AAA/
2217
2218 /[^\Q\E]AAA/
2219
2220 /[\E^]AAA/
2221
2222 /[\Q\E^]AAA/
2223
2224 /A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ
2225
2226 /^a+(*FAIL)/C
2227 aaaaaa
2228
2229 /a+b?c+(*FAIL)/C
2230 aaabccc
2231
2232 /a+b?(*PRUNE)c+(*FAIL)/C
2233 aaabccc
2234
2235 /a+b?(*COMMIT)c+(*FAIL)/C
2236 aaabccc
2237
2238 /a+b?(*SKIP)c+(*FAIL)/C
2239 aaabcccaaabccc
2240
2241 /a+b?(*THEN)c+(*FAIL)/C
2242 aaabccc
2243
2244 /a(*MARK)b/
2245
2246 /(?i:A{1,}\6666666666)/
2247
2248 /\g6666666666/
2249
2250 /[\g6666666666]/BZ
2251
2252 /(?1)\c[/
2253
2254 /.+A/<crlf>
2255 \r\nA
2256
2257 /\nA/<crlf>
2258 \r\nA
2259
2260 /[\r\n]A/<crlf>
2261 \r\nA
2262
2263 /(\r|\n)A/<crlf>
2264 \r\nA
2265
2266 /a(*CR)b/
2267
2268 /(*CR)a.b/
2269 a\nb
2270 ** Failers
2271 a\rb
2272
2273 /(*CR)a.b/<lf>
2274 a\nb
2275 ** Failers
2276 a\rb
2277
2278 /(*LF)a.b/<CRLF>
2279 a\rb
2280 ** Failers
2281 a\nb
2282
2283 /(*CRLF)a.b/
2284 a\rb
2285 a\nb
2286 ** Failers
2287 a\r\nb
2288
2289 /(*ANYCRLF)a.b/<CR>
2290 ** Failers
2291 a\rb
2292 a\nb
2293 a\r\nb
2294
2295 /(*ANY)a.b/<cr>
2296 ** Failers
2297 a\rb
2298 a\nb
2299 a\r\nb
2300 a\x85b
2301
2302 /(*ANY).*/g
2303 abc\r\ndef
2304
2305 /(*ANYCRLF).*/g
2306 abc\r\ndef
2307
2308 /(*CRLF).*/g
2309 abc\r\ndef
2310
2311 /a\Rb/I<bsr_anycrlf>
2312 a\rb
2313 a\nb
2314 a\r\nb
2315 ** Failers
2316 a\x85b
2317 a\x0bb
2318
2319 /a\Rb/I<bsr_unicode>
2320 a\rb
2321 a\nb
2322 a\r\nb
2323 a\x85b
2324 a\x0bb
2325 ** Failers
2326 a\x85b\<bsr_anycrlf>
2327 a\x0bb\<bsr_anycrlf>
2328
2329 /a\R?b/I<bsr_anycrlf>
2330 a\rb
2331 a\nb
2332 a\r\nb
2333 ** Failers
2334 a\x85b
2335 a\x0bb
2336
2337 /a\R?b/I<bsr_unicode>
2338 a\rb
2339 a\nb
2340 a\r\nb
2341 a\x85b
2342 a\x0bb
2343 ** Failers
2344 a\x85b\<bsr_anycrlf>
2345 a\x0bb\<bsr_anycrlf>
2346
2347 /a\R{2,4}b/I<bsr_anycrlf>
2348 a\r\n\nb
2349 a\n\r\rb
2350 a\r\n\r\n\r\n\r\nb
2351 ** Failers
2352 a\x85\85b
2353 a\x0b\0bb
2354
2355 /a\R{2,4}b/I<bsr_unicode>
2356 a\r\rb
2357 a\n\n\nb
2358 a\r\n\n\r\rb
2359 a\x85\85b
2360 a\x0b\0bb
2361 ** Failers
2362 a\r\r\r\r\rb
2363 a\x85\85b\<bsr_anycrlf>
2364 a\x0b\0bb\<bsr_anycrlf>
2365
2366 /(*BSR_ANYCRLF)a\Rb/I
2367 a\nb
2368 a\rb
2369
2370 /(*BSR_UNICODE)a\Rb/I
2371 a\x85b
2372
2373 /(*BSR_ANYCRLF)(*CRLF)a\Rb/I
2374 a\nb
2375 a\rb
2376
2377 /(*CRLF)(*BSR_UNICODE)a\Rb/I
2378 a\x85b
2379
2380 /(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I
2381
2382 /(?<a>)(?&)/
2383
2384 /(?<abc>)(?&a)/
2385
2386 /(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/
2387
2388 /(?+-a)/
2389
2390 /(?-+a)/
2391
2392 /(?(-1))/
2393
2394 /(?(+10))/
2395
2396 /(?(10))/
2397
2398 /(?(+2))()()/
2399
2400 /(?(2))()()/
2401
2402 /\k''/
2403
2404 /\k<>/
2405
2406 /\k{}/
2407
2408 /\k/
2409
2410 /\kabc/
2411
2412 /(?P=)/
2413
2414 /(?P>)/
2415
2416 /(?!\w)(?R)/
2417
2418 /(?=\w)(?R)/
2419
2420 /(?<!\w)(?R)/
2421
2422 /(?<=\w)(?R)/
2423
2424 /[[:foo:]]/
2425
2426 /[[:1234:]]/
2427
2428 /[[:f\oo:]]/
2429
2430 /[[: :]]/
2431
2432 /[[:...:]]/
2433
2434 /[[:l\ower:]]/
2435
2436 /[[:abc\:]]/
2437
2438 /[abc[:x\]pqr:]]/
2439
2440 /[[:a\dz:]]/
2441
2442 /(^(a|b\g<-1'c))/
2443
2444 /^(?+1)(?<a>x|y){0}z/
2445 xzxx
2446 yzyy
2447 ** Failers
2448 xxz
2449
2450 /(\3)(\1)(a)/
2451 cat
2452
2453 /(\3)(\1)(a)/<JS>
2454 cat
2455
2456 /TA]/
2457 The ACTA] comes
2458
2459 /TA]/<JS>
2460 The ACTA] comes
2461
2462 /(?2)[]a()b](abc)/
2463 abcbabc
2464
2465 /(?2)[^]a()b](abc)/
2466 abcbabc
2467
2468 /(?1)[]a()b](abc)/
2469 abcbabc
2470 ** Failers
2471 abcXabc
2472
2473 /(?1)[^]a()b](abc)/
2474 abcXabc
2475 ** Failers
2476 abcbabc
2477
2478 /(?2)[]a()b](abc)(xyz)/
2479 xyzbabcxyz
2480
2481 /(?&N)[]a(?<N>)](?<M>abc)/
2482 abc<abc
2483
2484 /(?&N)[]a(?<N>)](abc)/
2485 abc<abc
2486
2487 /a[]b/
2488
2489 /a[^]b/
2490
2491 /a[]b/<JS>
2492 ** Failers
2493 ab
2494
2495 /a[]+b/<JS>
2496 ** Failers
2497 ab
2498
2499 /a[]*+b/<JS>
2500 ** Failers
2501 ab
2502
2503 /a[^]b/<JS>
2504 aXb
2505 a\nb
2506 ** Failers
2507 ab
2508
2509 /a[^]+b/<JS>
2510 aXb
2511 a\nX\nXb
2512 ** Failers
2513 ab
2514
2515 /a(?!)+b/
2516
2517 /a(*FAIL)+b/
2518
2519 /(abc|pqr|123){0}[xyz]/SI
2520
2521 /(?(?=.*b)b|^)/CI
2522 adc
2523 abc
2524
2525 /(?(?=b).*b|^d)/I
2526
2527 /(?(?=.*b).*b|^d)/I
2528
2529 /xyz/C
2530 xyz
2531 abcxyz
2532 abcxyz\Y
2533 ** Failers
2534 abc
2535 abc\Y
2536 abcxypqr
2537 abcxypqr\Y
2538
2539 /(*NO_START_OPT)xyz/C
2540 abcxyz
2541
2542 /xyz/CY
2543 abcxyz
2544
2545 /^"((?(?=[a])[^"])|b)*"$/C
2546 "ab"
2547
2548 /^"((?(?=[a])[^"])|b)*"$/
2549 "ab"
2550
2551 /^X(?5)(a)(?|(b)|(q))(c)(d)Y/
2552 XYabcdY
2553
2554 /^X(?&N)(a)(?|(b)|(q))(c)(d)(?<N>Y)/
2555 XYabcdY
2556
2557 /Xa{2,4}b/
2558 X\P
2559 Xa\P
2560 Xaa\P
2561 Xaaa\P
2562 Xaaaa\P
2563
2564 /Xa{2,4}?b/
2565 X\P
2566 Xa\P
2567 Xaa\P
2568 Xaaa\P
2569 Xaaaa\P
2570
2571 /Xa{2,4}+b/
2572 X\P
2573 Xa\P
2574 Xaa\P
2575 Xaaa\P
2576 Xaaaa\P
2577
2578 /X\d{2,4}b/
2579 X\P
2580 X3\P
2581 X33\P
2582 X333\P
2583 X3333\P
2584
2585 /X\d{2,4}?b/
2586 X\P
2587 X3\P
2588 X33\P
2589 X333\P
2590 X3333\P
2591
2592 /X\d{2,4}+b/
2593 X\P
2594 X3\P
2595 X33\P
2596 X333\P
2597 X3333\P
2598
2599 /X\D{2,4}b/
2600 X\P
2601 Xa\P
2602 Xaa\P
2603 Xaaa\P
2604 Xaaaa\P
2605
2606 /X\D{2,4}?b/
2607 X\P
2608 Xa\P
2609 Xaa\P
2610 Xaaa\P
2611 Xaaaa\P
2612
2613 /X\D{2,4}+b/
2614 X\P
2615 Xa\P
2616 Xaa\P
2617 Xaaa\P
2618 Xaaaa\P
2619
2620 /X[abc]{2,4}b/
2621 X\P
2622 Xa\P
2623 Xaa\P
2624 Xaaa\P
2625 Xaaaa\P
2626
2627 /X[abc]{2,4}?b/
2628 X\P
2629 Xa\P
2630 Xaa\P
2631 Xaaa\P
2632 Xaaaa\P
2633
2634 /X[abc]{2,4}+b/
2635 X\P
2636 Xa\P
2637 Xaa\P
2638 Xaaa\P
2639 Xaaaa\P
2640
2641 /X[^a]{2,4}b/
2642 X\P
2643 Xz\P
2644 Xzz\P
2645 Xzzz\P
2646 Xzzzz\P
2647
2648 /X[^a]{2,4}?b/
2649 X\P
2650 Xz\P
2651 Xzz\P
2652 Xzzz\P
2653 Xzzzz\P
2654
2655 /X[^a]{2,4}+b/
2656 X\P
2657 Xz\P
2658 Xzz\P
2659 Xzzz\P
2660 Xzzzz\P
2661
2662 /(Y)X\1{2,4}b/
2663 YX\P
2664 YXY\P
2665 YXYY\P
2666 YXYYY\P
2667 YXYYYY\P
2668
2669 /(Y)X\1{2,4}?b/
2670 YX\P
2671 YXY\P
2672 YXYY\P
2673 YXYYY\P
2674 YXYYYY\P
2675
2676 /(Y)X\1{2,4}+b/
2677 YX\P
2678 YXY\P
2679 YXYY\P
2680 YXYYY\P
2681 YXYYYY\P
2682
2683 /\++\KZ|\d+X|9+Y/
2684 ++++123999\P
2685 ++++123999Y\P
2686 ++++Z1234\P
2687
2688 /Z(*F)/
2689 Z\P
2690 ZA\P
2691
2692 /Z(?!)/
2693 Z\P
2694 ZA\P
2695
2696 /dog(sbody)?/
2697 dogs\P
2698 dogs\P\P
2699
2700 /dog(sbody)??/
2701 dogs\P
2702 dogs\P\P
2703
2704 /dog|dogsbody/
2705 dogs\P
2706 dogs\P\P
2707
2708 /dogsbody|dog/
2709 dogs\P
2710 dogs\P\P
2711
2712 /\bthe cat\b/
2713 the cat\P
2714 the cat\P\P
2715
2716 /abc/
2717 abc\P
2718 abc\P\P
2719
2720 /abc\K123/
2721 xyzabc123pqr
2722 xyzabc12\P
2723 xyzabc12\P\P
2724
2725 /(?<=abc)123/
2726 xyzabc123pqr
2727 xyzabc12\P
2728 xyzabc12\P\P
2729
2730 /\babc\b/
2731 +++abc+++
2732 +++ab\P
2733 +++ab\P\P
2734
2735 /(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ
2736
2737 /(?&word)(?&element)(?(DEFINE)(?<element><[^\d][^>]>[^<])(?<word>\w*+))/BZ
2738
2739 /(ab)(x(y)z(cd(*ACCEPT)))pq/BZ
2740
2741 /abc\K/+
2742 abcdef
2743 abcdef\N\N
2744 xyzabcdef\N\N
2745 ** Failers
2746 abcdef\N
2747 xyzabcdef\N
2748
2749 /^(?:(?=abc)|abc\K)/+
2750 abcdef
2751 abcdef\N\N
2752 ** Failers
2753 abcdef\N
2754
2755 /a?b?/+
2756 xyz
2757 xyzabc
2758 xyzabc\N
2759 xyzabc\N\N
2760 xyz\N\N
2761 ** Failers
2762 xyz\N
2763
2764 /^a?b?/+
2765 xyz
2766 xyzabc
2767 ** Failers
2768 xyzabc\N
2769 xyzabc\N\N
2770 xyz\N\N
2771 xyz\N
2772
2773 /^(?<name>a|b\g<name>c)/
2774 aaaa
2775 bacxxx
2776 bbaccxxx
2777 bbbacccxx
2778
2779 /^(?<name>a|b\g'name'c)/
2780 aaaa
2781 bacxxx
2782 bbaccxxx
2783 bbbacccxx
2784
2785 /^(a|b\g<1>c)/
2786 aaaa
2787 bacxxx
2788 bbaccxxx
2789 bbbacccxx
2790
2791 /^(a|b\g'1'c)/
2792 aaaa
2793 bacxxx
2794 bbaccxxx
2795 bbbacccxx
2796
2797 /^(a|b\g'-1'c)/
2798 aaaa
2799 bacxxx
2800 bbaccxxx
2801 bbbacccxx
2802
2803 /(^(a|b\g<-1>c))/
2804 aaaa
2805 bacxxx
2806 bbaccxxx
2807 bbbacccxx
2808
2809 /(?-i:\g<name>)(?i:(?<name>a))/
2810 XaaX
2811 XAAX
2812
2813 /(?i:\g<name>)(?-i:(?<name>a))/
2814 XaaX
2815 ** Failers
2816 XAAX
2817
2818 /(?-i:\g<+1>)(?i:(a))/
2819 XaaX
2820 XAAX
2821
2822 /(?=(?<regex>(?#simplesyntax)\$(?<name>[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\[(?<index>[a-zA-Z0-9_\x{7f}-\x{ff}]+|\$\g<name>)\]|->\g<name>(\(.*?\))?)?|(?#simple syntax withbraces)\$\{(?:\g<name>(?<indices>\[(?:\g<index>|'(?:\\.|[^'\\])*'|"(?:\g<regex>|\\.|[^"\\])*")\])?|\g<complex>|\$\{\g<complex>\})\}|(?#complexsyntax)\{(?<complex>\$(?<segment>\g<name>(\g<indices>*|\(.*?\))?)(?:->\g<segment>)*|\$\g<complex>|\$\{\g<complex>\})\}))\{/
2823
2824 /(?<n>a|b|c)\g<n>*/
2825 abc
2826 accccbbb
2827
2828 /^X(?7)(a)(?|(b)|(q)(r)(s))(c)(d)(Y)/
2829 XYabcdY
2830
2831 /(?<=b(?1)|zzz)(a)/
2832 xbaax
2833 xzzzax
2834
2835 /(a)(?<=b\1)/
2836
2837 /(a)(?<=b+(?1))/
2838
2839 /(a+)(?<=b(?1))/
2840
2841 /(a(?<=b(?1)))/
2842
2843 /(?<=b(?1))xyz/
2844
2845 /(?<=b(?1))xyz(b+)pqrstuvew/
2846
2847 /(a|bc)\1/SI
2848
2849 /(a|bc)\1{2,3}/SI
2850
2851 /(a|bc)(?1)/SI
2852
2853 /(a|b\1)(a|b\1)/SI
2854
2855 /(a|b\1){2}/SI
2856
2857 /(a|bbbb\1)(a|bbbb\1)/SI
2858
2859 /(a|bbbb\1){2}/SI
2860
2861 /^From +([^ ]+) +[a-zA-Z][a-zA-Z][a-zA-Z] +[a-zA-Z][a-zA-Z][a-zA-Z] +[0-9]?[0-9] +[0-9][0-9]:[0-9][0-9]/SI
2862
2863 /<tr([\w\W\s\d][^<>]{0,})><TD([\w\W\s\d][^<>]{0,})>([\d]{0,}\.)(.*)((<BR>([\w\W\s\d][^<>]{0,})|[\s]{0,}))<\/a><\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><\/TR>/isIS
2864
2865 "(?>.*/)foo"SI
2866
2867 /(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /xSI
2868
2869 /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/iSI
2870
2871 /(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/SI
2872
2873 /<a[\s]+href[\s]*=[\s]* # find <a href=
2874 ([\"\'])? # find single or double quote
2875 (?(1) (.*?)\1 | ([^\s]+)) # if quote found, match up to next matching
2876 # quote, otherwise match up to next space
2877 /isxSI
2878
2879 /^(?!:) # colon disallowed at start
2880 (?: # start of item
2881 (?: [0-9a-f]{1,4} | # 1-4 hex digits or
2882 (?(1)0 | () ) ) # if null previously matched, fail; else null
2883 : # followed by colon
2884 ){1,7} # end item; 1-7 of them required
2885 [0-9a-f]{1,4} $ # final hex number at end of string
2886 (?(1)|.) # check that there was an empty component
2887 /xiIS
2888
2889 /(?|(?<a>A)|(?<a>B))/I
2890 AB\Ca
2891 BA\Ca
2892
2893 /(?|(?<a>A)|(?<b>B))/
2894
2895 /(?:a(?<quote> (?<apostrophe>')|(?<realquote>")) |
2896 b(?<quote> (?<apostrophe>')|(?<realquote>")) )
2897 (?('quote')[a-z]+|[0-9]+)/JIx
2898 a"aaaaa
2899 b"aaaaa
2900 ** Failers
2901 b"11111
2902 a"11111
2903
2904 /^(?|(a)(b)(c)(?<D>d)|(?<D>e)) (?('D')X|Y)/JDZx
2905 abcdX
2906 eX
2907 ** Failers
2908 abcdY
2909 ey
2910
2911 /(?<A>a) (b)(c) (?<A>d (?(R&A)$ | (?4)) )/JDZx
2912 abcdd
2913 ** Failers
2914 abcdde
2915
2916 /abcd*/
2917 xxxxabcd\P
2918 xxxxabcd\P\P
2919
2920 /abcd*/i
2921 xxxxabcd\P
2922 xxxxabcd\P\P
2923 XXXXABCD\P
2924 XXXXABCD\P\P
2925
2926 /abc\d*/
2927 xxxxabc1\P
2928 xxxxabc1\P\P
2929
2930 /(a)bc\1*/
2931 xxxxabca\P
2932 xxxxabca\P\P
2933
2934 /abc[de]*/
2935 xxxxabcde\P
2936 xxxxabcde\P\P
2937
2938 /-- This is not in the Perl-compatible test because Perl seems currently to be
2939 broken and not behaving as specified in that it *does* bumpalong after
2940 hitting (*COMMIT). --/
2941
2942 /(?1)(A(*COMMIT)|B)D/
2943 ABD
2944 XABD
2945 BAD
2946 ABXABD
2947 ** Failers
2948 ABX
2949 BAXBAD
2950
2951 /(\3)(\1)(a)/<JS>
2952 cat
2953
2954 /(\3)(\1)(a)/SI<JS>
2955 cat
2956
2957 /(\3)(\1)(a)/SI
2958 cat
2959
2960 /i(?(DEFINE)(?<s>a))/SI
2961 i
2962
2963 /()i(?(1)a)/SI
2964 ia
2965
2966 /(?i)a(?-i)b|c/BZ
2967 XabX
2968 XAbX
2969 CcC
2970 ** Failers
2971 XABX
2972
2973 /(?i)a(?s)b|c/BZ
2974
2975 /(?i)a(?s-i)b|c/BZ
2976
2977 /^(ab(c\1)d|x){2}$/BZ
2978 xabcxd
2979
2980 /^(?&t)*+(?(DEFINE)(?<t>.))$/BZ
2981
2982 /^(?&t)*(?(DEFINE)(?<t>.))$/BZ
2983
2984 / -- This one is here because Perl gives the match as "b" rather than "ab". I
2985 believe this to be a Perl bug. --/
2986
2987 /(?>a\Kb)z|(ab)/
2988 ab
2989
2990 /(?P<L1>(?P<L2>0|)|(?P>L2)(?P>L1))/
2991
2992 /abc(*MARK:)pqr/
2993
2994 /abc(*:)pqr/
2995
2996 /abc(*FAIL:123)xyz/
2997
2998 /--- This should, and does, fail. In Perl, it does not, which I think is a
2999 bug because replacing the B in the pattern by (B|D) does make it fail. ---/
3000
3001 /A(*COMMIT)B/+K
3002 ACABX
3003
3004 /--- These should be different, but in Perl they are not, which I think
3005 is a bug in Perl. ---/
3006
3007 /A(*THEN)B|A(*THEN)C/K
3008 AC
3009
3010 /A(*PRUNE)B|A(*PRUNE)C/K
3011 AC
3012
3013 /--- Mark names can be duplicated. Perl doesn't give a mark for this one,
3014 though PCRE does. ---/
3015
3016 /^A(*:A)B|^X(*:A)Y/K
3017 ** Failers
3018 XAQQ
3019
3020 /--- COMMIT at the start of a pattern should be the same as an anchor. Perl
3021 optimizations defeat this. So does the PCRE optimization unless we disable it
3022 with \Y. ---/
3023
3024 /(*COMMIT)ABC/
3025 ABCDEFG
3026 ** Failers
3027 DEFGABC\Y
3028
3029 /^(ab (c+(*THEN)cd) | xyz)/x
3030 abcccd
3031
3032 /^(ab (c+(*PRUNE)cd) | xyz)/x
3033 abcccd
3034
3035 /^(ab (c+(*FAIL)cd) | xyz)/x
3036 abcccd
3037
3038 /--- Perl gets some of these wrong ---/
3039
3040 /(?>.(*ACCEPT))*?5/
3041 abcde
3042
3043 /(.(*ACCEPT))*?5/
3044 abcde
3045
3046 /(.(*ACCEPT))5/
3047 abcde
3048
3049 /(.(*ACCEPT))*5/
3050 abcde
3051
3052 /A\NB./BZ
3053 ACBD
3054 *** Failers
3055 A\nB
3056 ACB\n
3057
3058 /A\NB./sBZ
3059 ACBD
3060 ACB\n
3061 *** Failers
3062 A\nB
3063
3064 /A\NB/<crlf>
3065 A\nB
3066 A\rB
3067 ** Failers
3068 A\r\nB
3069
3070 /\R+b/BZ
3071
3072 /\R+\n/BZ
3073
3074 /\R+\d/BZ
3075
3076 /\d*\R/BZ
3077
3078 /\s*\R/BZ
3079 \x20\x0a
3080 \x20\x0d
3081 \x20\x0d\x0a
3082
3083 /\S*\R/BZ
3084 a\x0a
3085
3086 /X\h*\R/BZ
3087 X\x20\x0a
3088
3089 /X\H*\R/BZ
3090 X\x0d\x0a
3091
3092 /X\H+\R/BZ
3093 X\x0d\x0a
3094
3095 /X\H++\R/BZ
3096 X\x0d\x0a
3097
3098 /(?<=abc)def/
3099 abc\P\P
3100
3101 /abc$/
3102 abc
3103 abc\P
3104 abc\P\P
3105
3106 /abc$/m
3107 abc
3108 abc\n
3109 abc\P\P
3110 abc\n\P\P
3111 abc\P
3112 abc\n\P
3113
3114 /abc\z/
3115 abc
3116 abc\P
3117 abc\P\P
3118
3119 /abc\Z/
3120 abc
3121 abc\P
3122 abc\P\P
3123
3124 /abc\b/
3125 abc
3126 abc\P
3127 abc\P\P
3128
3129 /abc\B/
3130 abc
3131 abc\P
3132 abc\P\P
3133
3134 /.+/
3135 abc\>0
3136 abc\>1
3137 abc\>2
3138 abc\>3
3139 abc\>4
3140 abc\>-4
3141
3142 /^\cģ/
3143
3144 /(?P<abn>(?P=abn)xxx)/BZ
3145
3146 /(a\1z)/BZ
3147
3148 /(?P<abn>(?P=abn)(?<badstufxxx)/BZ
3149
3150 /(?P<abn>(?P=axn)xxx)/BZ
3151
3152 /(?P<abn>(?P=axn)xxx)(?<axn>yy)/BZ
3153
3154 /-- These tests are here because Perl gets the first one wrong. --/
3155
3156 /(\R*)(.)/s
3157 \r\n
3158 \r\r\n\n\r
3159 \r\r\n\n\r\n
3160
3161 /(\R)*(.)/s
3162 \r\n
3163 \r\r\n\n\r
3164 \r\r\n\n\r\n
3165
3166 /((?>\r\n|\n|\x0b|\f|\r|\x85)*)(.)/s
3167 \r\n
3168 \r\r\n\n\r
3169 \r\r\n\n\r\n
3170
3171 /-- --/
3172
3173 /^abc$/BZ
3174
3175 /^abc$/BZm
3176
3177 /^(a)*+(\w)/S
3178 aaaaX
3179 ** Failers
3180 aaaa
3181
3182 /^(?:a)*+(\w)/S
3183 aaaaX
3184 ** Failers
3185 aaaa
3186
3187 /(a)++1234/SDZ
3188
3189 /([abc])++1234/SI
3190
3191 /(?<=(abc)+)X/
3192
3193 /(^ab)/I
3194
3195 /(^ab)++/I
3196
3197 /(^ab|^)+/I
3198
3199 /(^ab|^)++/I
3200
3201 /(?:^ab)/I
3202
3203 /(?:^ab)++/I
3204
3205 /(?:^ab|^)+/I
3206
3207 /(?:^ab|^)++/I
3208
3209 /(.*ab)/I
3210
3211 /(.*ab)++/I
3212
3213 /(.*ab|.*)+/I
3214
3215 /(.*ab|.*)++/I
3216
3217 /(?:.*ab)/I
3218
3219 /(?:.*ab)++/I
3220
3221 /(?:.*ab|.*)+/I
3222
3223 /(?:.*ab|.*)++/I
3224
3225 /(?=a)[bcd]/I
3226
3227 /((?=a))[bcd]/I
3228
3229 /((?=a))+[bcd]/I
3230
3231 /((?=a))++[bcd]/I
3232
3233 /(?=a+)[bcd]/iI
3234
3235 /(?=a+?)[bcd]/iI
3236
3237 /(?=a++)[bcd]/iI
3238
3239 /(?=a{3})[bcd]/iI
3240
3241 /(abc)\1+/S
3242
3243 /-- Perl doesn't get these right IMO (the 3rd is PCRE-specific) --/
3244
3245 /(?1)(?:(b(*ACCEPT))){0}/
3246 b
3247
3248 /(?1)(?:(b(*ACCEPT))){0}c/
3249 bc
3250 ** Failers
3251 b
3252
3253 /(?1)(?:((*ACCEPT))){0}c/
3254 c
3255 c\N
3256
3257 /^.*?(?(?=a)a|b(*THEN)c)/
3258 ba
3259
3260 /^.*?(?(?=a)a|bc)/
3261 ba
3262
3263 /^.*?(?(?=a)a(*THEN)b|c)/
3264 ac
3265
3266 /^.*?(?(?=a)a(*THEN)b)c/
3267 ac
3268
3269 /^.*?(a(*THEN)b)c/
3270 aabc
3271
3272 /^.*? (?1) c (?(DEFINE)(a(*THEN)b))/x
3273 aabc
3274
3275 /^.*?(a(*THEN)b|z)c/
3276 aabc
3277
3278 /^.*?(z|a(*THEN)b)c/
3279 aabc
3280
3281 /-- --/
3282
3283 /-- These studied versions are here because they are not Perl-compatible; the
3284 studying means the mark is not seen. --/
3285
3286 /(*MARK:A)(*SKIP:B)(C|X)/KS
3287 C
3288 D
3289
3290 /(*:A)A+(*SKIP:A)(B|Z)/KS
3291 AAAC
3292
3293 /-- --/
3294
3295 "(?=a*(*ACCEPT)b)c"
3296 c
3297 c\N
3298
3299 /(?1)c(?(DEFINE)((*ACCEPT)b))/
3300 c
3301 c\N
3302
3303 /(?>(*ACCEPT)b)c/
3304 c
3305 c\N
3306
3307 /(?:(?>(a)))+a%/++
3308 %aa%
3309
3310 /(a)b|ac/++SS
3311 ac\O3
3312
3313 /(a)(b)x|abc/++
3314 abc\O6
3315
3316 /(a)bc|(a)(b)\2/
3317 \O3abc
3318 \O4abc
3319
3320 /(?(DEFINE)(a(?2)|b)(b(?1)|a))(?:(?1)|(?2))/SI
3321
3322 /(a(?2)|b)(b(?1)|a)(?:(?1)|(?2))/SI
3323
3324 /(a(?2)|b)(b(?1)|a)(?1)(?2)/SI
3325
3326 /(abc)(?1)/SI
3327
3328 /^(?>a)++/
3329 aa\M
3330 aaaaaaaaa\M
3331
3332 /(a)(?1)++/
3333 aa\M
3334 aaaaaaaaa\M
3335
3336 /(?:(foo)|(bar)|(baz))X/SS=
3337 bazfooX
3338 foobazbarX
3339 barfooX
3340 bazX
3341 foobarbazX
3342 bazfooX\O0
3343 bazfooX\O2
3344 bazfooX\O4
3345 bazfooX\O6
3346 bazfooX\O8
3347 bazfooX\O10
3348
3349 /(?=abc){3}abc/BZ
3350
3351 /(?=abc)+abc/BZ
3352
3353 /(?=abc)++abc/BZ
3354
3355 /(?=abc){0}xyz/BZ
3356
3357 /(?=(a))?./BZ
3358
3359 /(?=(a))??./BZ
3360
3361 /^(?=(a)){0}b(?1)/BZ
3362
3363 /(?(DEFINE)(a))?b(?1)/BZ
3364
3365 /^(?=(?1))?[az]([abc])d/BZ
3366
3367 /^(?!a){0}\w+/BZ
3368
3369 /(?<=(abc))?xyz/BZ
3370
3371 /[:a[:abc]b:]/BZ
3372
3373 /((?2))((?1))/SS
3374 abc
3375
3376 /((?(R2)a+|(?1)b))/SS
3377 aaaabcde
3378
3379 /(?(R)a*(?1)|((?R))b)/SS
3380 aaaabcde
3381
3382 /(a+|(?R)b)/
3383
3384 /^(a(*:A)(d|e(*:B))z|aeq)/C
3385 adz
3386 aez
3387 aeqwerty
3388
3389 /.(*F)/
3390 \P\Pabc
3391
3392 /\btype\b\W*?\btext\b\W*?\bjavascript\b/IS
3393
3394 /\btype\b\W*?\btext\b\W*?\bjavascript\b|\burl\b\W*?\bshell:|<input\b.*?\btype\b\W*?\bimage\b|\bonkeyup\b\W*?\=/IS
3395
3396 /a(*SKIP)c|b(*ACCEPT)|/+S!I
3397 a
3398
3399 /a(*SKIP)c|b(*ACCEPT)cd(*ACCEPT)|x/SI
3400 ax
3401
3402 'a*(*ACCEPT)b'+
3403 \N\N
3404 abc\N\N
3405 bbb\N\N
3406
3407 /(*ACCEPT)a/+I
3408 bax
3409
3410 /z(*ACCEPT)a/+I
3411 baxzbx
3412
3413 /a(?:.)*?a/ims
3414 \Mabbbbbbbbbbbbbbbbbbbbba
3415
3416 /a(?:.(*THEN))*?a/ims
3417 \Mabbbbbbbbbbbbbbbbbbbbba
3418
3419 /a(?:.(*THEN:ABC))*?a/ims
3420 \Mabbbbbbbbbbbbbbbbbbbbba
3421
3422 /^(?>a+)(?>(z+))\w/BZ
3423 aaaazzzzb
3424 ** Failers
3425 aazz
3426
3427 /(.)(\1|a(?2))/
3428 bab
3429
3430 /\1|(.)(?R)\1/
3431 cbbbc
3432
3433 /(.)((?(1)c|a)|a(?2))/
3434 baa
3435
3436 /(?P<abn>(?P=abn)xxx)/BZ
3437
3438 /(a\1z)/BZ
3439
3440 /^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/
3441 \Maabbccddee
3442
3443 /^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/
3444 \Maabbccddee
3445
3446 /^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/
3447 \Maabbccddee
3448
3449 /^a\x41z/<JS>
3450 aAz
3451 *** Failers
3452 ax41z
3453
3454 /^a[m\x41]z/<JS>
3455 aAz
3456
3457 /^a\x1z/<JS>
3458 ax1z
3459
3460 /^a\u0041z/<JS>
3461 aAz
3462 *** Failers
3463 au0041z
3464
3465 /^a[m\u0041]z/<JS>
3466 aAz
3467
3468 /^a\u041z/<JS>
3469 au041z
3470 *** Failers
3471 aAz
3472
3473 /^a\U0041z/<JS>
3474 aU0041z
3475 *** Failers
3476 aAz
3477
3478 /(?(?=c)c|d)++Y/BZ
3479
3480 /(?(?=c)c|d)*+Y/BZ
3481
3482 /a[\NB]c/
3483 aNc
3484
3485 /a[B-\Nc]/
3486
3487 /(a)(?2){0,1999}?(b)/
3488
3489 /(a)(?(DEFINE)(b))(?2){0,1999}?(?2)/
3490
3491 /--- This test, with something more complicated than individual letters, causes
3492 different behaviour in Perl. Perhaps it disables some optimization; no tag is
3493 passed back for the failures, whereas in PCRE there is a tag. ---/
3494
3495 /(A|P)(*:A)(B|P) | (X|P)(X|P)(*:B)(Y|P)/xK
3496 AABC
3497 XXYZ
3498 ** Failers
3499 XAQQ
3500 XAQQXZZ
3501 AXQQQ
3502 AXXQQQ
3503
3504 /-- Perl doesn't give marks for these, though it does if the alternatives are
3505 replaced by single letters. --/
3506
3507 /(b|q)(*:m)f|a(*:n)w/K
3508 aw
3509 ** Failers
3510 abc
3511
3512 /(q|b)(*:m)f|a(*:n)w/K
3513 aw
3514 ** Failers
3515 abc
3516
3517 /-- After a partial match, the behaviour is as for a failure. --/
3518
3519 /^a(*:X)bcde/K
3520 abc\P
3521
3522 /-- These are here because Perl doesn't return a mark, except for the first --/
3523
3524 /(?=(*:x))(q|)/K+
3525 abc
3526
3527 /(?=(*:x))((*:y)q|)/K+
3528 abc
3529
3530 /(?=(*:x))(?:(*:y)q|)/K+
3531 abc
3532
3533 /(?=(*:x))(?>(*:y)q|)/K+
3534 abc
3535
3536 /(?=a(*:x))(?!a(*:y)c)/K+
3537 ab
3538
3539 /(?=a(*:x))(?=a(*:y)c|)/K+
3540 ab
3541
3542 /(..)\1/
3543 ab\P
3544 aba\P
3545 abab\P
3546
3547 /(..)\1/i
3548 ab\P
3549 abA\P
3550 aBAb\P
3551
3552 /(..)\1{2,}/
3553 ab\P
3554 aba\P
3555 abab\P
3556 ababa\P
3557 ababab\P
3558 ababab\P\P
3559 abababa\P
3560 abababa\P\P
3561
3562 /(..)\1{2,}/i
3563 ab\P
3564 aBa\P
3565 aBAb\P
3566 AbaBA\P
3567 abABAb\P
3568 aBAbaB\P\P
3569 abABabA\P
3570 abaBABa\P\P
3571
3572 /(..)\1{2,}?x/i
3573 ab\P
3574 abA\P
3575 aBAb\P
3576 abaBA\P
3577 abAbaB\P
3578 abaBabA\P
3579 abAbABaBx\P
3580
3581 /^(..)\1/
3582 aba\P
3583
3584 /^(..)\1{2,3}x/
3585 aba\P
3586 ababa\P
3587 ababa\P\P
3588 abababx
3589 ababababx
3590
3591 /^(..)\1{2,3}?x/
3592 aba\P
3593 ababa\P
3594 ababa\P\P
3595 abababx
3596 ababababx
3597
3598 /^(..)(\1{2,3})ab/
3599 abababab
3600
3601 /^\R/
3602 \r\P
3603 \r\P\P
3604
3605 /^\R{2,3}x/
3606 \r\P
3607 \r\P\P
3608 \r\r\P
3609 \r\r\P\P
3610 \r\r\r\P
3611 \r\r\r\P\P
3612 \r\rx
3613 \r\r\rx
3614
3615 /^\R{2,3}?x/
3616 \r\P
3617 \r\P\P
3618 \r\r\P
3619 \r\r\P\P
3620 \r\r\r\P
3621 \r\r\r\P\P
3622 \r\rx
3623 \r\r\rx
3624
3625 /^\R?x/
3626 \r\P
3627 \r\P\P
3628 x
3629 \rx
3630
3631 /^\R+x/
3632 \r\P
3633 \r\P\P
3634 \r\n\P
3635 \r\n\P\P
3636 \rx
3637
3638 /^a$/<CRLF>
3639 a\r\P
3640 a\r\P\P
3641
3642 /^a$/m<CRLF>
3643 a\r\P
3644 a\r\P\P
3645
3646 /^(a$|a\r)/<CRLF>
3647 a\r\P
3648 a\r\P\P
3649
3650 /^(a$|a\r)/m<CRLF>
3651 a\r\P
3652 a\r\P\P
3653
3654 /./<CRLF>
3655 \r\P
3656 \r\P\P
3657
3658 /.{2,3}/<CRLF>
3659 \r\P
3660 \r\P\P
3661 \r\r\P
3662 \r\r\P\P
3663 \r\r\r\P
3664 \r\r\r\P\P
3665
3666 /.{2,3}?/<CRLF>
3667 \r\P
3668 \r\P\P
3669 \r\r\P
3670 \r\r\P\P
3671 \r\r\r\P
3672 \r\r\r\P\P
3673
3674 "AB(C(D))(E(F))?(?(?=\2)(?=\4))"
3675 ABCDGHI\O03
3676
3677 /-- These are all run as real matches in test 1; here we are just checking the
3678 settings of the anchored and startline bits. --/
3679
3680 /(?>.*?a)(?<=ba)/I
3681
3682 /(?:.*?a)(?<=ba)/I
3683
3684 /.*?a(*PRUNE)b/I
3685
3686 /.*?a(*PRUNE)b/sI
3687
3688 /^a(*PRUNE)b/sI
3689
3690 /.*?a(*SKIP)b/I
3691
3692 /(?>.*?a)b/sI
3693
3694 /(?>.*?a)b/I
3695
3696 /(?>^a)b/sI
3697
3698 /(?>.*?)(?<=(abcd)|(wxyz))/I
3699
3700 /(?>.*)(?<=(abcd)|(wxyz))/I
3701
3702 "(?>.*)foo"I
3703
3704 "(?>.*?)foo"I
3705
3706 /(?>^abc)/mI
3707
3708 /(?>.*abc)/mI
3709
3710 /(?:.*abc)/mI
3711
3712 /-- Check PCRE_STUDY_EXTRA_NEEDED --/
3713
3714 /.?/S-I
3715
3716 /.?/S!I
3717
3718 /(?:(a)+(?C1)bb|aa(?C2)b)/
3719 aab\C+
3720
3721 /(?:(a)++(?C1)bb|aa(?C2)b)/
3722 aab\C+
3723
3724 /(?:(?>(a))(?C1)bb|aa(?C2)b)/
3725 aab\C+
3726
3727 /(?:(?1)(?C1)x|ab(?C2))((a)){0}/
3728 aab\C+
3729
3730 /(?1)(?C1)((a)(?C2)){0}/
3731 aab\C+
3732
3733 /(?:(a)+(?C1)bb|aa(?C2)b)++/
3734 aab\C+
3735 aab\C+\O2
3736
3737 /(ab)x|ab/
3738 ab\O3
3739 ab\O2
3740
3741 /(ab)/
3742 ab\O3
3743 ab\O2
3744
3745 /(?<=123)(*MARK:xx)abc/K
3746 xxxx123a\P\P
3747 xxxx123a\P
3748
3749 /123\Kabc/
3750 xxxx123a\P\P
3751 xxxx123a\P
3752
3753 /^(?(?=a)aa|bb)/C
3754 bb
3755
3756 /(?C1)^(?C2)(?(?C99)(?=(?C3)a(?C4))(?C5)a(?C6)a(?C7)|(?C8)b(?C9)b(?C10))(?C11)/
3757 bb
3758
3759 /-- Perl seems to have a bug with this one --/
3760
3761 /aaaaa(*COMMIT)(*PRUNE)b|a+c/
3762 aaaaaac
3763
3764 /-- Here are some that Perl treats differently because of the way it handles
3765 backtracking verbs. --/
3766
3767 /(?!a(*COMMIT)b)ac|ad/
3768 ac
3769 ad
3770
3771 /^(?!a(*THEN)b|ac)../
3772 ac
3773 ad
3774
3775 /^(?=a(*THEN)b|ac)/
3776 ac
3777
3778 /\A.*?(?:a|b(*THEN)c)/
3779 ba
3780
3781 /\A.*?(?:a|b(*THEN)c)++/
3782 ba
3783
3784 /\A.*?(?:a|b(*THEN)c|d)/
3785 ba
3786
3787 /(?:(a(*MARK:X)a+(*SKIP:X)b)){0}(?:(?1)|aac)/
3788 aac
3789
3790 /\A.*?(a|b(*THEN)c)/
3791 ba
3792
3793 /^(A(*THEN)B|A(*THEN)D)/
3794 AD
3795
3796 /(?!b(*THEN)a)bn|bnn/
3797 bnn
3798
3799 /(?(?=b(*SKIP)a)bn|bnn)/
3800 bnn
3801
3802 /(?=b(*THEN)a|)bn|bnn/
3803 bnn
3804
3805 /-------------------------/
3806
3807 /(*LIMIT_MATCH=12bc)abc/
3808
3809 /(*LIMIT_MATCH=4294967290)abc/
3810
3811 /(*LIMIT_RECURSION=4294967280)abc/I
3812
3813 /(a+)*zz/
3814 aaaaaaaaaaaaaz
3815 aaaaaaaaaaaaaz\q3000
3816
3817 /(a+)*zz/S-
3818 aaaaaaaaaaaaaz\Q10
3819
3820 /(*LIMIT_MATCH=3000)(a+)*zz/I
3821 aaaaaaaaaaaaaz
3822 aaaaaaaaaaaaaz\q60000
3823
3824 /(*LIMIT_MATCH=60000)(*LIMIT_MATCH=3000)(a+)*zz/I
3825 aaaaaaaaaaaaaz
3826
3827 /(*LIMIT_MATCH=60000)(a+)*zz/I
3828 aaaaaaaaaaaaaz
3829 aaaaaaaaaaaaaz\q3000
3830
3831 /(*LIMIT_RECURSION=10)(a+)*zz/IS-
3832 aaaaaaaaaaaaaz
3833 aaaaaaaaaaaaaz\Q1000
3834
3835 /(*LIMIT_RECURSION=10)(*LIMIT_RECURSION=1000)(a+)*zz/IS-
3836 aaaaaaaaaaaaaz
3837
3838 /(*LIMIT_RECURSION=1000)(a+)*zz/IS-
3839 aaaaaaaaaaaaaz
3840 aaaaaaaaaaaaaz\Q10
3841
3842 /-- This test causes a segfault with Perl 5.18.0 --/
3843
3844 /^(?=(a)){0}b(?1)/
3845 backgammon
3846
3847 /(?|(?<n>f)|(?<n>b))/JI
3848
3849 /(?<a>abc)(?<a>z)\k<a>()/JDZS
3850
3851 /a*[bcd]/BZ
3852
3853 /[bcd]*a/BZ
3854
3855 /-- A complete set of tests for auto-possessification of character types --/
3856
3857 /\D+\D \D+\d \D+\S \D+\s \D+\W \D+\w \D+. \D+\C \D+\R \D+\H \D+\h \D+\V \D+\v \D+\X \D+\Z \D+\z \D+$/BZx
3858
3859 /\d+\D \d+\d \d+\S \d+\s \d+\W \d+\w \d+. \d+\C \d+\R \d+\H \d+\h \d+\V \d+\v \d+\X \d+\Z \d+\z \d+$/BZx
3860
3861 /\S+\D \S+\d \S+\S \S+\s \S+\W \S+\w \S+. \S+\C \S+\R \S+\H \S+\h \S+\V \S+\v \S+\X \S+\Z \S+\z \S+$/BZx
3862
3863 /\s+\D \s+\d \s+\S \s+\s \s+\W \s+\w \s+. \s+\C \s+\R \s+\H \s+\h \s+\V \s+\v \s+\X \s+\Z \s+\z \s+$/BZx
3864
3865 /\W+\D \W+\d \W+\S \W+\s \W+\W \W+\w \W+. \W+\C \W+\R \W+\H \W+\h \W+\V \W+\v \W+\X \W+\Z \W+\z \W+$/BZx
3866
3867 /\w+\D \w+\d \w+\S \w+\s \w+\W \w+\w \w+. \w+\C \w+\R \w+\H \w+\h \w+\V \w+\v \w+\X \w+\Z \w+\z \w+$/BZx
3868
3869 /\C+\D \C+\d \C+\S \C+\s \C+\W \C+\w \C+. \C+\C \C+\R \C+\H \C+\h \C+\V \C+\v \C+\X \C+\Z \C+\z \C+$/BZx
3870
3871 /\R+\D \R+\d \R+\S \R+\s \R+\W \R+\w \R+. \R+\C \R+\R \R+\H \R+\h \R+\V \R+\v \R+\X \R+\Z \R+\z \R+$/BZx
3872
3873 /\H+\D \H+\d \H+\S \H+\s \H+\W \H+\w \H+. \H+\C \H+\R \H+\H \H+\h \H+\V \H+\v \H+\X \H+\Z \H+\z \H+$/BZx
3874
3875 /\h+\D \h+\d \h+\S \h+\s \h+\W \h+\w \h+. \h+\C \h+\R \h+\H \h+\h \h+\V \h+\v \h+\X \h+\Z \h+\z \h+$/BZx
3876
3877 /\V+\D \V+\d \V+\S \V+\s \V+\W \V+\w \V+. \V+\C \V+\R \V+\H \V+\h \V+\V \V+\v \V+\X \V+\Z \V+\z \V+$/BZx
3878
3879 /\v+\D \v+\d \v+\S \v+\s \v+\W \v+\w \v+. \v+\C \v+\R \v+\H \v+\h \v+\V \v+\v \v+\X \v+\Z \v+\z \v+$/BZx
3880
3881 /\X+\D \X+\d \X+\S \X+\s \X+\W \X+\w \X+. \X+\C \X+\R \X+\H \X+\h \X+\V \X+\v \X+\X \X+\Z \X+\z \X+$/BZx
3882
3883 / a+\D a+\d a+\S a+\s a+\W a+\w a+. a+\C a+\R a+\H a+\h a+\V a+\v a+\X a+\Z a+\z a+$/BZx
3884
3885 /\n+\D \n+\d \n+\S \n+\s \n+\W \n+\w \n+. \n+\C \n+\R \n+\H \n+\h \n+\V \n+\v \n+\X \n+\Z \n+\z \n+$/BZx
3886
3887 / .+\D .+\d .+\S .+\s .+\W .+\w .+. .+\C .+\R .+\H .+\h .+\V .+\v .+\X .+\Z .+\z .+$/BZx
3888
3889 / .+\D .+\d .+\S .+\s .+\W .+\w .+. .+\C .+\R .+\H .+\h .+\V .+\v .+\X .+\Z .+\z .+$/BZxs
3890
3891 /\D+$ \d+$ \S+$ \s+$ \W+$ \w+$ \C+$ \R+$ \H+$ \h+$ \V+$ \v+$ \X+$ a+$ \n+$ .+$ .+$/BZxm
3892
3893 /-- End of special auto-possessive tests --/
3894
3895 /^A\o{1239}B/
3896 A\123B
3897
3898 /^A\oB/
3899
3900 /^A\x{zz}B/
3901
3902 /^A\x{12Z/
3903
3904 /^A\x{/
3905
3906 /-- End of testinput2 --/

Properties

Name Value
svn:keywords "Author Date Id Revision Url"

  ViewVC Help
Powered by ViewVC 1.1.5