]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/xpressive/test/regress.txt
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / xpressive / test / regress.txt
1 ; Copyright 2004 Eric Niebler.
2 ;
3 ; Distributed under the Boost Software License, Version 1.0.
4 ; (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6 [test1]
7 str=foobarboo
8 pat=foo
9 flg=
10 br0=foo
11 [end]
12
13 [test2]
14 str=foobarboo
15 pat=bar
16 flg=
17 br0=bar
18 [end]
19
20 [test3]
21 str=foobarboo
22 pat=bat
23 flg=
24 [end]
25
26 [test4]
27 str=foobarboo
28 pat=b.*ar
29 flg=
30 br0=bar
31 [end]
32
33 [test5]
34 str=foobarboo
35 pat=b.*r
36 flg=
37 br0=bar
38 [end]
39
40 [test6]
41 str=foobarboo
42 pat=b.*b
43 flg=
44 br0=barb
45 [end]
46
47 [test7]
48 str=foobarboo
49 pat=b.*o
50 flg=
51 br0=barboo
52 [end]
53
54 [test8]
55 str=foobarboo
56 pat=b.*oo
57 flg=
58 br0=barboo
59 [end]
60
61 [test9]
62 str=foobarboo
63 pat=b.+ar
64 flg=
65 [end]
66
67 [test10]
68 str=foobarboo
69 pat=b.+r
70 flg=
71 br0=bar
72 [end]
73
74 [test11]
75 str=foobarboo
76 pat=b.+b
77 flg=
78 br0=barb
79 [end]
80
81 [test12]
82 str=foobarboo
83 pat=b.+o
84 flg=
85 br0=barboo
86 [end]
87
88 [test13]
89 str=foobarboo
90 pat=b.+oo
91 flg=
92 br0=barboo
93 [end]
94
95 [test14]
96 str=foobarboo
97 pat=^foo
98 flg=
99 br0=foo
100 [end]
101
102 [test15]
103 str=foobarboo
104 pat=^b.*ar
105 flg=
106 [end]
107
108 [test16]
109 str=foobarboo
110 pat=b.+ar$
111 flg=
112 [end]
113
114 [test17]
115 str=foobarboo
116 pat=b.+o$
117 flg=
118 br0=barboo
119 [end]
120
121 [test18]
122 str=foobarboo
123 pat=b.+oo$
124 flg=
125 br0=barboo
126 [end]
127
128 [test19]
129 str=+1234.56789F
130 pat=^([-+]?[0-9]+(\.[0-9]*)?)([CF])$
131 flg=
132 br0=+1234.56789F
133 br1=+1234.56789
134 br2=.56789
135 br3=F
136 [end]
137
138 [test20]
139 str=+1234.56789
140 pat=(\+|-)?([0-9]+\.?[0-9]*|\.[0-9]+)([eE](\+|-)?[0-9]+)?
141 flg=
142 br0=+1234.56789
143 br1=+
144 br2=1234.56789
145 br3=
146 br4=
147 [end]
148
149 [test21]
150 str=-1234.56789
151 pat=(\+|-)?([0-9]+\.?[0-9]*|\.[0-9]+)([eE](\+|-)?[0-9]+)?
152 flg=
153 br0=-1234.56789
154 br1=-
155 br2=1234.56789
156 br3=
157 br4=
158 [end]
159
160 [test22]
161 str=-1234.56789e-123123123
162 pat=(\+|-)?([0-9]+\.?[0-9]*|\.[0-9]+)([eE](\+|-)?[0-9]+)?
163 flg=
164 br0=-1234.56789e-123123123
165 br1=-
166 br2=1234.56789
167 br3=e-123123123
168 br4=-
169 [end]
170
171 [test23]
172 str=-.1234.56789
173 pat=^(\+|-)?([0-9]+\.?[0-9]*|\.[0-9]+)([eE](\+|-)?[0-9]+)?$
174 flg=
175 [end]
176
177 [test24]
178 str=-1234.56789e-12312e123
179 pat=^(\+|-)?([0-9]+\.?[0-9]*|\.[0-9]+)([eE](\+|-)?[0-9]+)?$
180 flg=
181 [end]
182
183 [test25]
184 str=aaaaaaaaac
185 pat=a*a*a*a*a*b
186 flg=
187 [end]
188
189 [test26]
190 str=ThIs iS a TeSt
191 pat=[a-zA-Z]*
192 flg=
193 br0=ThIs
194 [end]
195
196 [test27]
197 str=a^b
198 pat=a^b
199 flg=
200 [end]
201
202 [test28]
203 str=a^b
204 pat=a\^b
205 flg=
206 br0=a^b
207 [end]
208
209 [test29]
210 str=a^b
211 pat=a[^ ]b
212 flg=
213 br0=a^b
214 [end]
215
216 [test30]
217 str=a^b
218 pat=a[^^]b
219 flg=
220 [end]
221
222 [test31]
223 str=a^b
224 pat=a[^\^]b
225 flg=
226 [end]
227
228 [test31.1]
229 str=a^b
230 pat=a[\^]b
231 flg=
232 br0=a^b
233 [end]
234
235 [test32]
236 str=foobazFOObar
237 pat=foo(?=bar)
238 flg=i
239 br0=FOO
240 [end]
241
242 [test33]
243 str=foobarFOObaz
244 pat=foo(?!bar)
245 flg=i
246 br0=FOO
247 [end]
248
249 [test34]
250 str=foobarFOO
251 pat=foo(?!bar)
252 flg=i
253 br0=FOO
254 [end]
255
256 [test35]
257 str=foobarFOObarfoo
258 pat=((?>(foo))bar)+
259 flg=i
260 br0=foobarFOObar
261 br1=FOObar
262 br2=FOO
263 [end]
264
265 [test36]
266 str=foobar
267 pat=bar|(foo)
268 flg=g
269 br0=foo
270 br1=foo
271 br2=bar
272 br3=
273 [end]
274
275 ; These results seem odd to me, but
276 ; it comforms with perl
277
278 [test37]
279 str=foobar
280 pat=(bar|(foo))+
281 flg=
282 br0=foobar
283 br1=bar
284 br2=foo
285 [end]
286
287 [test38]
288 str=foobar
289 pat=((bar)|foo)+
290 flg=
291 br0=foobar
292 br1=bar
293 br2=bar
294 [end]
295
296 [test39]
297 str=foobar
298 pat=(foo|(bar))+
299 flg=
300 br0=foobar
301 br1=bar
302 br2=bar
303 [end]
304
305 ; These results seem odd to me, but
306 ; it comforms with perl
307
308 [test40]
309 str=foobar
310 pat=((foo)|bar)+
311 flg=
312 br0=foobar
313 br1=bar
314 br2=foo
315 [end]
316
317 [test41]
318 str=foobarFOObarfoo
319 pat=((?i)FOO)(.*?)\1
320 flg=
321 br0=foobarFOObarfoo
322 br1=foo
323 br2=barFOObar
324 [end]
325
326 [test42]
327 str=foobarFOObarfoo
328 pat=((?i)FOO)(.*?)(?i:\1)
329 flg=
330 br0=foobarFOO
331 br1=foo
332 br2=bar
333 [end]
334
335 ; perl allows this, and it is pretty sick.
336 ; But anything perl can do, I can do, too.[end]
337
338 [test42.1]
339 str=fooFOOOFOOOOObar
340 pat=(foo|(?i:\1O))+
341 flg=
342 br0=fooFOOOFOOOO
343 br1=FOOOO
344 [end]
345
346 [test43]
347 str=zoo
348 pat=^[A-Za-m]
349 flg=
350 [end]
351
352 [test44]
353 str=Here is a URL: http://www.cnn.com. OK?
354 pat=(https?:/|www\.)[\w\./,?@#%!_=~&-]+\w
355 flg=
356 br0=http://www.cnn.com
357 br1=http:/
358 [end]
359
360 [test45]
361 str=fooooooooo
362 pat=fo{2,5}
363 flg=
364 br0=fooooo
365 [end]
366
367 [test46]
368 str=fooooooooo
369 pat=fo{2,5}?
370 flg=
371 br0=foo
372 [end]
373
374 [test45.1]
375 str=fooooooooo
376 pat=fo{2,5}o
377 flg=
378 br0=foooooo
379 [end]
380
381 [test46.1]
382 str=fooooooooo
383 pat=fo{2,5}?o
384 flg=
385 br0=fooo
386 [end]
387
388 [test47]
389 str={match this}
390 pat=^{.*}$
391 flg=
392 br0={match this}
393 [end]
394
395 [test48]
396 str=+-+-
397 pat=[+-]+
398 flg=
399 br0=+-+-
400 [end]
401
402 [test49]
403 str=+-+-
404 pat=[-+]+
405 flg=
406 br0=+-+-
407 [end]
408
409 [test50]
410 str=\\05g-9e
411 pat=[\d-g]+
412 flg=
413 br0=05g-9
414 [end]
415
416 [test51]
417 str=\\05g-9e
418 pat=[\d-\g]+
419 flg=
420 br0=05g-9
421 [end]
422
423 [test52]
424 str=\\05g-9e
425 pat=[g-\d]+
426 flg=
427 br0=05g-9
428 [end]
429
430 [test53]
431 str=\\05g-9e
432 pat=[\g-\d]+
433 flg=
434 br0=05g-9
435 [end]
436
437 [test54]
438 str=aBcdefg\\
439 pat=[a-\g]+
440 flg=i
441 br0=aBcdefg
442 [end]
443
444 [test55]
445 str=ab/.-ba
446 pat=[--/]+
447 flg=
448 br0=/.-
449 [end]
450
451 [test56]
452 str=ab+,-ba
453 pat=[+--]+
454 flg=
455 br0=+,-
456 [end]
457
458 [test56.1]
459 str=aaabbbb----
460 pat=[b-b]+
461 flg=
462 br0=bbbb
463 [end]
464
465 [test57]
466 str=foobarFOO5
467 pat=(foo).*\15
468 flg=i
469 [end]
470
471 [test58]
472 str=Her number is 804-867-5309.
473 pat=(?:\d{3}-){2}\d{4}
474 flg=
475 br0=804-867-5309
476 [end]
477
478 [test59]
479 str=foo
480 pat=fo+
481 flg=
482 br0=foo
483 [end]
484
485 ; backtrack a group[end]
486
487 [test60]
488 str=fooFOObar
489 pat=(foo)+foobar
490 flg=i
491 br0=fooFOObar
492 br1=foo
493 [end]
494
495 ; nested, matched parens [end]
496
497 [test61]
498 str=this is sublist(now(is(the(time),for(all),good(men))to(come)))ok?
499 pat=\bsublist\((?>[^()]*)(?>(?:\((?>[^()]*)(?>(?:\((?>[^()]*)(?>(?:\((?>[^()]*)(?>(?:\((?>[^()]*)\)[^()]*)*)\)[^()]*)*)\)[^()]*)*)\)[^()]*)*)\)
500 flg=
501 br0=sublist(now(is(the(time),for(all),good(men))to(come)))
502 [end]
503
504 ; nested, matched parens [end]
505
506 [test62]
507 str=this is sublist(now(is(the(time),for(all),good(men))to(come))ok?
508 pat=\bsublist\((?>[^()]*)(?>(?:\((?>[^()]*)(?>(?:\((?>[^()]*)(?>(?:\((?>[^()]*)(?>(?:\((?>[^()]*)\)[^()]*)*)\)[^()]*)*)\)[^()]*)*)\)[^()]*)*)\)
509 flg=
510 [end]
511
512 [test63]
513 str=foobar
514 pat=^baz|bar
515 flg=
516 br0=bar
517 [end]
518
519 [test64]
520 str=Now <foo>is</foo> the time for all <BOLD>good</bald> men</bold> to come to the aid of their country.
521 pat=<(.*?)>(.*?)</(\1)>
522 flg=ig
523 sub={$1}$2{/$3}
524 res=Now {foo}is{/foo} the time for all {BOLD}good</bald> men{/bold} to come to the aid of their country.
525 br0=<foo>is</foo>
526 br1=foo
527 br2=is
528 br3=foo
529 br4=<BOLD>good</bald> men</bold>
530 br5=BOLD
531 br6=good</bald> men
532 br7=bold
533 [end]
534
535 [test64.sed]
536 str=Now <foo>is</foo> the time for all <BOLD>good</bald> men</bold> to come to the aid of their country.
537 pat=<(.*?)>(.*?)</(\1)>
538 flg=igd
539 sub={\1}\2{/\3}
540 res=Now {foo}is{/foo} the time for all {BOLD}good</bald> men{/bold} to come to the aid of their country.
541 br0=<foo>is</foo>
542 br1=foo
543 br2=is
544 br3=foo
545 br4=<BOLD>good</bald> men</bold>
546 br5=BOLD
547 br6=good</bald> men
548 br7=bold
549 [end]
550
551 [test68]
552 str=Now is the time for all good men to come to the aid of their country.
553 pat=o
554 flg=g
555 sub=O
556 res=NOw is the time fOr all gOOd men tO cOme tO the aid Of their cOuntry.
557 br0=o
558 br1=o
559 br2=o
560 br3=o
561 br4=o
562 br5=o
563 br6=o
564 br7=o
565 br8=o
566 [end]
567
568 [test69]
569 str=FooBarfoobar
570 pat=.*foo
571 flg=i
572 br0=FooBarfoo
573 [end]
574
575 [test70]
576 str=FooBarfoobar
577 pat=.*boo
578 flg=i
579 [end]
580
581 [test71]
582 str=FooBarfoobar
583 pat=.*boo|bar
584 flg=i
585 br0=Bar
586 [end]
587
588 [test72]
589 str=FooBarfoobar
590 pat=bar
591 flg=i
592 sub=($`$&)
593 res=Foo(FooBar)foobar
594 br0=Bar
595 [end]
596
597 [test72.perl]
598 str=FooBarfoobar
599 pat=bar
600 flg=ip
601 sub=($`$&)
602 res=Foo(FooBar)foobar
603 br0=Bar
604 [end]
605
606 [test73]
607 str=FooBarfoobar
608 pat=bar
609 flg=gi
610 sub=($`$&)
611 res=Foo(FooBar)foo(FooBarfoobar)
612 br0=Bar
613 br1=bar
614 [end]
615
616 [test73.perl]
617 str=FooBarfoobar
618 pat=bar
619 flg=gip
620 sub=($`$&)
621 res=Foo(FooBar)foo(FooBarfoobar)
622 br0=Bar
623 br1=bar
624 [end]
625
626 [test74]
627 str=FooBarfoobar
628 pat=bar
629 flg=gi
630 sub=($'$&)
631 res=Foo(foobarBar)foo(bar)
632 br0=Bar
633 br1=bar
634 [end]
635
636 [test74.perl]
637 str=FooBarfoobar
638 pat=bar
639 flg=gip
640 sub=($'$&)
641 res=Foo(foobarBar)foo(bar)
642 br0=Bar
643 br1=bar
644 [end]
645
646 [test75]
647 str=fooooo
648 pat=fo{1,}
649 flg=
650 br0=fooooo
651 [end]
652
653 [test76.perl]
654 str=fOO bAr BaZ
655 pat=\w+
656 flg=gp
657 sub=\L\u$&
658 res=Foo Bar Baz
659 br0=fOO
660 br1=bAr
661 br2=BaZ
662 [end]
663
664 [test76.all]
665 str=fOO bAr BaZ
666 pat=\w+
667 flg=ga
668 sub=\L\u$&
669 res=Foo Bar Baz
670 br0=fOO
671 br1=bAr
672 br2=BaZ
673 [end]
674
675 [test77.perl]
676 str=fOO bAr BaZ
677 pat=\w+
678 flg=gp
679 sub=a\LA\Ua\Ea
680 res=aaAa aaAa aaAa
681 br0=fOO
682 br1=bAr
683 br2=BaZ
684 [end]
685
686 [test77.all]
687 str=fOO bAr BaZ
688 pat=\w+
689 flg=ga
690 sub=a\LA\Ua\Ea
691 res=aaAa aaAa aaAa
692 br0=fOO
693 br1=bAr
694 br2=BaZ
695 [end]
696
697 [test78]
698 str=This (has) parens
699 pat=This (\Q(has)\E) (parens)
700 flg=
701 br0=This (has) parens
702 br1=(has)
703 br2=parens
704 [end]
705
706 [test79]
707 str=This (has) parens
708 pat=This \Q(has) parens\E
709 flg=
710 br0=This (has) parens
711 [end]
712
713 [test80]
714 str=This (has) parens
715 pat=This \Q(has) parens
716 flg=
717 br0=This (has) parens
718 [end]
719
720 ;[test81]
721 ;str=THAT IS UPPERCASE is
722 ;pat=IS
723 ;flg=ig
724 ;sub=\Uu\Ql$&\E$&n't
725 ;res=THAT UL$&ISn't UPPERCASE UL$&isn't
726 ;br0=is
727 ;[end]
728
729 [test82]
730 str=abba1234abba
731 pat=\d+
732 flg=
733 br0=1234
734 [end]
735
736 [test83]
737 str=1234abba1234
738 pat=\D+
739 flg=
740 br0=abba
741 [end]
742
743 [test84]
744 str=abba1234abba
745 pat=[\d]+
746 flg=
747 br0=1234
748 [end]
749
750 [test85]
751 str=1234abba1234
752 pat=[\D]+
753 flg=
754 br0=abba
755 [end]
756
757 [test86]
758 str=abba1234abba
759 pat=[^\D]+
760 flg=
761 br0=1234
762 [end]
763
764 [test87]
765 str=1234abba1234
766 pat=[^\d]+
767 flg=
768 br0=abba
769 [end]
770
771 [test88]
772 str=1234abba1234
773 pat=[\W\D]+
774 flg=
775 br0=abba
776 [end]
777
778 [test89]
779 str=1234(.;)abba
780 pat=[^\w\d]+
781 flg=
782 br0=(.;)
783 [end]
784
785 [test90]
786 str=(boo[bar]baz)
787 pat=(\(()|\[()).*?(\)\2|\]\3)
788 flg=
789 br0=(boo[bar]baz)
790 br1=(
791 br2=
792 br3=
793 br4=)
794 [end]
795
796 [test91]
797 str=[boo(bar)baz]
798 pat=(\(()|\[()).*?(\)\2|\]\3)
799 flg=
800 br0=[boo(bar)baz]
801 br1=[
802 br2=
803 br3=
804 br4=]
805 [end]
806
807 [test91]
808 str=[boo[bar]baz]
809 pat=(\(()|\[()).*?(\)\2|\]\3)
810 flg=
811 br0=[boo[bar]
812 br1=[
813 br2=
814 br3=
815 br4=]
816 [end]
817
818 [test92]
819 str=foobarfoo
820 pat=(?<=foo)bar
821 flg=
822 br0=bar
823 [end]
824
825 [test93]
826 str=foobarfoo
827 pat=(?<=(f.o))bar
828 flg=
829 br0=bar
830 br1=foo
831 [end]
832
833 [test94]
834 str=foOoo
835 pat=(?<=(fo))o
836 flg=i
837 br0=O
838 br1=fo
839 [end]
840
841 [test95]
842 str=fOooo
843 pat=(?<!(fo))o
844 flg=i
845 br0=O
846 br1=
847 [end]
848
849 [test96]
850 str=12foo12
851 pat=[[:alpha:]]+
852 flg=
853 br0=foo
854 [end]
855
856 [test97]
857 str=;12foo12;
858 pat=[[:alpha:][:digit:]]+
859 flg=
860 br0=12foo12
861 [end]
862
863 [test98]
864 str=aaaa
865 pat=(?<=())a
866 flg=
867 br0=a
868 br1=
869 [end]
870
871 [test99]
872 str=ABCabc123foo
873 pat=(?<=(abc\d{3}))foo
874 flg=
875 br0=foo
876 br1=abc123
877 [end]
878
879 ;[test100]
880 ;str=aaAAa
881 ;pat=aa
882 ;flg=gi
883 ;br0=AA
884 ;[end]
885
886 ;[test101]
887 ;str=aaAAaA
888 ;pat=aa
889 ;flg=gi
890 ;br0=aA
891 ;[end]
892
893 ;[test102]
894 ;str=foobarFOO
895 ;pat=foo
896 ;flg=ir
897 ;br0=FOO
898 ;[end]
899
900 [test103]
901 str=a\nxb\n
902 pat=(?!^)x
903 flg=m
904 [end]
905
906 [test104]
907 str=a\nxb\n
908 pat=(?!^)x
909 flg=
910 br0=x
911 [end]
912
913 [test105]
914 str=a\nxb\n
915 pat=(?!\A)x
916 flg=m
917 br0=x
918 [end]
919
920 [test106]
921 str=(this)
922 pat=^(?:\(()|())\w+(?:\)\1|\2)$
923 flg=
924 br0=(this)
925 br1=
926 br2=
927 [end]
928
929 [test107]
930 str=this
931 pat=^(?:\(()|())\w+(?:\)\1|\2)$
932 flg=
933 br0=this
934 br1=
935 br2=
936 [end]
937
938 [test108]
939 str=this)
940 pat=^(?:\(()|())\w+(?:\)\1|\2)$
941 flg=
942 [end]
943
944 [test109]
945 str=(this
946 pat=^(?:\(()|())\w+(?:\)\1|\2)$
947 flg=
948 [end]
949
950 [test110]
951 str=abba123abba
952 pat=[[:^alpha:]]+
953 flg=
954 br0=123
955 [end]
956
957 [test111]
958 str=abba123abba
959 pat=[[:^alpha:][:alpha:]]+
960 flg=
961 br0=abba123abba
962 [end]
963
964 [test112]
965 str=123abba123
966 pat=[^[:^alpha:]]+
967 flg=
968 br0=abba
969 [end]
970
971 ;[test113]
972 ;str=123abba123
973 ;pat=[[:alpha:]\y]+
974 ;flg=
975 ;br0=123abba123
976 ;[end]
977
978 [test114]
979 str=abba123abba
980 pat=[^[:^alnum:][:^digit:]]+
981 flg=
982 br0=123
983 [end]
984
985 [test115]
986 str=aaaaA
987 pat=^(a\1?){4}$
988 flg=i
989 br0=aaaaA
990 br1=A
991 [end]
992
993 [test116]
994 str=aaaaAa
995 pat=^(a\1?){4}$
996 flg=i
997 br0=aaaaAa
998 br1=Aa
999 [end]
1000
1001 ; test for possible infinite recursion
1002
1003 [test117]
1004 str=ab
1005 pat=(a|(?=b)(?R))+
1006 flg=
1007 br0=a
1008 br1=
1009 [end]
1010
1011 [test118]
1012 str=abba
1013 pat=(?R)
1014 flg=
1015 br0=
1016 [end]
1017
1018 [test119]
1019 str=nothere(HE(hehe(a(b(c)))nothere
1020 pat=\(((?>[^()]+)|(?R))*\)
1021 flg=
1022 br0=(a(b(c)))
1023 br1=(b(c))
1024 [end]
1025
1026 [test120]
1027 str=1(abcd)(x(y)z)pqr
1028 pat=\(((?>[^()]+)|(?R))*\)
1029 flg=ga
1030 br0=(abcd)
1031 br1=abcd
1032 br2=(x(y)z)
1033 br3=z
1034 [end]
1035
1036 [test121]
1037 str=()
1038 pat=\((?:(?>[^()]+)|(?R))?\)
1039 flg=
1040 br0=()
1041 [end]
1042
1043 [test122]
1044 str=12(abcde(fsh)xyz(foo(bar))lmno)89
1045 pat=\((?:(?>[^()]+)|(?R))?\)
1046 flg=
1047 br0=(fsh)
1048 [end]
1049
1050 [test123]
1051 str=(ab(xy)cd)
1052 pat=\((((?>[^()]+)|(?R))*)\)
1053 flg=
1054 br0=(ab(xy)cd)
1055 br1=ab(xy)cd
1056 br2=cd
1057 [end]
1058
1059 [test124]
1060 str=(ab(xy)cd)
1061 pat=\((123)?(((?>[^()]+)|(?R))*)\)
1062 flg=
1063 br0=(ab(xy)cd)
1064 br1=
1065 br2=ab(xy)cd
1066 br3=cd
1067 [end]
1068
1069 [test125]
1070 str=(123ab(xy)cd)
1071 pat=\((123)?(((?>[^()]+)|(?R))*)\)
1072 flg=
1073 br0=(123ab(xy)cd)
1074 br1=123
1075 br2=ab(xy)cd
1076 br3=cd
1077 [end]
1078
1079 [test126]
1080 str=(abcd(xyz<p>qrs)123)
1081 pat=\((((?>[^()<>]+)|((?>[^()]+))|(?R))*)\)
1082 flg=
1083 br0=(abcd(xyz<p>qrs)123)
1084 br1=abcd(xyz<p>qrs)123
1085 br2=123
1086 ;br3=<p>qrs
1087 br3=
1088 [end]
1089
1090 [test127]
1091 str=foobar
1092 pat=foo(?#This is a comment[)bar
1093 flg=
1094 br0=foobar
1095 [end]
1096
1097 [test128]
1098 str=foobar
1099 pat=^ f oo b ar $
1100 flg=x
1101 br0=foobar
1102 [end]
1103
1104 [test129]
1105 str=foobar
1106 pat=^ f o *
1107 flg=x
1108 br0=foo
1109 [end]
1110
1111 [test129.1]
1112 str=foobar
1113 pat=^ f \157 *
1114 flg=x
1115 br0=foo
1116 [end]
1117
1118 [test130]
1119 str=foo bar
1120 pat=^ f oo\ b ar $
1121 flg=x
1122 br0=foo bar
1123 [end]
1124
1125 [test131]
1126 str=foo bar
1127 pat=^ f oo [ ] b ar $
1128 flg=x
1129 br0=foo bar
1130 [end]
1131
1132 [test132]
1133 str=foo bar
1134 pat=^ ( ? : f oo [ ] b ar ) $ # This is a comment
1135 flg=x
1136 br0=foo bar
1137 [end]
1138
1139 [test133]
1140 str=foo bar
1141 pat=^ f oo [ ] b ar # This is a comment
1142 flg=x
1143 br0=foo bar
1144 [end]
1145
1146 [test134]
1147 str=foo bar#Thisisnotacomment
1148 pat=^ f oo [ ] b ar \# This is not a comment
1149 flg=x
1150 br0=foo bar#Thisisnotacomment
1151 [end]
1152
1153 [test135]
1154 str=f oo b ar
1155 pat=^f o(?x) o (?-x) b ar
1156 flg=
1157 br0=f oo b ar
1158 [end]
1159
1160 ;[test136]
1161 ;str=foofoo
1162 ;pat=(?:foo)\1
1163 ;flg=
1164 ;[end]
1165
1166 [test137]
1167 str=a--
1168 pat=^(a?)*$
1169 flg=
1170 [end]
1171
1172 [test138]
1173 str=a--
1174 pat=^(a?)*?$
1175 flg=
1176 [end]
1177
1178 [test139]
1179 str=bc
1180 pat=^(b?){2}bc$
1181 flg=
1182 br0=bc
1183 br1=
1184 [end]
1185
1186 [test140]
1187 str=bbc
1188 pat=^(b?){2}bc$
1189 flg=
1190 br0=bbc
1191 br1=
1192 [end]
1193
1194 [test141]
1195 str=bbbc
1196 pat=^(b?){2}bc$
1197 flg=
1198 br0=bbbc
1199 br1=b
1200 [end]
1201
1202 [test142]
1203 str=bbbbc
1204 pat=^(b?){2}bc$
1205 flg=
1206 [end]
1207
1208 [test143]
1209 str=bbbbc
1210 pat=^(b?)*d$
1211 flg=
1212 [end]
1213
1214 [test144]
1215 str=bc
1216 pat=^(b?){2}?bc$
1217 flg=
1218 br0=bc
1219 br1=
1220 [end]
1221
1222 [test145]
1223 str=bbc
1224 pat=^(b?){2}?bc$
1225 flg=
1226 br0=bbc
1227 br1=
1228 [end]
1229
1230 [test146]
1231 str=bbbc
1232 pat=^(b?){2}?bc$
1233 flg=
1234 br0=bbbc
1235 br1=b
1236 [end]
1237
1238 [test147]
1239 str=bbbbc
1240 pat=^(b?){2}?bc$
1241 flg=
1242 [end]
1243
1244 [test148]
1245 str=bbbbc
1246 pat=^(b?)*?d$
1247 flg=
1248 [end]
1249
1250 [test149]
1251 str=bc
1252 pat=^(b??){2}bc$
1253 flg=
1254 br0=bc
1255 br1=
1256 [end]
1257
1258 [test150]
1259 str=bbc
1260 pat=^(b??){2}bc$
1261 flg=
1262 br0=bbc
1263 br1=b
1264 [end]
1265
1266 [test151]
1267 str=bbbc
1268 pat=^(b??){2}bc$
1269 flg=
1270 br0=bbbc
1271 br1=b
1272 [end]
1273
1274 [test152]
1275 str=bbbbc
1276 pat=^(b??){2}bc$
1277 flg=
1278 [end]
1279
1280 [test153]
1281 str=bbbbc
1282 pat=^(b??)*d$
1283 flg=
1284 [end]
1285
1286 [test154]
1287 str=bc
1288 pat=^(b??){2}?bc$
1289 flg=
1290 br0=bc
1291 br1=
1292 [end]
1293
1294 [test155]
1295 str=bbc
1296 pat=^(b??){2}?bc$
1297 flg=
1298 br0=bbc
1299 br1=b
1300 [end]
1301
1302 [test156]
1303 str=bbbc
1304 pat=^(b??){2}?bc$
1305 flg=
1306 br0=bbbc
1307 br1=b
1308 [end]
1309
1310 [test157]
1311 str=bbbbc
1312 pat=^(b??){2}?bc$
1313 flg=
1314 [end]
1315
1316 [test158]
1317 str=bbbbc
1318 pat=^(b??)*?d$
1319 flg=
1320 [end]
1321
1322 [test159]
1323 str=bbc
1324 pat=^(|||b)*bc$
1325 flg=
1326 br0=bbc
1327 br1=
1328 [end]
1329
1330 [test160]
1331 str=bbc
1332 pat=^(|||b)*?bc$
1333 flg=
1334 br0=bbc
1335 br1=b
1336 [end]
1337
1338 [test161]
1339 str=foo
1340 pat=\w??
1341 sub=<$&>
1342 flg=g
1343 res=<><f><><o><><o><>
1344 br0=
1345 br1=f
1346 br2=
1347 br3=o
1348 br4=
1349 br5=o
1350 br6=
1351 [end]
1352
1353 [test161.sed]
1354 str=foo
1355 pat=\w??
1356 sub=<&>
1357 flg=gd
1358 res=<><f><><o><><o><>
1359 br0=
1360 br1=f
1361 br2=
1362 br3=o
1363 br4=
1364 br5=o
1365 br6=
1366 [end]
1367
1368 [test162]
1369 str=foo
1370 pat=()
1371 sub=<$&>
1372 flg=g
1373 res=<>f<>o<>o<>
1374 br0=
1375 br1=
1376 br2=
1377 br3=
1378 br4=
1379 br5=
1380 br6=
1381 br7=
1382 [end]
1383
1384 [test163]
1385 str=foo
1386 pat=()*
1387 sub=<$&>
1388 flg=g
1389 res=<>f<>o<>o<>
1390 br0=
1391 br1=
1392 br2=
1393 br3=
1394 br4=
1395 br5=
1396 br6=
1397 br7=
1398 [end]
1399
1400 [test164]
1401 str=1yzZ^aAc2
1402 pat=[Z-a]+
1403 flg=i
1404 br0=zZ^aA
1405 [end]
1406
1407 [test165]
1408 str=1yzZ^aAc2
1409 pat=[Z-a]+
1410 flg=
1411 br0=Z^a
1412 [end]
1413
1414 [test166]
1415 str=G
1416 pat=f|(?i)g
1417 flg=
1418 br0=G
1419 [end]
1420
1421 [test167]
1422 str=aBBa
1423 pat=[[:lower:]]+
1424 flg=i
1425 br0=aBBa
1426 [end]
1427
1428 [test168]
1429 str=aA
1430 pat=\x61+
1431 flg=i
1432 br0=aA
1433 [end]
1434
1435 [test169]
1436 str=aA
1437 pat=[\x61]+
1438 flg=i
1439 br0=aA
1440 [end]
1441
1442 [test170]
1443 str=aA
1444 pat=\u0061+
1445 flg=i
1446 br0=aA
1447 [end]
1448
1449 [test171]
1450 str=aA
1451 pat=[\u0061]+
1452 flg=i
1453 br0=aA
1454 [end]
1455
1456 ; Test for backreferences over 9
1457 [test172]
1458 str=hellohello
1459 pat=()()()()()()()()()()()(hello)\12
1460 br0=hellohello
1461 br1=
1462 br2=
1463 br3=
1464 br4=
1465 br5=
1466 br6=
1467 br7=
1468 br8=
1469 br9=
1470 br10=
1471 br11=
1472 br12=hello
1473 [end]
1474
1475 ; test for named captures
1476 [test173]
1477 str=hellohello
1478 pat=(?P<this>he(ll)o)(?P=this)
1479 br0=hellohello
1480 br1=hello
1481 br2=ll
1482 [end]
1483
1484 ; test for named captures
1485 [test174]
1486 str=hellohello
1487 pat=(?P<this>he(ll)o)(?P=this)
1488 flg=p
1489 sub=\u\g<this>, world
1490 res=Hello, world
1491 br0=hellohello
1492 br1=hello
1493 br2=ll
1494 [end]
1495
1496 ; test for quantified, non-capturing groups, bug report
1497 [test174]
1498 str=cabba\nabba\ndaba\n
1499 pat=^(c[^\r\n]*(?:\r?\n|\r)(?:(?!c)[^\r\n]*(?:\r?\n|\r))*)
1500 flg=
1501 br0=cabba\nabba\ndaba\n
1502 br1=cabba\nabba\ndaba\n
1503 [end]
1504
1505 ; tests pilfered from Boost.Regex test_tricky_cases.cpp
1506
1507 [tricky1]
1508 str=abc
1509 pat=a(((b)))c
1510 flg=g
1511 br0=abc
1512 br1=b
1513 br2=b
1514 br3=b
1515 [end]
1516
1517 [tricky2]
1518 str=abd
1519 pat=a(b|(c))d
1520 flg=g
1521 br0=abd
1522 br1=b
1523 br2=
1524 [end]
1525
1526 [tricky3]
1527 str=acd
1528 pat=a(b|(c))d
1529 flg=g
1530 br0=acd
1531 br1=c
1532 br2=c
1533 [end]
1534
1535 [tricky4]
1536 str=abbd
1537 pat=a(b*|c)d
1538 flg=g
1539 br0=abbd
1540 br1=bb
1541 [end]
1542
1543 [tricky5]
1544 str=aaaaabaaaabaaaabaaaab
1545 pat=a[ab]{20}
1546 flg=g
1547 br0=aaaaabaaaabaaaabaaaab
1548 [end]
1549
1550 [tricky6]
1551 str=aaaaabaaaabaaaabaaaab
1552 pat=a[ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab]
1553 flg=g
1554 br0=aaaaabaaaabaaaabaaaab
1555 [end]
1556
1557 [tricky7]
1558 str=aaaaabaaaabaaaabaaaabweeknights
1559 pat=a[ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab](wee|week)(knights|night)
1560 flg=g
1561 br0=aaaaabaaaabaaaabaaaabweeknights
1562 br1=wee
1563 br2=knights
1564 [end]
1565
1566 [tricky8]
1567 str=a1234567890123456789012345678901234567890123456789012345678901234567890b
1568 pat=1234567890123456789012345678901234567890123456789012345678901234567890
1569 flg=g
1570 br0=1234567890123456789012345678901234567890123456789012345678901234567890
1571 [end]
1572
1573 [tricky9]
1574 str=xacegikmoq
1575 pat=[ab][cd][ef][gh][ij][kl][mn]
1576 flg=g
1577 br0=acegikm
1578 [end]
1579
1580 [tricky10]
1581 str=xacegikmoq
1582 pat=[ab][cd][ef][gh][ij][kl][mn][op]
1583 flg=g
1584 br0=acegikmo
1585 [end]
1586
1587 [tricky11]
1588 str=xacegikmoqy
1589 pat=[ab][cd][ef][gh][ij][kl][mn][op][qr]
1590 flg=g
1591 br0=acegikmoq
1592 [end]
1593
1594 [tricky12]
1595 str=xacegikmoqy
1596 pat=[ab][cd][ef][gh][ij][kl][mn][op][q]
1597 flg=g
1598 br0=acegikmoq
1599 [end]
1600
1601 [tricky13]
1602 str=zabcdefghi
1603 pat=(a)(b)(c)(d)(e)(f)(g)(h)
1604 flg=g
1605 br0=abcdefgh
1606 br1=a
1607 br2=b
1608 br3=c
1609 br4=d
1610 br5=e
1611 br6=f
1612 br7=g
1613 br8=h
1614 [end]
1615
1616 [tricky14]
1617 str=zabcdefghij
1618 pat=(a)(b)(c)(d)(e)(f)(g)(h)(i)
1619 flg=g
1620 br0=abcdefghi
1621 br1=a
1622 br2=b
1623 br3=c
1624 br4=d
1625 br5=e
1626 br6=f
1627 br7=g
1628 br8=h
1629 br9=i
1630 [end]
1631
1632 [tricky15]
1633 str=zabcdefghijk
1634 pat=(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)
1635 flg=g
1636 br0=abcdefghij
1637 br1=a
1638 br2=b
1639 br3=c
1640 br4=d
1641 br5=e
1642 br6=f
1643 br7=g
1644 br8=h
1645 br9=i
1646 br10=j
1647 [end]
1648
1649 [tricky16]
1650 str=zabcdefghijkl
1651 pat=(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)
1652 flg=g
1653 br0=abcdefghijk
1654 br1=a
1655 br2=b
1656 br3=c
1657 br4=d
1658 br5=e
1659 br6=f
1660 br7=g
1661 br8=h
1662 br9=i
1663 br10=j
1664 br11=k
1665 [end]
1666
1667 [tricky17]
1668 str=abc
1669 pat=(a)d|(b)c
1670 flg=g
1671 br0=bc
1672 br1=
1673 br2=b
1674 [end]
1675
1676 [tricky18]
1677 str=_wwwnocolon _mailto:
1678 pat=_+((www)|(ftp)|(mailto)):_*
1679 flg=g
1680 br0=_mailto:
1681 br1=mailto
1682 br2=
1683 br3=
1684 br4=mailto
1685 [end]
1686
1687 ; Boost.Regex bug
1688 [tricky19]
1689 str=acd
1690 pat=a(b)?c\1d
1691 flg=g
1692 ;br0=acd
1693 ;br1=
1694 [end]
1695
1696 [tricky20]
1697 str=accd
1698 pat=a(b?c)+d
1699 flg=g
1700 br0=accd
1701 br1=c
1702 [end]
1703
1704 [tricky21]
1705 str=weeknights
1706 pat=(wee|week)(knights|night)
1707 flg=g
1708 br0=weeknights
1709 br1=wee
1710 br2=knights
1711 [end]
1712
1713 [tricky22]
1714 str=abc
1715 pat=.*
1716 flg=g
1717 br0=abc
1718 br1=
1719 [end]
1720
1721 [tricky23]
1722 str=abd
1723 pat=a(b|(c))d
1724 flg=g
1725 br0=abd
1726 br1=b
1727 br2=
1728 [end]
1729
1730 [tricky24]
1731 str=acd
1732 pat=a(b|(c))d
1733 flg=g
1734 br0=acd
1735 br1=c
1736 br2=c
1737 [end]
1738
1739 [tricky25]
1740 str=abbd
1741 pat=a(b*|c|e)d
1742 flg=g
1743 br0=abbd
1744 br1=bb
1745 [end]
1746
1747 [tricky26]
1748 str=acd
1749 pat=a(b*|c|e)d
1750 flg=g
1751 br0=acd
1752 br1=c
1753 [end]
1754
1755 [tricky27]
1756 str=ad
1757 pat=a(b*|c|e)d
1758 flg=g
1759 br0=ad
1760 br1=
1761 [end]
1762
1763 [tricky28]
1764 str=abc
1765 pat=a(b?)c
1766 flg=g
1767 br0=abc
1768 br1=b
1769 [end]
1770
1771 [tricky29]
1772 str=ac
1773 pat=a(b?)c
1774 flg=g
1775 br0=ac
1776 br1=
1777 [end]
1778
1779 [tricky30]
1780 str=abc
1781 pat=a(b+)c
1782 flg=g
1783 br0=abc
1784 br1=b
1785 [end]
1786
1787 [tricky31]
1788 str=abbbc
1789 pat=a(b+)c
1790 flg=g
1791 br0=abbbc
1792 br1=bbb
1793 [end]
1794
1795 [tricky32]
1796 str=ac
1797 pat=a(b*)c
1798 flg=g
1799 br0=ac
1800 br1=
1801 [end]
1802
1803 [tricky33]
1804 str=abcdef
1805 pat=(a|ab)(bc([de]+)f|cde)
1806 flg=g
1807 br0=abcdef
1808 br1=a
1809 br2=bcdef
1810 br3=de
1811 [end]
1812
1813 [tricky34]
1814 str=abc
1815 pat=a([bc]?)c
1816 flg=g
1817 br0=abc
1818 br1=b
1819 [end]
1820
1821 [tricky35]
1822 str=ac
1823 pat=a([bc]?)c
1824 flg=g
1825 br0=ac
1826 br1=
1827 [end]
1828
1829 [tricky36]
1830 str=abc
1831 pat=a([bc]+)c
1832 flg=g
1833 br0=abc
1834 br1=b
1835 [end]
1836
1837 [tricky37]
1838 str=abcc
1839 pat=a([bc]+)c
1840 flg=g
1841 br0=abcc
1842 br1=bc
1843 [end]
1844
1845 [tricky38]
1846 str=abcbc
1847 pat=a([bc]+)bc
1848 flg=g
1849 br0=abcbc
1850 br1=bc
1851 [end]
1852
1853 [tricky39]
1854 str=abb
1855 pat=a(bb+|b)b
1856 flg=g
1857 br0=abb
1858 br1=b
1859 [end]
1860
1861 [tricky40]
1862 str=abb
1863 pat=a(bbb+|bb+|b)b
1864 flg=g
1865 br0=abb
1866 br1=b
1867 [end]
1868
1869 [tricky41]
1870 str=abbb
1871 pat=a(bbb+|bb+|b)b
1872 flg=g
1873 br0=abbb
1874 br1=bb
1875 [end]
1876
1877 [tricky42]
1878 str=abbb
1879 pat=a(bbb+|bb+|b)bb
1880 flg=g
1881 br0=abbb
1882 br1=b
1883 [end]
1884
1885 [tricky43]
1886 str=abcdef
1887 pat=(.*).*
1888 flg=g
1889 br0=abcdef
1890 br1=abcdef
1891 br2=
1892 br3=
1893 [end]
1894
1895 [tricky44]
1896 str=bc
1897 pat=(a*)*
1898 flg=g
1899 br0=
1900 br1=
1901 br2=
1902 br3=
1903 br4=
1904 br5=
1905 [end]
1906
1907 [tricky45]
1908 str=bc
1909 pat=Z(((((((a+)+)+)+)+)+)+)+|Y(((((((a+)+)+)+)+)+)+)+|X(((((((a+)+)+)+)+)+)+)+|W(((((((a+)+)+)+)+)+)+)+|V(((((((a+)+)+)+)+)+)+)+|CZ(((((((a+)+)+)+)+)+)+)+|CY(((((((a+)+)+)+)+)+)+)+|CX(((((((a+)+)+)+)+)+)+)+|CW(((((((a+)+)+)+)+)+)+)+|CV(((((((a+)+)+)+)+)+)+)+|(a+)+
1910 flg=g
1911 [end]
1912
1913 [tricky46]
1914 str=aaa
1915 pat=Z(((((((a+)+)+)+)+)+)+)+|Y(((((((a+)+)+)+)+)+)+)+|X(((((((a+)+)+)+)+)+)+)+|W(((((((a+)+)+)+)+)+)+)+|V(((((((a+)+)+)+)+)+)+)+|CZ(((((((a+)+)+)+)+)+)+)+|CY(((((((a+)+)+)+)+)+)+)+|CX(((((((a+)+)+)+)+)+)+)+|CW(((((((a+)+)+)+)+)+)+)+|CV(((((((a+)+)+)+)+)+)+)+|(a+)+
1916 flg=g
1917 br0=aaa
1918 br1=
1919 br2=
1920 br3=
1921 br4=
1922 br5=
1923 br6=
1924 br7=
1925 br8=
1926 br9=
1927 br10=
1928 br11=
1929 br12=
1930 br13=
1931 br14=
1932 br15=
1933 br16=
1934 br17=
1935 br18=
1936 br19=
1937 br20=
1938 br21=
1939 br22=
1940 br23=
1941 br24=
1942 br25=
1943 br26=
1944 br27=
1945 br28=
1946 br29=
1947 br30=
1948 br31=
1949 br32=
1950 br33=
1951 br34=
1952 br35=
1953 br36=
1954 br37=
1955 br38=
1956 br39=
1957 br40=
1958 br41=
1959 br42=
1960 br43=
1961 br44=
1962 br45=
1963 br46=
1964 br47=
1965 br48=
1966 br49=
1967 br50=
1968 br51=
1969 br52=
1970 br53=
1971 br54=
1972 br55=
1973 br56=
1974 br57=
1975 br58=
1976 br59=
1977 br60=
1978 br61=
1979 br62=
1980 br63=
1981 br64=
1982 br65=
1983 br66=
1984 br67=
1985 br68=
1986 br69=
1987 br70=
1988 br71=aaa
1989 [end]
1990
1991 [tricky47]
1992 str=Zaaa
1993 pat=Z(((((((a+)+)+)+)+)+)+)+|Y(((((((a+)+)+)+)+)+)+)+|X(((((((a+)+)+)+)+)+)+)+|W(((((((a+)+)+)+)+)+)+)+|V(((((((a+)+)+)+)+)+)+)+|CZ(((((((a+)+)+)+)+)+)+)+|CY(((((((a+)+)+)+)+)+)+)+|CX(((((((a+)+)+)+)+)+)+)+|CW(((((((a+)+)+)+)+)+)+)+|CV(((((((a+)+)+)+)+)+)+)+|(a+)+
1994 flg=g
1995 br0=Zaaa
1996 br1=aaa
1997 br2=aaa
1998 br3=aaa
1999 br4=aaa
2000 br5=aaa
2001 br6=aaa
2002 br7=aaa
2003 br8=
2004 br9=
2005 br10=
2006 br11=
2007 br12=
2008 br13=
2009 br14=
2010 br15=
2011 br16=
2012 br17=
2013 br18=
2014 br19=
2015 br20=
2016 br21=
2017 br22=
2018 br23=
2019 br24=
2020 br25=
2021 br26=
2022 br27=
2023 br28=
2024 br29=
2025 br30=
2026 br31=
2027 br32=
2028 br33=
2029 br34=
2030 br35=
2031 br36=
2032 br37=
2033 br38=
2034 br39=
2035 br40=
2036 br41=
2037 br42=
2038 br43=
2039 br44=
2040 br45=
2041 br46=
2042 br47=
2043 br48=
2044 br49=
2045 br50=
2046 br51=
2047 br52=
2048 br53=
2049 br54=
2050 br55=
2051 br56=
2052 br57=
2053 br58=
2054 br59=
2055 br60=
2056 br61=
2057 br62=
2058 br63=
2059 br64=
2060 br65=
2061 br66=
2062 br67=
2063 br68=
2064 br69=
2065 br70=
2066 br71=
2067 [end]
2068
2069 [tricky48]
2070 str=xyxxxxyxxxz
2071 pat=xyx*xz
2072 flg=g
2073 br0=xyxxxz
2074 [end]
2075
2076 [tricky49]
2077 str=ad
2078 pat=a(b|c)*d
2079 flg=g
2080 br0=ad
2081 br1=
2082 [end]
2083
2084 [tricky50]
2085 str=abcd
2086 pat=a(b|c)*d
2087 flg=g
2088 br0=abcd
2089 br1=c
2090 [end]
2091
2092 [tricky51]
2093 str=abd
2094 pat=a(b|c)+d
2095 flg=g
2096 br0=abd
2097 br1=b
2098 [end]
2099
2100 [tricky52]
2101 str=abcd
2102 pat=a(b|c)+d
2103 flg=g
2104 br0=abcd
2105 br1=c
2106 [end]
2107
2108 [tricky53]
2109 str=ad
2110 pat=a(b|c?)+d
2111 flg=g
2112 br0=ad
2113 br1=
2114 [end]
2115
2116 [tricky54]
2117 str=ad
2118 pat=a(b|c){0,0}d
2119 flg=g
2120 br0=ad
2121 br1=
2122 [end]
2123
2124 [tricky55]
2125 str=ad
2126 pat=a(b|c){0,1}d
2127 flg=g
2128 br0=ad
2129 br1=
2130 [end]
2131
2132 [tricky56]
2133 str=abd
2134 pat=a(b|c){0,1}d
2135 flg=g
2136 br0=abd
2137 br1=b
2138 [end]
2139
2140 [tricky57]
2141 str=ad
2142 pat=a(b|c){0,2}d
2143 flg=g
2144 br0=ad
2145 br1=
2146 [end]
2147
2148 [tricky58]
2149 str=abcd
2150 pat=a(b|c){0,2}d
2151 flg=g
2152 br0=abcd
2153 br1=c
2154 [end]
2155
2156 [tricky59]
2157 str=ad
2158 pat=a(b|c){0,}d
2159 flg=g
2160 br0=ad
2161 br1=
2162 [end]
2163
2164 [tricky60]
2165 str=abcd
2166 pat=a(b|c){0,}d
2167 flg=g
2168 br0=abcd
2169 br1=c
2170 [end]
2171
2172 [tricky61]
2173 str=abd
2174 pat=a(b|c){1,1}d
2175 flg=g
2176 br0=abd
2177 br1=b
2178 [end]
2179
2180 [tricky62]
2181 str=abd
2182 pat=a(b|c){1,2}d
2183 flg=g
2184 br0=abd
2185 br1=b
2186 [end]
2187
2188 [tricky63]
2189 str=abcd
2190 pat=a(b|c){1,2}d
2191 flg=g
2192 br0=abcd
2193 br1=c
2194 [end]
2195
2196 [tricky64]
2197 str=abd
2198 pat=a(b|c){1,}d
2199 flg=g
2200 br0=abd
2201 br1=b
2202 [end]
2203
2204 [tricky65]
2205 str=abcd
2206 pat=a(b|c){1,}d
2207 flg=g
2208 br0=abcd
2209 br1=c
2210 [end]
2211
2212 [tricky66]
2213 str=acbd
2214 pat=a(b|c){2,2}d
2215 flg=g
2216 br0=acbd
2217 br1=b
2218 [end]
2219
2220 [tricky67]
2221 str=abcd
2222 pat=a(b|c){2,2}d
2223 flg=g
2224 br0=abcd
2225 br1=c
2226 [end]
2227
2228 [tricky68]
2229 str=abcd
2230 pat=a(b|c){2,4}d
2231 flg=g
2232 br0=abcd
2233 br1=c
2234 [end]
2235
2236 [tricky69]
2237 str=abcbd
2238 pat=a(b|c){2,4}d
2239 flg=g
2240 br0=abcbd
2241 br1=b
2242 [end]
2243
2244 [tricky70]
2245 str=abcbcd
2246 pat=a(b|c){2,4}d
2247 flg=g
2248 br0=abcbcd
2249 br1=c
2250 [end]
2251
2252 [tricky71]
2253 str=abcd
2254 pat=a(b|c){2,}d
2255 flg=g
2256 br0=abcd
2257 br1=c
2258 [end]
2259
2260 [tricky72]
2261 str=abcbd
2262 pat=a(b|c){2,}d
2263 flg=g
2264 br0=abcbd
2265 br1=b
2266 [end]
2267
2268 [tricky73]
2269 str=abc
2270 pat=a(((b)))c
2271 flg=g
2272 br0=abc
2273 br1=b
2274 br2=b
2275 br3=b
2276 [end]
2277
2278 [tricky74]
2279 str=abd
2280 pat=a(b|(c))d
2281 flg=g
2282 br0=abd
2283 br1=b
2284 br2=
2285 [end]
2286
2287 [tricky75]
2288 str=acd
2289 pat=a(b|(c))d
2290 flg=g
2291 br0=acd
2292 br1=c
2293 br2=c
2294 [end]
2295
2296 [tricky76]
2297 str=abbd
2298 pat=a(b*|c)d
2299 flg=g
2300 br0=abbd
2301 br1=bb
2302 [end]
2303
2304 [tricky77]
2305 str=aaaaabaaaabaaaabaaaab
2306 pat=a[ab]{20}
2307 flg=g
2308 br0=aaaaabaaaabaaaabaaaab
2309 [end]
2310
2311 [tricky78]
2312 str=aaaaabaaaabaaaabaaaab
2313 pat=a[ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab]
2314 flg=g
2315 br0=aaaaabaaaabaaaabaaaab
2316 [end]
2317
2318 [tricky79]
2319 str=aaaaabaaaabaaaabaaaabweeknights
2320 pat=a[ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab][ab](wee|week)(knights|night)
2321 flg=g
2322 br0=aaaaabaaaabaaaabaaaabweeknights
2323 br1=wee
2324 br2=knights
2325 [end]
2326
2327 [tricky80]
2328 str=a1234567890123456789012345678901234567890123456789012345678901234567890b
2329 pat=1234567890123456789012345678901234567890123456789012345678901234567890
2330 flg=g
2331 br0=1234567890123456789012345678901234567890123456789012345678901234567890
2332 [end]
2333
2334 [tricky81]
2335 str=xacegikmoq
2336 pat=[ab][cd][ef][gh][ij][kl][mn]
2337 flg=g
2338 br0=acegikm
2339 [end]
2340
2341 [tricky82]
2342 str=xacegikmoq
2343 pat=[ab][cd][ef][gh][ij][kl][mn][op]
2344 flg=g
2345 br0=acegikmo
2346 [end]
2347
2348 [tricky83]
2349 str=xacegikmoqy
2350 pat=[ab][cd][ef][gh][ij][kl][mn][op][qr]
2351 flg=g
2352 br0=acegikmoq
2353 [end]
2354
2355 [tricky84]
2356 str=xacegikmoqy
2357 pat=[ab][cd][ef][gh][ij][kl][mn][op][q]
2358 flg=g
2359 br0=acegikmoq
2360 [end]
2361
2362 [tricky85]
2363 str=zabcdefghi
2364 pat=(a)(b)(c)(d)(e)(f)(g)(h)
2365 flg=g
2366 br0=abcdefgh
2367 br1=a
2368 br2=b
2369 br3=c
2370 br4=d
2371 br5=e
2372 br6=f
2373 br7=g
2374 br8=h
2375 [end]
2376
2377 [tricky86]
2378 str=zabcdefghij
2379 pat=(a)(b)(c)(d)(e)(f)(g)(h)(i)
2380 flg=g
2381 br0=abcdefghi
2382 br1=a
2383 br2=b
2384 br3=c
2385 br4=d
2386 br5=e
2387 br6=f
2388 br7=g
2389 br8=h
2390 br9=i
2391 [end]
2392
2393 [tricky87]
2394 str=zabcdefghijk
2395 pat=(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)
2396 flg=g
2397 br0=abcdefghij
2398 br1=a
2399 br2=b
2400 br3=c
2401 br4=d
2402 br5=e
2403 br6=f
2404 br7=g
2405 br8=h
2406 br9=i
2407 br10=j
2408 [end]
2409
2410 [tricky88]
2411 str=zabcdefghijkl
2412 pat=(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)
2413 flg=g
2414 br0=abcdefghijk
2415 br1=a
2416 br2=b
2417 br3=c
2418 br4=d
2419 br5=e
2420 br6=f
2421 br7=g
2422 br8=h
2423 br9=i
2424 br10=j
2425 br11=k
2426 [end]
2427
2428 [tricky89]
2429 str=abc
2430 pat=(a)d|(b)c
2431 flg=g
2432 br0=bc
2433 br1=
2434 br2=b
2435 [end]
2436
2437 [tricky90]
2438 str=_wwwnocolon _mailto:
2439 pat=_+((www)|(ftp)|(mailto)):_*
2440 flg=g
2441 br0=_mailto:
2442 br1=mailto
2443 br2=
2444 br3=
2445 br4=mailto
2446 [end]
2447
2448 [tricky91]
2449 str=accd
2450 pat=a(b?c)+d
2451 flg=g
2452 br0=accd
2453 br1=c
2454 [end]
2455
2456 [tricky92]
2457 str=weeknights
2458 pat=(wee|week)(knights|night)
2459 flg=g
2460 br0=weeknights
2461 br1=wee
2462 br2=knights
2463 [end]
2464
2465 [tricky93]
2466 str=abc
2467 pat=.*
2468 flg=g
2469 br0=abc
2470 br1=
2471 [end]
2472
2473 [tricky94]
2474 str=abd
2475 pat=a(b|(c))d
2476 flg=g
2477 br0=abd
2478 br1=b
2479 br2=
2480 [end]
2481
2482 [tricky95]
2483 str=acd
2484 pat=a(b|(c))d
2485 flg=g
2486 br0=acd
2487 br1=c
2488 br2=c
2489 [end]
2490
2491 [tricky96]
2492 str=abbd
2493 pat=a(b*|c|e)d
2494 flg=g
2495 br0=abbd
2496 br1=bb
2497 [end]
2498
2499 [tricky97]
2500 str=acd
2501 pat=a(b*|c|e)d
2502 flg=g
2503 br0=acd
2504 br1=c
2505 [end]
2506
2507 [tricky98]
2508 str=ad
2509 pat=a(b*|c|e)d
2510 flg=g
2511 br0=ad
2512 br1=
2513 [end]
2514
2515 [tricky99]
2516 str=abc
2517 pat=a(b?)c
2518 flg=g
2519 br0=abc
2520 br1=b
2521 [end]
2522
2523 [tricky100]
2524 str=ac
2525 pat=a(b?)c
2526 flg=g
2527 br0=ac
2528 br1=
2529 [end]
2530
2531 [tricky101]
2532 str=abc
2533 pat=a(b+)c
2534 flg=g
2535 br0=abc
2536 br1=b
2537 [end]
2538
2539 [tricky102]
2540 str=abbbc
2541 pat=a(b+)c
2542 flg=g
2543 br0=abbbc
2544 br1=bbb
2545 [end]
2546
2547 [tricky103]
2548 str=ac
2549 pat=a(b*)c
2550 flg=g
2551 br0=ac
2552 br1=
2553 [end]
2554
2555 [tricky104]
2556 str=abcdef
2557 pat=(a|ab)(bc([de]+)f|cde)
2558 flg=g
2559 br0=abcdef
2560 br1=a
2561 br2=bcdef
2562 br3=de
2563 [end]
2564
2565 [tricky105]
2566 str=abc
2567 pat=a([bc]?)c
2568 flg=g
2569 br0=abc
2570 br1=b
2571 [end]
2572
2573 [tricky106]
2574 str=ac
2575 pat=a([bc]?)c
2576 flg=g
2577 br0=ac
2578 br1=
2579 [end]
2580
2581 [tricky107]
2582 str=abc
2583 pat=a([bc]+)c
2584 flg=g
2585 br0=abc
2586 br1=b
2587 [end]
2588
2589 [tricky108]
2590 str=abcc
2591 pat=a([bc]+)c
2592 flg=g
2593 br0=abcc
2594 br1=bc
2595 [end]
2596
2597 [tricky109]
2598 str=abcbc
2599 pat=a([bc]+)bc
2600 flg=g
2601 br0=abcbc
2602 br1=bc
2603 [end]
2604
2605 [tricky110]
2606 str=abb
2607 pat=a(bb+|b)b
2608 flg=g
2609 br0=abb
2610 br1=b
2611 [end]
2612
2613 [tricky111]
2614 str=abb
2615 pat=a(bbb+|bb+|b)b
2616 flg=g
2617 br0=abb
2618 br1=b
2619 [end]
2620
2621 [tricky112]
2622 str=abbb
2623 pat=a(bbb+|bb+|b)b
2624 flg=g
2625 br0=abbb
2626 br1=bb
2627 [end]
2628
2629 [tricky113]
2630 str=abbb
2631 pat=a(bbb+|bb+|b)bb
2632 flg=g
2633 br0=abbb
2634 br1=b
2635 [end]
2636
2637 [tricky114]
2638 str=abcdef
2639 pat=(.*).*
2640 flg=g
2641 br0=abcdef
2642 br1=abcdef
2643 br2=
2644 br3=
2645 [end]
2646
2647 [tricky115]
2648 str=bc
2649 pat=(a*)*
2650 flg=g
2651 br0=
2652 br1=
2653 br2=
2654 br3=
2655 br4=
2656 br5=
2657 [end]
2658
2659 [tricky116]
2660 str=xyxxxxyxxxz
2661 pat=xyx*xz
2662 flg=g
2663 br0=xyxxxz
2664 [end]
2665
2666 [tricky117]
2667 str=ad
2668 pat=a(b|c)*d
2669 flg=g
2670 br0=ad
2671 br1=
2672 [end]
2673
2674 [tricky118]
2675 str=abcd
2676 pat=a(b|c)*d
2677 flg=g
2678 br0=abcd
2679 br1=c
2680 [end]
2681
2682 [tricky119]
2683 str=abd
2684 pat=a(b|c)+d
2685 flg=g
2686 br0=abd
2687 br1=b
2688 [end]
2689
2690 [tricky120]
2691 str=abcd
2692 pat=a(b|c)+d
2693 flg=g
2694 br0=abcd
2695 br1=c
2696 [end]
2697
2698 [tricky121]
2699 str=ad
2700 pat=a(b|c?)+d
2701 flg=g
2702 br0=ad
2703 br1=
2704 [end]
2705
2706 [tricky122]
2707 str=ad
2708 pat=a(b|c){0,0}d
2709 flg=g
2710 br0=ad
2711 br1=
2712 [end]
2713
2714 [tricky123]
2715 str=ad
2716 pat=a(b|c){0,1}d
2717 flg=g
2718 br0=ad
2719 br1=
2720 [end]
2721
2722 [tricky124]
2723 str=abd
2724 pat=a(b|c){0,1}d
2725 flg=g
2726 br0=abd
2727 br1=b
2728 [end]
2729
2730 [tricky125]
2731 str=ad
2732 pat=a(b|c){0,2}d
2733 flg=g
2734 br0=ad
2735 br1=
2736 [end]
2737
2738 [tricky126]
2739 str=abcd
2740 pat=a(b|c){0,2}d
2741 flg=g
2742 br0=abcd
2743 br1=c
2744 [end]
2745
2746 [tricky127]
2747 str=ad
2748 pat=a(b|c){0,}d
2749 flg=g
2750 br0=ad
2751 br1=
2752 [end]
2753
2754 [tricky128]
2755 str=abcd
2756 pat=a(b|c){0,}d
2757 flg=g
2758 br0=abcd
2759 br1=c
2760 [end]
2761
2762 [tricky129]
2763 str=abd
2764 pat=a(b|c){1,1}d
2765 flg=g
2766 br0=abd
2767 br1=b
2768 [end]
2769
2770 [tricky130]
2771 str=abd
2772 pat=a(b|c){1,2}d
2773 flg=g
2774 br0=abd
2775 br1=b
2776 [end]
2777
2778 [tricky131]
2779 str=abcd
2780 pat=a(b|c){1,2}d
2781 flg=g
2782 br0=abcd
2783 br1=c
2784 [end]
2785
2786 [tricky132]
2787 str=abd
2788 pat=a(b|c){1,}d
2789 flg=g
2790 br0=abd
2791 br1=b
2792 [end]
2793
2794 [tricky133]
2795 str=abcd
2796 pat=a(b|c){1,}d
2797 flg=g
2798 br0=abcd
2799 br1=c
2800 [end]
2801
2802 [tricky134]
2803 str=acbd
2804 pat=a(b|c){2,2}d
2805 flg=g
2806 br0=acbd
2807 br1=b
2808 [end]
2809
2810 [tricky135]
2811 str=abcd
2812 pat=a(b|c){2,2}d
2813 flg=g
2814 br0=abcd
2815 br1=c
2816 [end]
2817
2818 [tricky136]
2819 str=abcd
2820 pat=a(b|c){2,4}d
2821 flg=g
2822 br0=abcd
2823 br1=c
2824 [end]
2825
2826 [tricky137]
2827 str=abcbd
2828 pat=a(b|c){2,4}d
2829 flg=g
2830 br0=abcbd
2831 br1=b
2832 [end]
2833
2834 [tricky138]
2835 str=abcbcd
2836 pat=a(b|c){2,4}d
2837 flg=g
2838 br0=abcbcd
2839 br1=c
2840 [end]
2841
2842 [tricky139]
2843 str=abcd
2844 pat=a(b|c){2,}d
2845 flg=g
2846 br0=abcd
2847 br1=c
2848 [end]
2849
2850 [tricky140]
2851 str=abcbd
2852 pat=a(b|c){2,}d
2853 flg=g
2854 br0=abcbd
2855 br1=b
2856 [end]
2857
2858 [tricky141]
2859 str=abcd
2860 pat=a(b|c?)+d
2861 flg=g
2862 br0=abcd
2863 br1=
2864 [end]
2865
2866 [tricky142]
2867 str=abd
2868 pat=a(b+|((c)*))+d
2869 flg=g
2870 br0=abd
2871 br1=
2872 br2=
2873 br3=
2874 [end]
2875
2876 ; Boost.Regex bug
2877 [tricky143]
2878 str=abcd
2879 pat=a(b+|((c)*))+d
2880 flg=g
2881 br0=abcd
2882 br1=
2883 br2=
2884 ;br3=c
2885 br3=
2886 [end]
2887
2888 ; Boost.Regex bug
2889 [tricky144]
2890 str=abcd
2891 pat=a(b|c?)+d
2892 flg=g
2893 br0=abcd
2894 ;br1=c
2895 br1=
2896 [end]
2897
2898 ; Boost.Regex bug
2899 [tricky145]
2900 str=abcd
2901 pat=a(b|((c)*))+d
2902 flg=g
2903 br0=abcd
2904 ;br1=c
2905 ;br2=c
2906 ;br3=c
2907 br1=
2908 br2=
2909 br3=
2910 [end]
2911
2912 ; Boost.Regex bug
2913 [tricky146]
2914 str=abd
2915 pat=a(b+|((c)*))+d
2916 flg=g
2917 br0=abd
2918 ;br1=b
2919 br1=
2920 br2=
2921 br3=
2922 [end]
2923
2924 ; Boost.Regex bug
2925 [tricky147]
2926 str=abcd
2927 pat=a(b+|((c)*))+d
2928 flg=g
2929 br0=abcd
2930 ;br1=c
2931 ;br2=c
2932 ;br3=c
2933 br1=
2934 br2=
2935 br3=
2936 [end]
2937
2938 [tricky148]
2939 str=++i //here is a line comment\n
2940 pat=//[^\n]*
2941 flg=g
2942 br0=//here is a line comment
2943 [end]
2944
2945 [tricky149]
2946 str=/* here is a block comment */
2947 pat=/\*([^*]|\*+[^*/])*\*+/
2948 flg=g
2949 br0=/* here is a block comment */
2950 br1=
2951 [end]
2952
2953 [tricky150]
2954 str=/**/
2955 pat=/\*([^*]|\*+[^*/])*\*+/
2956 flg=g
2957 br0=/**/
2958 br1=
2959 [end]
2960
2961 [tricky151]
2962 str=/***/
2963 pat=/\*([^*]|\*+[^*/])*\*+/
2964 flg=g
2965 br0=/***/
2966 br1=
2967 [end]
2968
2969 [tricky152]
2970 str=/****/
2971 pat=/\*([^*]|\*+[^*/])*\*+/
2972 flg=g
2973 br0=/****/
2974 br1=
2975 [end]
2976
2977 [tricky153]
2978 str=/*****/
2979 pat=/\*([^*]|\*+[^*/])*\*+/
2980 flg=g
2981 br0=/*****/
2982 br1=
2983 [end]
2984
2985 [tricky154]
2986 str=/*****/*/
2987 pat=/\*([^*]|\*+[^*/])*\*+/
2988 flg=g
2989 br0=/*****/
2990 br1=
2991 [end]
2992
2993 [tricky155]
2994 str=#define some_symbol
2995 pat=^[[:blank:]]*#([^\n]*\\[[:space:]]+)*[^\n]*
2996 flg=g
2997 br0=#define some_symbol
2998 br1=
2999 [end]
3000
3001 [tricky156]
3002 str=#define some_symbol(x) #x
3003 pat=^[[:blank:]]*#([^\n]*\\[[:space:]]+)*[^\n]*
3004 flg=g
3005 br0=#define some_symbol(x) #x
3006 br1=
3007 [end]
3008
3009 [tricky157]
3010 str=#define some_symbol(x) \\ \r\n foo();\\\r\n printf(#x);
3011 pat=^[[:blank:]]*#([^\n]*\\[[:space:]]+)*[^\n]*
3012 flg=g
3013 br0=#define some_symbol(x) \\ \r\n foo();\\\r\n printf(#x);
3014 br1=foo();\\\r\n
3015 [end]
3016
3017 [tricky158]
3018 str=aaaabab
3019 pat=(aaa)(ab)*
3020 flg=g
3021 br0=aaaabab
3022 br1=aaa
3023 br2=ab
3024 [end]
3025
3026 [tricky159]
3027 str=0xFF
3028 pat=((0x[[:xdigit:]]+)|([[:digit:]]+))u?((int(8|16|32|64))|L)?
3029 flg=g
3030 br0=0xFF
3031 br1=0xFF
3032 br2=0xFF
3033 br3=
3034 br4=
3035 br5=
3036 br6=
3037 [end]
3038
3039 [tricky160]
3040 str=35
3041 pat=((0x[[:xdigit:]]+)|([[:digit:]]+))u?((int(8|16|32|64))|L)?
3042 flg=g
3043 br0=35
3044 br1=35
3045 br2=
3046 br3=35
3047 br4=
3048 br5=
3049 br6=
3050 [end]
3051
3052 [tricky161]
3053 str=0xFFu
3054 pat=((0x[[:xdigit:]]+)|([[:digit:]]+))u?((int(8|16|32|64))|L)?
3055 flg=g
3056 br0=0xFFu
3057 br1=0xFF
3058 br2=0xFF
3059 br3=
3060 br4=
3061 br5=
3062 br6=
3063 [end]
3064
3065 [tricky162]
3066 str=0xFFL
3067 pat=((0x[[:xdigit:]]+)|([[:digit:]]+))u?((int(8|16|32|64))|L)?
3068 flg=g
3069 br0=0xFFL
3070 br1=0xFF
3071 br2=0xFF
3072 br3=
3073 br4=L
3074 br5=
3075 br6=
3076 [end]
3077
3078 [tricky163]
3079 str=0xFFFFFFFFFFFFFFFFuint64
3080 pat=((0x[[:xdigit:]]+)|([[:digit:]]+))u?((int(8|16|32|64))|L)?
3081 flg=g
3082 br0=0xFFFFFFFFFFFFFFFFuint64
3083 br1=0xFFFFFFFFFFFFFFFF
3084 br2=0xFFFFFFFFFFFFFFFF
3085 br3=
3086 br4=int64
3087 br5=int64
3088 br6=64
3089 [end]
3090
3091 [tricky164]
3092 str='\\x3A'
3093 pat='([^\\']|\\.)*'
3094 flg=g
3095 br0='\\x3A'
3096 br1=A
3097 [end]
3098
3099 [tricky165]
3100 str='\\''
3101 pat='([^\\']|\\.)*'
3102 flg=g
3103 br0='\\''
3104 br1=\\'
3105 [end]
3106
3107 [tricky166]
3108 str='\\n'
3109 pat='([^\\']|\\.)*'
3110 flg=g
3111 br0='\\n'
3112 br1=\\n
3113 [end]
3114
3115 [tricky167]
3116 str=0123456789@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}
3117 pat=0123456789@abcdefghijklmnopqrstuvwxyz\[\\\]\^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ\{\|\}
3118 flg=gi
3119 br0=0123456789@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}
3120 [end]
3121
3122 [tricky168]
3123 str=A
3124 pat=a
3125 flg=gi
3126 br0=A
3127 [end]
3128
3129 [tricky169]
3130 str=a
3131 pat=A
3132 flg=gi
3133 br0=a
3134 [end]
3135
3136 [tricky170]
3137 str=abcABC
3138 pat=[abc]+
3139 flg=gi
3140 br0=abcABC
3141 [end]
3142
3143 [tricky171]
3144 str=abcABC
3145 pat=[ABC]+
3146 flg=gi
3147 br0=abcABC
3148 [end]
3149
3150 [tricky172]
3151 str=abcABC
3152 pat=[a-z]+
3153 flg=gi
3154 br0=abcABC
3155 [end]
3156
3157 [tricky173]
3158 str=abzANZ
3159 pat=[A-Z]+
3160 flg=gi
3161 br0=abzANZ
3162 [end]
3163
3164 ; Boost.Regex bug
3165 ;[tricky174]
3166 ;str=abzABZ
3167 ;pat=[a-Z]+
3168 ;flg=gi
3169 ;br0=abzABZ
3170 ;[end]
3171
3172 [tricky175]
3173 str=abzABZ
3174 pat=[A-z]+
3175 flg=gi
3176 br0=abzABZ
3177 [end]
3178
3179 [tricky176]
3180 str=abyzABYZ
3181 pat=[[:lower:]]+
3182 flg=gi
3183 br0=abyzABYZ
3184 [end]
3185
3186 [tricky177]
3187 str=abzABZ
3188 pat=[[:upper:]]+
3189 flg=gi
3190 br0=abzABZ
3191 [end]
3192
3193 [tricky178]
3194 str=abcZZZ
3195 pat=\w+
3196 flg=gi
3197 br0=abcZZZ
3198 [end]
3199
3200 [tricky179]
3201 str=abyzABYZ
3202 pat=[[:alpha:]]+
3203 flg=gi
3204 br0=abyzABYZ
3205 [end]
3206
3207 [tricky180]
3208 str=09abyzABYZ
3209 pat=[[:alnum:]]+
3210 flg=gi
3211 br0=09abyzABYZ
3212 [end]
3213
3214 [tricky181]
3215 str=(
3216 pat=\(
3217 flg=g
3218 br0=(
3219 [end]
3220
3221 [tricky182]
3222 str=)
3223 pat=\)
3224 flg=g
3225 br0=)
3226 [end]
3227
3228 [tricky183]
3229 str=$
3230 pat=\$
3231 flg=g
3232 br0=$
3233 [end]
3234
3235 [tricky184]
3236 str=^
3237 pat=\^
3238 flg=g
3239 br0=^
3240 [end]
3241
3242 [tricky185]
3243 str=.
3244 pat=\.
3245 flg=g
3246 br0=.
3247 [end]
3248
3249 [tricky186]
3250 str=*
3251 pat=\*
3252 flg=g
3253 br0=*
3254 [end]
3255
3256 [tricky187]
3257 str=+
3258 pat=\+
3259 flg=g
3260 br0=+
3261 [end]
3262
3263 [tricky188]
3264 str=?
3265 pat=\?
3266 flg=g
3267 br0=?
3268 [end]
3269
3270 [tricky189]
3271 str=[
3272 pat=\[
3273 flg=g
3274 br0=[
3275 [end]
3276
3277 [tricky190]
3278 str=]
3279 pat=\]
3280 flg=g
3281 br0=]
3282 [end]
3283
3284 [tricky191]
3285 str=|
3286 pat=\|
3287 flg=g
3288 br0=|
3289 [end]
3290
3291 [tricky192]
3292 str=\\
3293 pat=\\
3294 flg=g
3295 br0=\
3296 [end]
3297
3298 [tricky193]
3299 str=#
3300 pat=#
3301 flg=g
3302 br0=#
3303 [end]
3304
3305 [tricky194]
3306 str=#
3307 pat=\#
3308 flg=g
3309 br0=#
3310 [end]
3311
3312 [tricky195]
3313 str=a-
3314 pat=a-
3315 flg=g
3316 br0=a-
3317 [end]
3318
3319 [tricky196]
3320 str=-
3321 pat=\-
3322 flg=g
3323 br0=-
3324 [end]
3325
3326 [tricky197]
3327 str={
3328 pat=\{
3329 flg=g
3330 br0={
3331 [end]
3332
3333 [tricky198]
3334 str=}
3335 pat=\}
3336 flg=g
3337 br0=}
3338 [end]
3339
3340 [tricky199]
3341 str=0
3342 pat=0
3343 flg=g
3344 br0=0
3345 [end]
3346
3347 [tricky200]
3348 str=1
3349 pat=1
3350 flg=g
3351 br0=1
3352 [end]
3353
3354 [tricky201]
3355 str=9
3356 pat=9
3357 flg=g
3358 br0=9
3359 [end]
3360
3361 [tricky202]
3362 str=b
3363 pat=b
3364 flg=g
3365 br0=b
3366 [end]
3367
3368 [tricky203]
3369 str=B
3370 pat=B
3371 flg=g
3372 br0=B
3373 [end]
3374
3375 [tricky204]
3376 str=<
3377 pat=<
3378 flg=g
3379 br0=<
3380 [end]
3381
3382 [tricky205]
3383 str=>
3384 pat=>
3385 flg=g
3386 br0=>
3387 [end]
3388
3389 [tricky206]
3390 str=w
3391 pat=w
3392 flg=g
3393 br0=w
3394 [end]
3395
3396 [tricky207]
3397 str=W
3398 pat=W
3399 flg=g
3400 br0=W
3401 [end]
3402
3403 [tricky208]
3404 str=`
3405 pat=`
3406 flg=g
3407 br0=`
3408 [end]
3409
3410 [tricky209]
3411 str=
3412 pat=
3413 flg=g
3414 br0=
3415 [end]
3416
3417 [tricky210]
3418 str=\n
3419 pat=\n
3420 flg=g
3421 br0=\n
3422 [end]
3423
3424 [tricky211]
3425 str=,
3426 pat=,
3427 flg=g
3428 br0=,
3429 [end]
3430
3431 [tricky212]
3432 str=a
3433 pat=a
3434 flg=g
3435 br0=a
3436 [end]
3437
3438 [tricky213]
3439 str=f
3440 pat=f
3441 flg=g
3442 br0=f
3443 [end]
3444
3445 [tricky214]
3446 str=n
3447 pat=n
3448 flg=g
3449 br0=n
3450 [end]
3451
3452 [tricky215]
3453 str=r
3454 pat=r
3455 flg=g
3456 br0=r
3457 [end]
3458
3459 [tricky216]
3460 str=t
3461 pat=t
3462 flg=g
3463 br0=t
3464 [end]
3465
3466 [tricky217]
3467 str=v
3468 pat=v
3469 flg=g
3470 br0=v
3471 [end]
3472
3473 [tricky218]
3474 str=c
3475 pat=c
3476 flg=g
3477 br0=c
3478 [end]
3479
3480 [tricky219]
3481 str=x
3482 pat=x
3483 flg=g
3484 br0=x
3485 [end]
3486
3487 [tricky220]
3488 str=:
3489 pat=:
3490 flg=g
3491 br0=:
3492 [end]
3493
3494 [tricky221]
3495 str=w.a.b
3496 pat=(\.[[:alnum:]]+){2}
3497 flg=g
3498 br0=.a.b
3499 br1=.b
3500 [end]
3501
3502 [tricky222]
3503 str=foobar
3504 pat=(?!foo)bar
3505 flg=g
3506 br0=bar
3507 [end]
3508
3509 [tricky223]
3510 str=??bar
3511 pat=(?!foo)bar
3512 flg=g
3513 br0=bar
3514 [end]
3515
3516 [tricky224]
3517 str=barfoo
3518 pat=(?!foo)bar
3519 flg=g
3520 br0=bar
3521 [end]
3522
3523 [tricky225]
3524 str=bar??
3525 pat=(?!foo)bar
3526 flg=g
3527 br0=bar
3528 [end]
3529
3530 [tricky226]
3531 str=bar
3532 pat=(?!foo)bar
3533 flg=g
3534 br0=bar
3535 [end]
3536
3537 [tricky227]
3538 str=a\nb
3539 pat=a\Z
3540 flg=g
3541 [end]
3542
3543 [tricky228]
3544 str=abc
3545 pat=()
3546 flg=g
3547 br0=
3548 br1=
3549 br2=
3550 br3=
3551 br4=
3552 br5=
3553 br6=
3554 br7=
3555 [end]
3556
3557 [tricky229]
3558 str=abc
3559 pat=^()
3560 flg=g
3561 br0=
3562 br1=
3563 [end]
3564
3565 [tricky230]
3566 str=abc
3567 pat=^()+
3568 flg=g
3569 br0=
3570 br1=
3571 [end]
3572
3573 [tricky231]
3574 str=abc
3575 pat=^(){1}
3576 flg=g
3577 br0=
3578 br1=
3579 [end]
3580
3581 [tricky232]
3582 str=abc
3583 pat=^(){2}
3584 flg=g
3585 br0=
3586 br1=
3587 [end]
3588
3589 [tricky233]
3590 str=abc
3591 pat=^((){2})
3592 flg=g
3593 br0=
3594 br1=
3595 br2=
3596 [end]
3597
3598 [tricky234]
3599 str=a
3600 pat=()\1
3601 flg=g
3602 br0=
3603 br1=
3604 br2=
3605 br3=
3606 [end]
3607
3608 [tricky235]
3609 str=ab
3610 pat=a()\1b
3611 flg=g
3612 br0=ab
3613 br1=
3614 [end]
3615
3616 [tricky236]
3617 str=ab
3618 pat=a()b\1
3619 flg=g
3620 br0=ab
3621 br1=
3622 [end]
3623
3624 [tricky237]
3625 str=abcbc
3626 pat=([a-c]+)\1
3627 flg=g
3628 br0=bcbc
3629 br1=bc
3630 [end]
3631
3632 [tricky238]
3633 str=xxxxxxxxyyyyyyyyab
3634 pat=.+abc
3635 flg=g
3636 [end]
3637
3638 [tricky239]
3639 str=abcdxxxyyyxxxyyy
3640 pat=(.+)\1
3641 flg=g
3642 br0=xxxyyyxxxyyy
3643 br1=xxxyyy
3644 [end]
3645
3646 [tricky240]
3647 str=___________________________________________x
3648 pat=[_]+$
3649 flg=g
3650 [end]
3651
3652 ;[tricky241]
3653 ;str=abcXYZ
3654 ;pat=\l+
3655 ;flg=gi
3656 ;br0=abcXYZ
3657 ;[end]
3658
3659 ;[tricky242]
3660 ;str=abcXYZ
3661 ;pat=\u+
3662 ;flg=gi
3663 ;br0=abcXYZ
3664 ;[end]
3665
3666 ; Boost.Regex bug
3667 [tricky243]
3668 str=abcd
3669 pat=a(b|(((c))*))+d
3670 flg=g
3671 br0=abcd
3672 ;br1=c
3673 ;br2=c
3674 ;br3=c
3675 br1=
3676 br2=
3677 br3=
3678 br4=c
3679 [end]
3680
3681 [replace1]
3682 str=acab
3683 pat=(a(c)?)|(b)
3684 flg=iga
3685 sub=(?1(?2(C:):A):B:)
3686 res=C:AB:
3687 br0=ac
3688 br1=ac
3689 br2=c
3690 br3=
3691 br4=a
3692 br5=a
3693 br6=
3694 br7=
3695 br8=b
3696 br9=
3697 br10=
3698 br11=b
3699 [end]
3700
3701 [track2157.1]
3702 str=abc\ndef\nghi
3703 pat=^.+$
3704 flg=m
3705 br0=abc
3706 [end]
3707
3708 [track2157.2]
3709 str=abc\ndef\nghi
3710 pat=.$
3711 flg=m
3712 br0=c
3713 [end]
3714
3715 [track2157.3]
3716 str=abc\ndef\nghi
3717 pat=^.+$
3718 flg=
3719 [end]
3720
3721 [track2157.4]
3722 str=abc\ndef\nghi
3723 pat=.$
3724 flg=
3725 br0=i
3726 [end]
3727
3728 [track2157.5]
3729 str=abc\r\ndef\r\nghi
3730 pat=^.+$
3731 flg=m
3732 br0=abc
3733 [end]
3734
3735 [track2157.6]
3736 str=abc\r\ndef\r\nghi
3737 pat=.$
3738 flg=m
3739 br0=c
3740 [end]
3741
3742 [nocasealternate]
3743 str=common HighLight and Blow this
3744 pat=highlight|blow
3745 flg=ig
3746 sub=<b>$&</b>
3747 res=common <b>HighLight</b> and <b>Blow</b> this
3748 br0=HighLight
3749 br1=Blow
3750 [end]
3751
3752 [track2296]
3753 str=> ""
3754 pat=(?P<f>.+):(?P<l>[0-9]+):((?P<c>[0-9]+):)?.*
3755 flg=
3756 [end]