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

Contents of /code/trunk/testdata/testinput7

Parent Directory Parent Directory | Revision Log Revision Log


Revision 428 - (show annotations) (download)
Mon Aug 31 17:10:26 2009 UTC (5 years, 2 months ago) by ph10
File size: 80481 byte(s)
Further partial match change: add PCRE_PARTIAL_HARD and make more intuitive.

1 /abc/
2 abc
3
4 /ab*c/
5 abc
6 abbbbc
7 ac
8
9 /ab+c/
10 abc
11 abbbbbbc
12 *** Failers
13 ac
14 ab
15
16 /a*/
17 a
18 aaaaaaaaaaaaaaaaa
19 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
20 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\F
21
22 /(a|abcd|african)/
23 a
24 abcd
25 african
26
27 /^abc/
28 abcdef
29 *** Failers
30 xyzabc
31 xyz\nabc
32
33 /^abc/m
34 abcdef
35 xyz\nabc
36 *** Failers
37 xyzabc
38
39 /\Aabc/
40 abcdef
41 *** Failers
42 xyzabc
43 xyz\nabc
44
45 /\Aabc/m
46 abcdef
47 *** Failers
48 xyzabc
49 xyz\nabc
50
51 /\Gabc/
52 abcdef
53 xyzabc\>3
54 *** Failers
55 xyzabc
56 xyzabc\>2
57
58 /x\dy\Dz/
59 x9yzz
60 x0y+z
61 *** Failers
62 xyz
63 xxy0z
64
65 /x\sy\Sz/
66 x yzz
67 x y+z
68 *** Failers
69 xyz
70 xxyyz
71
72 /x\wy\Wz/
73 xxy+z
74 *** Failers
75 xxy0z
76 x+y+z
77
78 /x.y/
79 x+y
80 x-y
81 *** Failers
82 x\ny
83
84 /x.y/s
85 x+y
86 x-y
87 x\ny
88
89 /(a.b(?s)c.d|x.y)p.q/
90 a+bc+dp+q
91 a+bc\ndp+q
92 x\nyp+q
93 *** Failers
94 a\nbc\ndp+q
95 a+bc\ndp\nq
96 x\nyp\nq
97
98 /a\d\z/
99 ba0
100 *** Failers
101 ba0\n
102 ba0\ncd
103
104 /a\d\z/m
105 ba0
106 *** Failers
107 ba0\n
108 ba0\ncd
109
110 /a\d\Z/
111 ba0
112 ba0\n
113 *** Failers
114 ba0\ncd
115
116 /a\d\Z/m
117 ba0
118 ba0\n
119 *** Failers
120 ba0\ncd
121
122 /a\d$/
123 ba0
124 ba0\n
125 *** Failers
126 ba0\ncd
127
128 /a\d$/m
129 ba0
130 ba0\n
131 ba0\ncd
132 *** Failers
133
134 /abc/i
135 abc
136 aBc
137 ABC
138
139 /[^a]/
140 abcd
141
142 /ab?\w/
143 abz
144 abbz
145 azz
146
147 /x{0,3}yz/
148 ayzq
149 axyzq
150 axxyz
151 axxxyzq
152 axxxxyzq
153 *** Failers
154 ax
155 axx
156
157 /x{3}yz/
158 axxxyzq
159 axxxxyzq
160 *** Failers
161 ax
162 axx
163 ayzq
164 axyzq
165 axxyz
166
167 /x{2,3}yz/
168 axxyz
169 axxxyzq
170 axxxxyzq
171 *** Failers
172 ax
173 axx
174 ayzq
175 axyzq
176
177 /[^a]+/
178 bac
179 bcdefax
180 *** Failers
181 aaaaa
182
183 /[^a]*/
184 bac
185 bcdefax
186 *** Failers
187 aaaaa
188
189 /[^a]{3,5}/
190 xyz
191 awxyza
192 abcdefa
193 abcdefghijk
194 *** Failers
195 axya
196 axa
197 aaaaa
198
199 /\d*/
200 1234b567
201 xyz
202
203 /\D*/
204 a1234b567
205 xyz
206
207 /\d+/
208 ab1234c56
209 *** Failers
210 xyz
211
212 /\D+/
213 ab123c56
214 *** Failers
215 789
216
217 /\d?A/
218 045ABC
219 ABC
220 *** Failers
221 XYZ
222
223 /\D?A/
224 ABC
225 BAC
226 9ABC
227 *** Failers
228
229 /a+/
230 aaaa
231
232 /^.*xyz/
233 xyz
234 ggggggggxyz
235
236 /^.+xyz/
237 abcdxyz
238 axyz
239 *** Failers
240 xyz
241
242 /^.?xyz/
243 xyz
244 cxyz
245
246 /^\d{2,3}X/
247 12X
248 123X
249 *** Failers
250 X
251 1X
252 1234X
253
254 /^[abcd]\d/
255 a45
256 b93
257 c99z
258 d04
259 *** Failers
260 e45
261 abcd
262 abcd1234
263 1234
264
265 /^[abcd]*\d/
266 a45
267 b93
268 c99z
269 d04
270 abcd1234
271 1234
272 *** Failers
273 e45
274 abcd
275
276 /^[abcd]+\d/
277 a45
278 b93
279 c99z
280 d04
281 abcd1234
282 *** Failers
283 1234
284 e45
285 abcd
286
287 /^a+X/
288 aX
289 aaX
290
291 /^[abcd]?\d/
292 a45
293 b93
294 c99z
295 d04
296 1234
297 *** Failers
298 abcd1234
299 e45
300
301 /^[abcd]{2,3}\d/
302 ab45
303 bcd93
304 *** Failers
305 1234
306 a36
307 abcd1234
308 ee45
309
310 /^(abc)*\d/
311 abc45
312 abcabcabc45
313 42xyz
314 *** Failers
315
316 /^(abc)+\d/
317 abc45
318 abcabcabc45
319 *** Failers
320 42xyz
321
322 /^(abc)?\d/
323 abc45
324 42xyz
325 *** Failers
326 abcabcabc45
327
328 /^(abc){2,3}\d/
329 abcabc45
330 abcabcabc45
331 *** Failers
332 abcabcabcabc45
333 abc45
334 42xyz
335
336 /1(abc|xyz)2(?1)3/
337 1abc2abc3456
338 1abc2xyz3456
339
340 /^(a*\w|ab)=(a*\w|ab)/
341 ab=ab
342
343 /^(a*\w|ab)=(?1)/
344 ab=ab
345
346 /^([^()]|\((?1)*\))*$/
347 abc
348 a(b)c
349 a(b(c))d
350 *** Failers)
351 a(b(c)d
352
353 /^>abc>([^()]|\((?1)*\))*<xyz<$/
354 >abc>123<xyz<
355 >abc>1(2)3<xyz<
356 >abc>(1(2)3)<xyz<
357
358 /^(?>a*)\d/
359 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9876
360 *** Failers
361 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
362
363 /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/x
364 <>
365 <abcd>
366 <abc <123> hij>
367 <abc <def> hij>
368 <abc<>def>
369 <abc<>
370 *** Failers
371 <abc
372
373 /^(?(?=abc)\w{3}:|\d\d)$/
374 abc:
375 12
376 *** Failers
377 123
378 xyz
379
380 /^(?(?!abc)\d\d|\w{3}:)$/
381 abc:
382 12
383 *** Failers
384 123
385 xyz
386
387 /^(?=abc)\w{5}:$/
388 abcde:
389 *** Failers
390 abc..
391 123
392 vwxyz
393
394 /^(?!abc)\d\d$/
395 12
396 *** Failers
397 abcde:
398 abc..
399 123
400 vwxyz
401
402 /(?<=abc|xy)123/
403 abc12345
404 wxy123z
405 *** Failers
406 123abc
407
408 /(?<!abc|xy)123/
409 123abc
410 mno123456
411 *** Failers
412 abc12345
413 wxy123z
414
415 /abc(?C1)xyz/
416 abcxyz
417 123abcxyz999
418
419 /(ab|cd){3,4}/C
420 ababab
421 abcdabcd
422 abcdcdcdcdcd
423
424 /^abc/
425 abcdef
426 *** Failers
427 abcdef\B
428
429 /^(a*|xyz)/
430 bcd
431 aaabcd
432 xyz
433 xyz\N
434 *** Failers
435 bcd\N
436
437 /xyz$/
438 xyz
439 xyz\n
440 *** Failers
441 xyz\Z
442 xyz\n\Z
443
444 /xyz$/m
445 xyz
446 xyz\n
447 abcxyz\npqr
448 abcxyz\npqr\Z
449 xyz\n\Z
450 *** Failers
451 xyz\Z
452
453 /\Gabc/
454 abcdef
455 defabcxyz\>3
456 *** Failers
457 defabcxyz
458
459 /^abcdef/
460 ab\P
461 abcde\P
462 abcdef\P
463 *** Failers
464 abx\P
465
466 /^a{2,4}\d+z/
467 a\P
468 aa\P
469 aa2\P
470 aaa\P
471 aaa23\P
472 aaaa12345\P
473 aa0z\P
474 aaaa4444444444444z\P
475 *** Failers
476 az\P
477 aaaaa\P
478 a56\P
479
480 /^abcdef/
481 abc\P
482 def\R
483
484 /(?<=foo)bar/
485 xyzfo\P
486 foob\P\>2
487 foobar...\R\P\>4
488 xyzfo\P
489 foobar\>2
490 *** Failers
491 xyzfo\P
492 obar\R
493
494 /(ab*(cd|ef))+X/
495 adfadadaklhlkalkajhlkjahdfasdfasdfladsfjkj\P\Z
496 lkjhlkjhlkjhlkjhabbbbbbcdaefabbbbbbbefa\P\B\Z
497 cdabbbbbbbb\P\R\B\Z
498 efabbbbbbbbbbbbbbbb\P\R\B\Z
499 bbbbbbbbbbbbcdXyasdfadf\P\R\B\Z
500
501 /(a|b)/SF>testsavedregex
502 <testsavedregex
503 abc
504 ** Failers
505 def
506
507 /the quick brown fox/
508 the quick brown fox
509 The quick brown FOX
510 What do you know about the quick brown fox?
511 What do you know about THE QUICK BROWN FOX?
512
513 /The quick brown fox/i
514 the quick brown fox
515 The quick brown FOX
516 What do you know about the quick brown fox?
517 What do you know about THE QUICK BROWN FOX?
518
519 /abcd\t\n\r\f\a\e\071\x3b\$\\\?caxyz/
520 abcd\t\n\r\f\a\e9;\$\\?caxyz
521
522 /a*abc?xyz+pqr{3}ab{2,}xy{4,5}pq{0,6}AB{0,}zz/
523 abxyzpqrrrabbxyyyypqAzz
524 abxyzpqrrrabbxyyyypqAzz
525 aabxyzpqrrrabbxyyyypqAzz
526 aaabxyzpqrrrabbxyyyypqAzz
527 aaaabxyzpqrrrabbxyyyypqAzz
528 abcxyzpqrrrabbxyyyypqAzz
529 aabcxyzpqrrrabbxyyyypqAzz
530 aaabcxyzpqrrrabbxyyyypAzz
531 aaabcxyzpqrrrabbxyyyypqAzz
532 aaabcxyzpqrrrabbxyyyypqqAzz
533 aaabcxyzpqrrrabbxyyyypqqqAzz
534 aaabcxyzpqrrrabbxyyyypqqqqAzz
535 aaabcxyzpqrrrabbxyyyypqqqqqAzz
536 aaabcxyzpqrrrabbxyyyypqqqqqqAzz
537 aaaabcxyzpqrrrabbxyyyypqAzz
538 abxyzzpqrrrabbxyyyypqAzz
539 aabxyzzzpqrrrabbxyyyypqAzz
540 aaabxyzzzzpqrrrabbxyyyypqAzz
541 aaaabxyzzzzpqrrrabbxyyyypqAzz
542 abcxyzzpqrrrabbxyyyypqAzz
543 aabcxyzzzpqrrrabbxyyyypqAzz
544 aaabcxyzzzzpqrrrabbxyyyypqAzz
545 aaaabcxyzzzzpqrrrabbxyyyypqAzz
546 aaaabcxyzzzzpqrrrabbbxyyyypqAzz
547 aaaabcxyzzzzpqrrrabbbxyyyyypqAzz
548 aaabcxyzpqrrrabbxyyyypABzz
549 aaabcxyzpqrrrabbxyyyypABBzz
550 >>>aaabxyzpqrrrabbxyyyypqAzz
551 >aaaabxyzpqrrrabbxyyyypqAzz
552 >>>>abcxyzpqrrrabbxyyyypqAzz
553 *** Failers
554 abxyzpqrrabbxyyyypqAzz
555 abxyzpqrrrrabbxyyyypqAzz
556 abxyzpqrrrabxyyyypqAzz
557 aaaabcxyzzzzpqrrrabbbxyyyyyypqAzz
558 aaaabcxyzzzzpqrrrabbbxyyypqAzz
559 aaabcxyzpqrrrabbxyyyypqqqqqqqAzz
560
561 /^(abc){1,2}zz/
562 abczz
563 abcabczz
564 *** Failers
565 zz
566 abcabcabczz
567 >>abczz
568
569 /^(b+?|a){1,2}?c/
570 bc
571 bbc
572 bbbc
573 bac
574 bbac
575 aac
576 abbbbbbbbbbbc
577 bbbbbbbbbbbac
578 *** Failers
579 aaac
580 abbbbbbbbbbbac
581
582 /^(b+|a){1,2}c/
583 bc
584 bbc
585 bbbc
586 bac
587 bbac
588 aac
589 abbbbbbbbbbbc
590 bbbbbbbbbbbac
591 *** Failers
592 aaac
593 abbbbbbbbbbbac
594
595 /^(b+|a){1,2}?bc/
596 bbc
597
598 /^(b*|ba){1,2}?bc/
599 babc
600 bbabc
601 bababc
602 *** Failers
603 bababbc
604 babababc
605
606 /^(ba|b*){1,2}?bc/
607 babc
608 bbabc
609 bababc
610 *** Failers
611 bababbc
612 babababc
613
614 /^\ca\cA\c[\c{\c:/
615 \x01\x01\e;z
616
617 /^[ab\]cde]/
618 athing
619 bthing
620 ]thing
621 cthing
622 dthing
623 ething
624 *** Failers
625 fthing
626 [thing
627 \\thing
628
629 /^[]cde]/
630 ]thing
631 cthing
632 dthing
633 ething
634 *** Failers
635 athing
636 fthing
637
638 /^[^ab\]cde]/
639 fthing
640 [thing
641 \\thing
642 *** Failers
643 athing
644 bthing
645 ]thing
646 cthing
647 dthing
648 ething
649
650 /^[^]cde]/
651 athing
652 fthing
653 *** Failers
654 ]thing
655 cthing
656 dthing
657 ething
658
659 /^\/
660
661
662 /^/
663
664
665 /^[0-9]+$/
666 0
667 1
668 2
669 3
670 4
671 5
672 6
673 7
674 8
675 9
676 10
677 100
678 *** Failers
679 abc
680
681 /^.*nter/
682 enter
683 inter
684 uponter
685
686 /^xxx[0-9]+$/
687 xxx0
688 xxx1234
689 *** Failers
690 xxx
691
692 /^.+[0-9][0-9][0-9]$/
693 x123
694 xx123
695 123456
696 *** Failers
697 123
698 x1234
699
700 /^.+?[0-9][0-9][0-9]$/
701 x123
702 xx123
703 123456
704 *** Failers
705 123
706 x1234
707
708 /^([^!]+)!(.+)=apquxz\.ixr\.zzz\.ac\.uk$/
709 abc!pqr=apquxz.ixr.zzz.ac.uk
710 *** Failers
711 !pqr=apquxz.ixr.zzz.ac.uk
712 abc!=apquxz.ixr.zzz.ac.uk
713 abc!pqr=apquxz:ixr.zzz.ac.uk
714 abc!pqr=apquxz.ixr.zzz.ac.ukk
715
716 /:/
717 Well, we need a colon: somewhere
718 *** Fail if we don't
719
720 /([\da-f:]+)$/i
721 0abc
722 abc
723 fed
724 E
725 ::
726 5f03:12C0::932e
727 fed def
728 Any old stuff
729 *** Failers
730 0zzz
731 gzzz
732 fed\x20
733 Any old rubbish
734
735 /^.*\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/
736 .1.2.3
737 A.12.123.0
738 *** Failers
739 .1.2.3333
740 1.2.3
741 1234.2.3
742
743 /^(\d+)\s+IN\s+SOA\s+(\S+)\s+(\S+)\s*\(\s*$/
744 1 IN SOA non-sp1 non-sp2(
745 1 IN SOA non-sp1 non-sp2 (
746 *** Failers
747 1IN SOA non-sp1 non-sp2(
748
749 /^[a-zA-Z\d][a-zA-Z\d\-]*(\.[a-zA-Z\d][a-zA-z\d\-]*)*\.$/
750 a.
751 Z.
752 2.
753 ab-c.pq-r.
754 sxk.zzz.ac.uk.
755 x-.y-.
756 *** Failers
757 -abc.peq.
758
759 /^\*\.[a-z]([a-z\-\d]*[a-z\d]+)?(\.[a-z]([a-z\-\d]*[a-z\d]+)?)*$/
760 *.a
761 *.b0-a
762 *.c3-b.c
763 *.c-a.b-c
764 *** Failers
765 *.0
766 *.a-
767 *.a-b.c-
768 *.c-a.0-c
769
770 /^(?=ab(de))(abd)(e)/
771 abde
772
773 /^(?!(ab)de|x)(abd)(f)/
774 abdf
775
776 /^(?=(ab(cd)))(ab)/
777 abcd
778
779 /^[\da-f](\.[\da-f])*$/i
780 a.b.c.d
781 A.B.C.D
782 a.b.c.1.2.3.C
783
784 /^\".*\"\s*(;.*)?$/
785 \"1234\"
786 \"abcd\" ;
787 \"\" ; rhubarb
788 *** Failers
789 \"1234\" : things
790
791 /^$/
792 \
793 *** Failers
794
795 / ^ a (?# begins with a) b\sc (?# then b c) $ (?# then end)/x
796 ab c
797 *** Failers
798 abc
799 ab cde
800
801 /(?x) ^ a (?# begins with a) b\sc (?# then b c) $ (?# then end)/
802 ab c
803 *** Failers
804 abc
805 ab cde
806
807 /^ a\ b[c ]d $/x
808 a bcd
809 a b d
810 *** Failers
811 abcd
812 ab d
813
814 /^(a(b(c)))(d(e(f)))(h(i(j)))(k(l(m)))$/
815 abcdefhijklm
816
817 /^(?:a(b(c)))(?:d(e(f)))(?:h(i(j)))(?:k(l(m)))$/
818 abcdefhijklm
819
820 /^[\w][\W][\s][\S][\d][\D][\b][\n][\c]][\022]/
821 a+ Z0+\x08\n\x1d\x12
822
823 /^[.^$|()*+?{,}]+/
824 .^\$(*+)|{?,?}
825
826 /^a*\w/
827 z
828 az
829 aaaz
830 a
831 aa
832 aaaa
833 a+
834 aa+
835
836 /^a*?\w/
837 z
838 az
839 aaaz
840 a
841 aa
842 aaaa
843 a+
844 aa+
845
846 /^a+\w/
847 az
848 aaaz
849 aa
850 aaaa
851 aa+
852
853 /^a+?\w/
854 az
855 aaaz
856 aa
857 aaaa
858 aa+
859
860 /^\d{8}\w{2,}/
861 1234567890
862 12345678ab
863 12345678__
864 *** Failers
865 1234567
866
867 /^[aeiou\d]{4,5}$/
868 uoie
869 1234
870 12345
871 aaaaa
872 *** Failers
873 123456
874
875 /^[aeiou\d]{4,5}?/
876 uoie
877 1234
878 12345
879 aaaaa
880 123456
881
882 /^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]/
883 From abcd Mon Sep 01 12:33:02 1997
884
885 /^From\s+\S+\s+([a-zA-Z]{3}\s+){2}\d{1,2}\s+\d\d:\d\d/
886 From abcd Mon Sep 01 12:33:02 1997
887 From abcd Mon Sep 1 12:33:02 1997
888 *** Failers
889 From abcd Sep 01 12:33:02 1997
890
891 /^12.34/s
892 12\n34
893 12\r34
894
895 /\w+(?=\t)/
896 the quick brown\t fox
897
898 /foo(?!bar)(.*)/
899 foobar is foolish see?
900
901 /(?:(?!foo)...|^.{0,2})bar(.*)/
902 foobar crowbar etc
903 barrel
904 2barrel
905 A barrel
906
907 /^(\D*)(?=\d)(?!123)/
908 abc456
909 *** Failers
910 abc123
911
912 /^1234(?# test newlines
913 inside)/
914 1234
915
916 /^1234 #comment in extended re
917 /x
918 1234
919
920 /#rhubarb
921 abcd/x
922 abcd
923
924 /^abcd#rhubarb/x
925 abcd
926
927 /(?!^)abc/
928 the abc
929 *** Failers
930 abc
931
932 /(?=^)abc/
933 abc
934 *** Failers
935 the abc
936
937 /^[ab]{1,3}(ab*|b)/
938 aabbbbb
939
940 /^[ab]{1,3}?(ab*|b)/
941 aabbbbb
942
943 /^[ab]{1,3}?(ab*?|b)/
944 aabbbbb
945
946 /^[ab]{1,3}(ab*?|b)/
947 aabbbbb
948
949 / (?: [\040\t] | \(
950 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
951 \) )* # optional leading comment
952 (?: (?:
953 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
954 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
955 |
956 " (?: # opening quote...
957 [^\\\x80-\xff\n\015"] # Anything except backslash and quote
958 | # or
959 \\ [^\x80-\xff] # Escaped something (something != CR)
960 )* " # closing quote
961 ) # initial word
962 (?: (?: [\040\t] | \(
963 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
964 \) )* \. (?: [\040\t] | \(
965 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
966 \) )* (?:
967 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
968 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
969 |
970 " (?: # opening quote...
971 [^\\\x80-\xff\n\015"] # Anything except backslash and quote
972 | # or
973 \\ [^\x80-\xff] # Escaped something (something != CR)
974 )* " # closing quote
975 ) )* # further okay, if led by a period
976 (?: [\040\t] | \(
977 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
978 \) )* @ (?: [\040\t] | \(
979 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
980 \) )* (?:
981 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
982 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
983 | \[ # [
984 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
985 \] # ]
986 ) # initial subdomain
987 (?: #
988 (?: [\040\t] | \(
989 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
990 \) )* \. # if led by a period...
991 (?: [\040\t] | \(
992 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
993 \) )* (?:
994 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
995 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
996 | \[ # [
997 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
998 \] # ]
999 ) # ...further okay
1000 )*
1001 # address
1002 | # or
1003 (?:
1004 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1005 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1006 |
1007 " (?: # opening quote...
1008 [^\\\x80-\xff\n\015"] # Anything except backslash and quote
1009 | # or
1010 \\ [^\x80-\xff] # Escaped something (something != CR)
1011 )* " # closing quote
1012 ) # one word, optionally followed by....
1013 (?:
1014 [^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037] | # atom and space parts, or...
1015 \(
1016 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1017 \) | # comments, or...
1018
1019 " (?: # opening quote...
1020 [^\\\x80-\xff\n\015"] # Anything except backslash and quote
1021 | # or
1022 \\ [^\x80-\xff] # Escaped something (something != CR)
1023 )* " # closing quote
1024 # quoted strings
1025 )*
1026 < (?: [\040\t] | \(
1027 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1028 \) )* # leading <
1029 (?: @ (?: [\040\t] | \(
1030 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1031 \) )* (?:
1032 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1033 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1034 | \[ # [
1035 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1036 \] # ]
1037 ) # initial subdomain
1038 (?: #
1039 (?: [\040\t] | \(
1040 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1041 \) )* \. # if led by a period...
1042 (?: [\040\t] | \(
1043 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1044 \) )* (?:
1045 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1046 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1047 | \[ # [
1048 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1049 \] # ]
1050 ) # ...further okay
1051 )*
1052
1053 (?: (?: [\040\t] | \(
1054 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1055 \) )* , (?: [\040\t] | \(
1056 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1057 \) )* @ (?: [\040\t] | \(
1058 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1059 \) )* (?:
1060 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1061 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1062 | \[ # [
1063 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1064 \] # ]
1065 ) # initial subdomain
1066 (?: #
1067 (?: [\040\t] | \(
1068 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1069 \) )* \. # if led by a period...
1070 (?: [\040\t] | \(
1071 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1072 \) )* (?:
1073 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1074 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1075 | \[ # [
1076 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1077 \] # ]
1078 ) # ...further okay
1079 )*
1080 )* # further okay, if led by comma
1081 : # closing colon
1082 (?: [\040\t] | \(
1083 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1084 \) )* )? # optional route
1085 (?:
1086 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1087 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1088 |
1089 " (?: # opening quote...
1090 [^\\\x80-\xff\n\015"] # Anything except backslash and quote
1091 | # or
1092 \\ [^\x80-\xff] # Escaped something (something != CR)
1093 )* " # closing quote
1094 ) # initial word
1095 (?: (?: [\040\t] | \(
1096 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1097 \) )* \. (?: [\040\t] | \(
1098 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1099 \) )* (?:
1100 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1101 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1102 |
1103 " (?: # opening quote...
1104 [^\\\x80-\xff\n\015"] # Anything except backslash and quote
1105 | # or
1106 \\ [^\x80-\xff] # Escaped something (something != CR)
1107 )* " # closing quote
1108 ) )* # further okay, if led by a period
1109 (?: [\040\t] | \(
1110 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1111 \) )* @ (?: [\040\t] | \(
1112 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1113 \) )* (?:
1114 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1115 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1116 | \[ # [
1117 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1118 \] # ]
1119 ) # initial subdomain
1120 (?: #
1121 (?: [\040\t] | \(
1122 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1123 \) )* \. # if led by a period...
1124 (?: [\040\t] | \(
1125 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1126 \) )* (?:
1127 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1128 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1129 | \[ # [
1130 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1131 \] # ]
1132 ) # ...further okay
1133 )*
1134 # address spec
1135 (?: [\040\t] | \(
1136 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1137 \) )* > # trailing >
1138 # name and address
1139 ) (?: [\040\t] | \(
1140 (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )*
1141 \) )* # optional trailing comment
1142 /x
1143 Alan Other <user\@dom.ain>
1144 <user\@dom.ain>
1145 user\@dom.ain
1146 \"A. Other\" <user.1234\@dom.ain> (a comment)
1147 A. Other <user.1234\@dom.ain> (a comment)
1148 \"/s=user/ou=host/o=place/prmd=uu.yy/admd= /c=gb/\"\@x400-re.lay
1149 A missing angle <user\@some.where
1150 *** Failers
1151 The quick brown fox
1152
1153 /[\040\t]* # Nab whitespace.
1154 (?:
1155 \( # (
1156 [^\\\x80-\xff\n\015()] * # normal*
1157 (?: # (
1158 (?: \\ [^\x80-\xff] |
1159 \( # (
1160 [^\\\x80-\xff\n\015()] * # normal*
1161 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1162 \) # )
1163 ) # special
1164 [^\\\x80-\xff\n\015()] * # normal*
1165 )* # )*
1166 \) # )
1167 [\040\t]* )* # If comment found, allow more spaces.
1168 # optional leading comment
1169 (?:
1170 (?:
1171 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1172 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1173 # Atom
1174 | # or
1175 " # "
1176 [^\\\x80-\xff\n\015"] * # normal
1177 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015"] * )* # ( special normal* )*
1178 " # "
1179 # Quoted string
1180 )
1181 [\040\t]* # Nab whitespace.
1182 (?:
1183 \( # (
1184 [^\\\x80-\xff\n\015()] * # normal*
1185 (?: # (
1186 (?: \\ [^\x80-\xff] |
1187 \( # (
1188 [^\\\x80-\xff\n\015()] * # normal*
1189 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1190 \) # )
1191 ) # special
1192 [^\\\x80-\xff\n\015()] * # normal*
1193 )* # )*
1194 \) # )
1195 [\040\t]* )* # If comment found, allow more spaces.
1196 (?:
1197 \.
1198 [\040\t]* # Nab whitespace.
1199 (?:
1200 \( # (
1201 [^\\\x80-\xff\n\015()] * # normal*
1202 (?: # (
1203 (?: \\ [^\x80-\xff] |
1204 \( # (
1205 [^\\\x80-\xff\n\015()] * # normal*
1206 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1207 \) # )
1208 ) # special
1209 [^\\\x80-\xff\n\015()] * # normal*
1210 )* # )*
1211 \) # )
1212 [\040\t]* )* # If comment found, allow more spaces.
1213 (?:
1214 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1215 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1216 # Atom
1217 | # or
1218 " # "
1219 [^\\\x80-\xff\n\015"] * # normal
1220 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015"] * )* # ( special normal* )*
1221 " # "
1222 # Quoted string
1223 )
1224 [\040\t]* # Nab whitespace.
1225 (?:
1226 \( # (
1227 [^\\\x80-\xff\n\015()] * # normal*
1228 (?: # (
1229 (?: \\ [^\x80-\xff] |
1230 \( # (
1231 [^\\\x80-\xff\n\015()] * # normal*
1232 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1233 \) # )
1234 ) # special
1235 [^\\\x80-\xff\n\015()] * # normal*
1236 )* # )*
1237 \) # )
1238 [\040\t]* )* # If comment found, allow more spaces.
1239 # additional words
1240 )*
1241 @
1242 [\040\t]* # Nab whitespace.
1243 (?:
1244 \( # (
1245 [^\\\x80-\xff\n\015()] * # normal*
1246 (?: # (
1247 (?: \\ [^\x80-\xff] |
1248 \( # (
1249 [^\\\x80-\xff\n\015()] * # normal*
1250 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1251 \) # )
1252 ) # special
1253 [^\\\x80-\xff\n\015()] * # normal*
1254 )* # )*
1255 \) # )
1256 [\040\t]* )* # If comment found, allow more spaces.
1257 (?:
1258 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1259 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1260 |
1261 \[ # [
1262 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1263 \] # ]
1264 )
1265 [\040\t]* # Nab whitespace.
1266 (?:
1267 \( # (
1268 [^\\\x80-\xff\n\015()] * # normal*
1269 (?: # (
1270 (?: \\ [^\x80-\xff] |
1271 \( # (
1272 [^\\\x80-\xff\n\015()] * # normal*
1273 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1274 \) # )
1275 ) # special
1276 [^\\\x80-\xff\n\015()] * # normal*
1277 )* # )*
1278 \) # )
1279 [\040\t]* )* # If comment found, allow more spaces.
1280 # optional trailing comments
1281 (?:
1282 \.
1283 [\040\t]* # Nab whitespace.
1284 (?:
1285 \( # (
1286 [^\\\x80-\xff\n\015()] * # normal*
1287 (?: # (
1288 (?: \\ [^\x80-\xff] |
1289 \( # (
1290 [^\\\x80-\xff\n\015()] * # normal*
1291 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1292 \) # )
1293 ) # special
1294 [^\\\x80-\xff\n\015()] * # normal*
1295 )* # )*
1296 \) # )
1297 [\040\t]* )* # If comment found, allow more spaces.
1298 (?:
1299 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1300 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1301 |
1302 \[ # [
1303 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1304 \] # ]
1305 )
1306 [\040\t]* # Nab whitespace.
1307 (?:
1308 \( # (
1309 [^\\\x80-\xff\n\015()] * # normal*
1310 (?: # (
1311 (?: \\ [^\x80-\xff] |
1312 \( # (
1313 [^\\\x80-\xff\n\015()] * # normal*
1314 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1315 \) # )
1316 ) # special
1317 [^\\\x80-\xff\n\015()] * # normal*
1318 )* # )*
1319 \) # )
1320 [\040\t]* )* # If comment found, allow more spaces.
1321 # optional trailing comments
1322 )*
1323 # address
1324 | # or
1325 (?:
1326 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1327 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1328 # Atom
1329 | # or
1330 " # "
1331 [^\\\x80-\xff\n\015"] * # normal
1332 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015"] * )* # ( special normal* )*
1333 " # "
1334 # Quoted string
1335 )
1336 # leading word
1337 [^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037] * # "normal" atoms and or spaces
1338 (?:
1339 (?:
1340 \( # (
1341 [^\\\x80-\xff\n\015()] * # normal*
1342 (?: # (
1343 (?: \\ [^\x80-\xff] |
1344 \( # (
1345 [^\\\x80-\xff\n\015()] * # normal*
1346 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1347 \) # )
1348 ) # special
1349 [^\\\x80-\xff\n\015()] * # normal*
1350 )* # )*
1351 \) # )
1352 |
1353 " # "
1354 [^\\\x80-\xff\n\015"] * # normal
1355 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015"] * )* # ( special normal* )*
1356 " # "
1357 ) # "special" comment or quoted string
1358 [^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037] * # more "normal"
1359 )*
1360 <
1361 [\040\t]* # Nab whitespace.
1362 (?:
1363 \( # (
1364 [^\\\x80-\xff\n\015()] * # normal*
1365 (?: # (
1366 (?: \\ [^\x80-\xff] |
1367 \( # (
1368 [^\\\x80-\xff\n\015()] * # normal*
1369 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1370 \) # )
1371 ) # special
1372 [^\\\x80-\xff\n\015()] * # normal*
1373 )* # )*
1374 \) # )
1375 [\040\t]* )* # If comment found, allow more spaces.
1376 # <
1377 (?:
1378 @
1379 [\040\t]* # Nab whitespace.
1380 (?:
1381 \( # (
1382 [^\\\x80-\xff\n\015()] * # normal*
1383 (?: # (
1384 (?: \\ [^\x80-\xff] |
1385 \( # (
1386 [^\\\x80-\xff\n\015()] * # normal*
1387 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1388 \) # )
1389 ) # special
1390 [^\\\x80-\xff\n\015()] * # normal*
1391 )* # )*
1392 \) # )
1393 [\040\t]* )* # If comment found, allow more spaces.
1394 (?:
1395 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1396 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1397 |
1398 \[ # [
1399 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1400 \] # ]
1401 )
1402 [\040\t]* # Nab whitespace.
1403 (?:
1404 \( # (
1405 [^\\\x80-\xff\n\015()] * # normal*
1406 (?: # (
1407 (?: \\ [^\x80-\xff] |
1408 \( # (
1409 [^\\\x80-\xff\n\015()] * # normal*
1410 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1411 \) # )
1412 ) # special
1413 [^\\\x80-\xff\n\015()] * # normal*
1414 )* # )*
1415 \) # )
1416 [\040\t]* )* # If comment found, allow more spaces.
1417 # optional trailing comments
1418 (?:
1419 \.
1420 [\040\t]* # Nab whitespace.
1421 (?:
1422 \( # (
1423 [^\\\x80-\xff\n\015()] * # normal*
1424 (?: # (
1425 (?: \\ [^\x80-\xff] |
1426 \( # (
1427 [^\\\x80-\xff\n\015()] * # normal*
1428 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1429 \) # )
1430 ) # special
1431 [^\\\x80-\xff\n\015()] * # normal*
1432 )* # )*
1433 \) # )
1434 [\040\t]* )* # If comment found, allow more spaces.
1435 (?:
1436 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1437 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1438 |
1439 \[ # [
1440 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1441 \] # ]
1442 )
1443 [\040\t]* # Nab whitespace.
1444 (?:
1445 \( # (
1446 [^\\\x80-\xff\n\015()] * # normal*
1447 (?: # (
1448 (?: \\ [^\x80-\xff] |
1449 \( # (
1450 [^\\\x80-\xff\n\015()] * # normal*
1451 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1452 \) # )
1453 ) # special
1454 [^\\\x80-\xff\n\015()] * # normal*
1455 )* # )*
1456 \) # )
1457 [\040\t]* )* # If comment found, allow more spaces.
1458 # optional trailing comments
1459 )*
1460 (?: ,
1461 [\040\t]* # Nab whitespace.
1462 (?:
1463 \( # (
1464 [^\\\x80-\xff\n\015()] * # normal*
1465 (?: # (
1466 (?: \\ [^\x80-\xff] |
1467 \( # (
1468 [^\\\x80-\xff\n\015()] * # normal*
1469 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1470 \) # )
1471 ) # special
1472 [^\\\x80-\xff\n\015()] * # normal*
1473 )* # )*
1474 \) # )
1475 [\040\t]* )* # If comment found, allow more spaces.
1476 @
1477 [\040\t]* # Nab whitespace.
1478 (?:
1479 \( # (
1480 [^\\\x80-\xff\n\015()] * # normal*
1481 (?: # (
1482 (?: \\ [^\x80-\xff] |
1483 \( # (
1484 [^\\\x80-\xff\n\015()] * # normal*
1485 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1486 \) # )
1487 ) # special
1488 [^\\\x80-\xff\n\015()] * # normal*
1489 )* # )*
1490 \) # )
1491 [\040\t]* )* # If comment found, allow more spaces.
1492 (?:
1493 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1494 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1495 |
1496 \[ # [
1497 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1498 \] # ]
1499 )
1500 [\040\t]* # Nab whitespace.
1501 (?:
1502 \( # (
1503 [^\\\x80-\xff\n\015()] * # normal*
1504 (?: # (
1505 (?: \\ [^\x80-\xff] |
1506 \( # (
1507 [^\\\x80-\xff\n\015()] * # normal*
1508 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1509 \) # )
1510 ) # special
1511 [^\\\x80-\xff\n\015()] * # normal*
1512 )* # )*
1513 \) # )
1514 [\040\t]* )* # If comment found, allow more spaces.
1515 # optional trailing comments
1516 (?:
1517 \.
1518 [\040\t]* # Nab whitespace.
1519 (?:
1520 \( # (
1521 [^\\\x80-\xff\n\015()] * # normal*
1522 (?: # (
1523 (?: \\ [^\x80-\xff] |
1524 \( # (
1525 [^\\\x80-\xff\n\015()] * # normal*
1526 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1527 \) # )
1528 ) # special
1529 [^\\\x80-\xff\n\015()] * # normal*
1530 )* # )*
1531 \) # )
1532 [\040\t]* )* # If comment found, allow more spaces.
1533 (?:
1534 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1535 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1536 |
1537 \[ # [
1538 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1539 \] # ]
1540 )
1541 [\040\t]* # Nab whitespace.
1542 (?:
1543 \( # (
1544 [^\\\x80-\xff\n\015()] * # normal*
1545 (?: # (
1546 (?: \\ [^\x80-\xff] |
1547 \( # (
1548 [^\\\x80-\xff\n\015()] * # normal*
1549 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1550 \) # )
1551 ) # special
1552 [^\\\x80-\xff\n\015()] * # normal*
1553 )* # )*
1554 \) # )
1555 [\040\t]* )* # If comment found, allow more spaces.
1556 # optional trailing comments
1557 )*
1558 )* # additional domains
1559 :
1560 [\040\t]* # Nab whitespace.
1561 (?:
1562 \( # (
1563 [^\\\x80-\xff\n\015()] * # normal*
1564 (?: # (
1565 (?: \\ [^\x80-\xff] |
1566 \( # (
1567 [^\\\x80-\xff\n\015()] * # normal*
1568 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1569 \) # )
1570 ) # special
1571 [^\\\x80-\xff\n\015()] * # normal*
1572 )* # )*
1573 \) # )
1574 [\040\t]* )* # If comment found, allow more spaces.
1575 # optional trailing comments
1576 )? # optional route
1577 (?:
1578 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1579 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1580 # Atom
1581 | # or
1582 " # "
1583 [^\\\x80-\xff\n\015"] * # normal
1584 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015"] * )* # ( special normal* )*
1585 " # "
1586 # Quoted string
1587 )
1588 [\040\t]* # Nab whitespace.
1589 (?:
1590 \( # (
1591 [^\\\x80-\xff\n\015()] * # normal*
1592 (?: # (
1593 (?: \\ [^\x80-\xff] |
1594 \( # (
1595 [^\\\x80-\xff\n\015()] * # normal*
1596 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1597 \) # )
1598 ) # special
1599 [^\\\x80-\xff\n\015()] * # normal*
1600 )* # )*
1601 \) # )
1602 [\040\t]* )* # If comment found, allow more spaces.
1603 (?:
1604 \.
1605 [\040\t]* # Nab whitespace.
1606 (?:
1607 \( # (
1608 [^\\\x80-\xff\n\015()] * # normal*
1609 (?: # (
1610 (?: \\ [^\x80-\xff] |
1611 \( # (
1612 [^\\\x80-\xff\n\015()] * # normal*
1613 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1614 \) # )
1615 ) # special
1616 [^\\\x80-\xff\n\015()] * # normal*
1617 )* # )*
1618 \) # )
1619 [\040\t]* )* # If comment found, allow more spaces.
1620 (?:
1621 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1622 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1623 # Atom
1624 | # or
1625 " # "
1626 [^\\\x80-\xff\n\015"] * # normal
1627 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015"] * )* # ( special normal* )*
1628 " # "
1629 # Quoted string
1630 )
1631 [\040\t]* # Nab whitespace.
1632 (?:
1633 \( # (
1634 [^\\\x80-\xff\n\015()] * # normal*
1635 (?: # (
1636 (?: \\ [^\x80-\xff] |
1637 \( # (
1638 [^\\\x80-\xff\n\015()] * # normal*
1639 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1640 \) # )
1641 ) # special
1642 [^\\\x80-\xff\n\015()] * # normal*
1643 )* # )*
1644 \) # )
1645 [\040\t]* )* # If comment found, allow more spaces.
1646 # additional words
1647 )*
1648 @
1649 [\040\t]* # Nab whitespace.
1650 (?:
1651 \( # (
1652 [^\\\x80-\xff\n\015()] * # normal*
1653 (?: # (
1654 (?: \\ [^\x80-\xff] |
1655 \( # (
1656 [^\\\x80-\xff\n\015()] * # normal*
1657 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1658 \) # )
1659 ) # special
1660 [^\\\x80-\xff\n\015()] * # normal*
1661 )* # )*
1662 \) # )
1663 [\040\t]* )* # If comment found, allow more spaces.
1664 (?:
1665 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1666 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1667 |
1668 \[ # [
1669 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1670 \] # ]
1671 )
1672 [\040\t]* # Nab whitespace.
1673 (?:
1674 \( # (
1675 [^\\\x80-\xff\n\015()] * # normal*
1676 (?: # (
1677 (?: \\ [^\x80-\xff] |
1678 \( # (
1679 [^\\\x80-\xff\n\015()] * # normal*
1680 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1681 \) # )
1682 ) # special
1683 [^\\\x80-\xff\n\015()] * # normal*
1684 )* # )*
1685 \) # )
1686 [\040\t]* )* # If comment found, allow more spaces.
1687 # optional trailing comments
1688 (?:
1689 \.
1690 [\040\t]* # Nab whitespace.
1691 (?:
1692 \( # (
1693 [^\\\x80-\xff\n\015()] * # normal*
1694 (?: # (
1695 (?: \\ [^\x80-\xff] |
1696 \( # (
1697 [^\\\x80-\xff\n\015()] * # normal*
1698 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1699 \) # )
1700 ) # special
1701 [^\\\x80-\xff\n\015()] * # normal*
1702 )* # )*
1703 \) # )
1704 [\040\t]* )* # If comment found, allow more spaces.
1705 (?:
1706 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters...
1707 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
1708 |
1709 \[ # [
1710 (?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff
1711 \] # ]
1712 )
1713 [\040\t]* # Nab whitespace.
1714 (?:
1715 \( # (
1716 [^\\\x80-\xff\n\015()] * # normal*
1717 (?: # (
1718 (?: \\ [^\x80-\xff] |
1719 \( # (
1720 [^\\\x80-\xff\n\015()] * # normal*
1721 (?: \\ [^\x80-\xff] [^\\\x80-\xff\n\015()] * )* # (special normal*)*
1722 \) # )
1723 ) # special
1724 [^\\\x80-\xff\n\015()] * # normal*
1725 )* # )*
1726 \) # )
1727 [\040\t]* )* # If comment found, allow more spaces.
1728 # optional trailing comments
1729 )*
1730 # address spec
1731 > # >
1732 # name and address
1733 )
1734 /x
1735 Alan Other <user\@dom.ain>
1736 <user\@dom.ain>
1737 user\@dom.ain
1738 \"A. Other\" <user.1234\@dom.ain> (a comment)
1739 A. Other <user.1234\@dom.ain> (a comment)
1740 \"/s=user/ou=host/o=place/prmd=uu.yy/admd= /c=gb/\"\@x400-re.lay
1741 A missing angle <user\@some.where
1742 *** Failers
1743 The quick brown fox
1744
1745 /abc\0def\00pqr\000xyz\0000AB/
1746 abc\0def\00pqr\000xyz\0000AB
1747 abc456 abc\0def\00pqr\000xyz\0000ABCDE
1748
1749 /abc\x0def\x00pqr\x000xyz\x0000AB/
1750 abc\x0def\x00pqr\x000xyz\x0000AB
1751 abc456 abc\x0def\x00pqr\x000xyz\x0000ABCDE
1752
1753 /^[\000-\037]/
1754 \0A
1755 \01B
1756 \037C
1757
1758 /\0*/
1759 \0\0\0\0
1760
1761 /A\x0{2,3}Z/
1762 The A\x0\x0Z
1763 An A\0\x0\0Z
1764 *** Failers
1765 A\0Z
1766 A\0\x0\0\x0Z
1767
1768 /^\s/
1769 \040abc
1770 \x0cabc
1771 \nabc
1772 \rabc
1773 \tabc
1774 *** Failers
1775 abc
1776
1777 /^a b
1778 c/x
1779 abc
1780
1781 /ab{1,3}bc/
1782 abbbbc
1783 abbbc
1784 abbc
1785 *** Failers
1786 abc
1787 abbbbbc
1788
1789 /([^.]*)\.([^:]*):[T ]+(.*)/
1790 track1.title:TBlah blah blah
1791
1792 /([^.]*)\.([^:]*):[T ]+(.*)/i
1793 track1.title:TBlah blah blah
1794
1795 /([^.]*)\.([^:]*):[t ]+(.*)/i
1796 track1.title:TBlah blah blah
1797
1798 /^[W-c]+$/
1799 WXY_^abc
1800 *** Failers
1801 wxy
1802
1803 /^[W-c]+$/i
1804 WXY_^abc
1805 wxy_^ABC
1806
1807 /^[\x3f-\x5F]+$/i
1808 WXY_^abc
1809 wxy_^ABC
1810
1811 /^abc$/m
1812 abc
1813 qqq\nabc
1814 abc\nzzz
1815 qqq\nabc\nzzz
1816
1817 /^abc$/
1818 abc
1819 *** Failers
1820 qqq\nabc
1821 abc\nzzz
1822 qqq\nabc\nzzz
1823
1824 /\Aabc\Z/m
1825 abc
1826 abc\n
1827 *** Failers
1828 qqq\nabc
1829 abc\nzzz
1830 qqq\nabc\nzzz
1831
1832 /\A(.)*\Z/s
1833 abc\ndef
1834
1835 /\A(.)*\Z/m
1836 *** Failers
1837 abc\ndef
1838
1839 /(?:b)|(?::+)/
1840 b::c
1841 c::b
1842
1843 /[-az]+/
1844 az-
1845 *** Failers
1846 b
1847
1848 /[az-]+/
1849 za-
1850 *** Failers
1851 b
1852
1853 /[a\-z]+/
1854 a-z
1855 *** Failers
1856 b
1857
1858 /[a-z]+/
1859 abcdxyz
1860
1861 /[\d-]+/
1862 12-34
1863 *** Failers
1864 aaa
1865
1866 /[\d-z]+/
1867 12-34z
1868 *** Failers
1869 aaa
1870
1871 /\x5c/
1872 \\
1873
1874 /\x20Z/
1875 the Zoo
1876 *** Failers
1877 Zulu
1878
1879 /ab{3cd/
1880 ab{3cd
1881
1882 /ab{3,cd/
1883 ab{3,cd
1884
1885 /ab{3,4a}cd/
1886 ab{3,4a}cd
1887
1888 /{4,5a}bc/
1889 {4,5a}bc
1890
1891 /^a.b/<lf>
1892 a\rb
1893 *** Failers
1894 a\nb
1895
1896 /abc$/
1897 abc
1898 abc\n
1899 *** Failers
1900 abc\ndef
1901
1902 /(abc)\123/
1903 abc\x53
1904
1905 /(abc)\223/
1906 abc\x93
1907
1908 /(abc)\323/
1909 abc\xd3
1910
1911 /(abc)\100/
1912 abc\x40
1913 abc\100
1914
1915 /(abc)\1000/
1916 abc\x400
1917 abc\x40\x30
1918 abc\1000
1919 abc\100\x30
1920 abc\100\060
1921 abc\100\60
1922
1923 /abc\81/
1924 abc\081
1925 abc\0\x38\x31
1926
1927 /abc\91/
1928 abc\091
1929 abc\0\x39\x31
1930
1931 /(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)\12\123/
1932 abcdefghijk\12S
1933
1934 /ab\idef/
1935 abidef
1936
1937 /a{0}bc/
1938 bc
1939
1940 /(a|(bc)){0,0}?xyz/
1941 xyz
1942
1943 /abc[\10]de/
1944 abc\010de
1945
1946 /abc[\1]de/
1947 abc\1de
1948
1949 /(abc)[\1]de/
1950 abc\1de
1951
1952 /(?s)a.b/
1953 a\nb
1954
1955 /^([^a])([^\b])([^c]*)([^d]{3,4})/
1956 baNOTccccd
1957 baNOTcccd
1958 baNOTccd
1959 bacccd
1960 *** Failers
1961 anything
1962 b\bc
1963 baccd
1964
1965 /[^a]/
1966 Abc
1967
1968 /[^a]/i
1969 Abc
1970
1971 /[^a]+/
1972 AAAaAbc
1973
1974 /[^a]+/i
1975 AAAaAbc
1976
1977 /[^a]+/
1978 bbb\nccc
1979
1980 /[^k]$/
1981 abc
1982 *** Failers
1983 abk
1984
1985 /[^k]{2,3}$/
1986 abc
1987 kbc
1988 kabc
1989 *** Failers
1990 abk
1991 akb
1992 akk
1993
1994 /^\d{8,}\@.+[^k]$/
1995 12345678\@a.b.c.d
1996 123456789\@x.y.z
1997 *** Failers
1998 12345678\@x.y.uk
1999 1234567\@a.b.c.d
2000
2001 /[^a]/
2002 aaaabcd
2003 aaAabcd
2004
2005 /[^a]/i
2006 aaaabcd
2007 aaAabcd
2008
2009 /[^az]/
2010 aaaabcd
2011 aaAabcd
2012
2013 /[^az]/i
2014 aaaabcd
2015 aaAabcd
2016
2017 /\000\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\040\041\042\043\044\045\046\047\050\051\052\053\054\055\056\057\060\061\062\063\064\065\066\067\070\071\072\073\074\075\076\077\100\101\102\103\104\105\106\107\110\111\112\113\114\115\116\117\120\121\122\123\124\125\126\127\130\131\132\133\134\135\136\137\140\141\142\143\144\145\146\147\150\151\152\153\154\155\156\157\160\161\162\163\164\165\166\167\170\171\172\173\174\175\176\177\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257\260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377/
2018 \000\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037\040\041\042\043\044\045\046\047\050\051\052\053\054\055\056\057\060\061\062\063\064\065\066\067\070\071\072\073\074\075\076\077\100\101\102\103\104\105\106\107\110\111\112\113\114\115\116\117\120\121\122\123\124\125\126\127\130\131\132\133\134\135\136\137\140\141\142\143\144\145\146\147\150\151\152\153\154\155\156\157\160\161\162\163\164\165\166\167\170\171\172\173\174\175\176\177\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257\260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377
2019
2020 /P[^*]TAIRE[^*]{1,6}?LL/
2021 xxxxxxxxxxxPSTAIREISLLxxxxxxxxx
2022
2023 /P[^*]TAIRE[^*]{1,}?LL/
2024 xxxxxxxxxxxPSTAIREISLLxxxxxxxxx
2025
2026 /(\.\d\d[1-9]?)\d+/
2027 1.230003938
2028 1.875000282
2029 1.235
2030
2031 /(\.\d\d((?=0)|\d(?=\d)))/
2032 1.230003938
2033 1.875000282
2034 *** Failers
2035 1.235
2036
2037 /a(?)b/
2038 ab
2039
2040 /\b(foo)\s+(\w+)/i
2041 Food is on the foo table
2042
2043 /foo(.*)bar/
2044 The food is under the bar in the barn.
2045
2046 /foo(.*?)bar/
2047 The food is under the bar in the barn.
2048
2049 /(.*)(\d*)/
2050 I have 2 numbers: 53147
2051
2052 /(.*)(\d+)/
2053 I have 2 numbers: 53147
2054
2055 /(.*?)(\d*)/
2056 I have 2 numbers: 53147
2057
2058 /(.*?)(\d+)/
2059 I have 2 numbers: 53147
2060
2061 /(.*)(\d+)$/
2062 I have 2 numbers: 53147
2063
2064 /(.*?)(\d+)$/
2065 I have 2 numbers: 53147
2066
2067 /(.*)\b(\d+)$/
2068 I have 2 numbers: 53147
2069
2070 /(.*\D)(\d+)$/
2071 I have 2 numbers: 53147
2072
2073 /^\D*(?!123)/
2074 ABC123
2075
2076 /^(\D*)(?=\d)(?!123)/
2077 ABC445
2078 *** Failers
2079 ABC123
2080
2081 /^[W-]46]/
2082 W46]789
2083 -46]789
2084 *** Failers
2085 Wall
2086 Zebra
2087 42
2088 [abcd]
2089 ]abcd[
2090
2091 /^[W-\]46]/
2092 W46]789
2093 Wall
2094 Zebra
2095 Xylophone
2096 42
2097 [abcd]
2098 ]abcd[
2099 \\backslash
2100 *** Failers
2101 -46]789
2102 well
2103
2104 /\d\d\/\d\d\/\d\d\d\d/
2105 01/01/2000
2106
2107 /word (?:[a-zA-Z0-9]+ ){0,10}otherword/
2108 word cat dog elephant mussel cow horse canary baboon snake shark otherword
2109 word cat dog elephant mussel cow horse canary baboon snake shark
2110
2111 /word (?:[a-zA-Z0-9]+ ){0,300}otherword/
2112 word cat dog elephant mussel cow horse canary baboon snake shark the quick brown fox and the lazy dog and several other words getting close to thirty by now I hope
2113
2114 /^(a){0,0}/
2115 bcd
2116 abc
2117 aab
2118
2119 /^(a){0,1}/
2120 bcd
2121 abc
2122 aab
2123
2124 /^(a){0,2}/
2125 bcd
2126 abc
2127 aab
2128
2129 /^(a){0,3}/
2130 bcd
2131 abc
2132 aab
2133 aaa
2134
2135 /^(a){0,}/
2136 bcd
2137 abc
2138 aab
2139 aaa
2140 aaaaaaaa
2141
2142 /^(a){1,1}/
2143 bcd
2144 abc
2145 aab
2146
2147 /^(a){1,2}/
2148 bcd
2149 abc
2150 aab
2151
2152 /^(a){1,3}/
2153 bcd
2154 abc
2155 aab
2156 aaa
2157
2158 /^(a){1,}/
2159 bcd
2160 abc
2161 aab
2162 aaa
2163 aaaaaaaa
2164
2165 /.*\.gif/
2166 borfle\nbib.gif\nno
2167
2168 /.{0,}\.gif/
2169 borfle\nbib.gif\nno
2170
2171 /.*\.gif/m
2172 borfle\nbib.gif\nno
2173
2174 /.*\.gif/s
2175 borfle\nbib.gif\nno
2176
2177 /.*\.gif/ms
2178 borfle\nbib.gif\nno
2179
2180 /.*$/
2181 borfle\nbib.gif\nno
2182
2183 /.*$/m
2184 borfle\nbib.gif\nno
2185
2186 /.*$/s
2187 borfle\nbib.gif\nno
2188
2189 /.*$/ms
2190 borfle\nbib.gif\nno
2191
2192 /.*$/
2193 borfle\nbib.gif\nno\n
2194
2195 /.*$/m
2196 borfle\nbib.gif\nno\n
2197
2198 /.*$/s
2199 borfle\nbib.gif\nno\n
2200
2201 /.*$/ms
2202 borfle\nbib.gif\nno\n
2203
2204 /(.*X|^B)/
2205 abcde\n1234Xyz
2206 BarFoo
2207 *** Failers
2208 abcde\nBar
2209
2210 /(.*X|^B)/m
2211 abcde\n1234Xyz
2212 BarFoo
2213 abcde\nBar
2214
2215 /(.*X|^B)/s
2216 abcde\n1234Xyz
2217 BarFoo
2218 *** Failers
2219 abcde\nBar
2220
2221 /(.*X|^B)/ms
2222 abcde\n1234Xyz
2223 BarFoo
2224 abcde\nBar
2225
2226 /(?s)(.*X|^B)/
2227 abcde\n1234Xyz
2228 BarFoo
2229 *** Failers
2230 abcde\nBar
2231
2232 /(?s:.*X|^B)/
2233 abcde\n1234Xyz
2234 BarFoo
2235 *** Failers
2236 abcde\nBar
2237
2238 /^.*B/
2239 **** Failers
2240 abc\nB
2241
2242 /(?s)^.*B/
2243 abc\nB
2244
2245 /(?m)^.*B/
2246 abc\nB
2247
2248 /(?ms)^.*B/
2249 abc\nB
2250
2251 /(?ms)^B/
2252 abc\nB
2253
2254 /(?s)B$/
2255 B\n
2256
2257 /^[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/
2258 123456654321
2259
2260 /^\d\d\d\d\d\d\d\d\d\d\d\d/
2261 123456654321
2262
2263 /^[\d][\d][\d][\d][\d][\d][\d][\d][\d][\d][\d][\d]/
2264 123456654321
2265
2266 /^[abc]{12}/
2267 abcabcabcabc
2268
2269 /^[a-c]{12}/
2270 abcabcabcabc
2271
2272 /^(a|b|c){12}/
2273 abcabcabcabc
2274
2275 /^[abcdefghijklmnopqrstuvwxy0123456789]/
2276 n
2277 *** Failers
2278 z
2279
2280 /abcde{0,0}/
2281 abcd
2282 *** Failers
2283 abce
2284
2285 /ab[cd]{0,0}e/
2286 abe
2287 *** Failers
2288 abcde
2289
2290 /ab(c){0,0}d/
2291 abd
2292 *** Failers
2293 abcd
2294
2295 /a(b*)/
2296 a
2297 ab
2298 abbbb
2299 *** Failers
2300 bbbbb
2301
2302 /ab\d{0}e/
2303 abe
2304 *** Failers
2305 ab1e
2306
2307 /"([^\\"]+|\\.)*"/
2308 the \"quick\" brown fox
2309 \"the \\\"quick\\\" brown fox\"
2310
2311 /.*?/g+
2312 abc
2313
2314 /\b/g+
2315 abc
2316
2317 /\b/+g
2318 abc
2319
2320 //g
2321 abc
2322
2323 /<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>/is
2324 <TR BGCOLOR='#DBE9E9'><TD align=left valign=top>43.<a href='joblist.cfm?JobID=94 6735&Keyword='>Word Processor<BR>(N-1286)</a></TD><TD align=left valign=top>Lega lstaff.com</TD><TD align=left valign=top>CA - Statewide</TD></TR>
2325
2326 /a[^a]b/
2327 acb
2328 a\nb
2329
2330 /a.b/
2331 acb
2332 *** Failers
2333 a\nb
2334
2335 /a[^a]b/s
2336 acb
2337 a\nb
2338
2339 /a.b/s
2340 acb
2341 a\nb
2342
2343 /^(b+?|a){1,2}?c/
2344 bac
2345 bbac
2346 bbbac
2347 bbbbac
2348 bbbbbac
2349
2350 /^(b+|a){1,2}?c/
2351 bac
2352 bbac
2353 bbbac
2354 bbbbac
2355 bbbbbac
2356
2357 /(?!\A)x/m
2358 x\nb\n
2359 a\bx\n
2360
2361 /\x0{ab}/
2362 \0{ab}
2363
2364 /(A|B)*?CD/
2365 CD
2366
2367 /(A|B)*CD/
2368 CD
2369
2370 /(?<!bar)foo/
2371 foo
2372 catfood
2373 arfootle
2374 rfoosh
2375 *** Failers
2376 barfoo
2377 towbarfoo
2378
2379 /\w{3}(?<!bar)foo/
2380 catfood
2381 *** Failers
2382 foo
2383 barfoo
2384 towbarfoo
2385
2386 /(?<=(foo)a)bar/
2387 fooabar
2388 *** Failers
2389 bar
2390 foobbar
2391
2392 /\Aabc\z/m
2393 abc
2394 *** Failers
2395 abc\n
2396 qqq\nabc
2397 abc\nzzz
2398 qqq\nabc\nzzz
2399
2400 "(?>.*/)foo"
2401 /this/is/a/very/long/line/in/deed/with/very/many/slashes/in/it/you/see/
2402
2403 "(?>.*/)foo"
2404 /this/is/a/very/long/line/in/deed/with/very/many/slashes/in/and/foo
2405
2406 /(?>(\.\d\d[1-9]?))\d+/
2407 1.230003938
2408 1.875000282
2409 *** Failers
2410 1.235
2411
2412 /^((?>\w+)|(?>\s+))*$/
2413 now is the time for all good men to come to the aid of the party
2414 *** Failers
2415 this is not a line with only words and spaces!
2416
2417 /(\d+)(\w)/
2418 12345a
2419 12345+
2420
2421 /((?>\d+))(\w)/
2422 12345a
2423 *** Failers
2424 12345+
2425
2426 /(?>a+)b/
2427 aaab
2428
2429 /((?>a+)b)/
2430 aaab
2431
2432 /(?>(a+))b/
2433 aaab
2434
2435 /(?>b)+/
2436 aaabbbccc
2437
2438 /(?>a+|b+|c+)*c/
2439 aaabbbbccccd
2440
2441 /(a+|b+|c+)*c/
2442 aaabbbbccccd
2443
2444 /((?>[^()]+)|\([^()]*\))+/
2445 ((abc(ade)ufh()()x
2446
2447 /\(((?>[^()]+)|\([^()]+\))+\)/
2448 (abc)
2449 (abc(def)xyz)
2450 *** Failers
2451 ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
2452
2453 /a(?-i)b/i
2454 ab
2455 Ab
2456 *** Failers
2457 aB
2458 AB
2459
2460 /(a (?x)b c)d e/
2461 a bcd e
2462 *** Failers
2463 a b cd e
2464 abcd e
2465 a bcde
2466
2467 /(a b(?x)c d (?-x)e f)/
2468 a bcde f
2469 *** Failers
2470 abcdef
2471
2472 /(a(?i)b)c/
2473 abc
2474 aBc
2475 *** Failers
2476 abC
2477 aBC
2478 Abc
2479 ABc
2480 ABC
2481 AbC
2482
2483 /a(?i:b)c/
2484 abc
2485 aBc
2486 *** Failers
2487 ABC
2488 abC
2489 aBC
2490
2491 /a(?i:b)*c/
2492 aBc
2493 aBBc
2494 *** Failers
2495 aBC
2496 aBBC
2497
2498 /a(?=b(?i)c)\w\wd/
2499 abcd
2500 abCd
2501 *** Failers
2502 aBCd
2503 abcD
2504
2505 /(?s-i:more.*than).*million/i
2506 more than million
2507 more than MILLION
2508 more \n than Million
2509 *** Failers
2510 MORE THAN MILLION
2511 more \n than \n million
2512
2513 /(?:(?s-i)more.*than).*million/i
2514 more than million
2515 more than MILLION
2516 more \n than Million
2517 *** Failers
2518 MORE THAN MILLION
2519 more \n than \n million
2520
2521 /(?>a(?i)b+)+c/
2522 abc
2523 aBbc
2524 aBBc
2525 *** Failers
2526 Abc
2527 abAb
2528 abbC
2529
2530 /(?=a(?i)b)\w\wc/
2531 abc
2532 aBc
2533 *** Failers
2534 Ab
2535 abC
2536 aBC
2537
2538 /(?<=a(?i)b)(\w\w)c/
2539 abxxc
2540 aBxxc
2541 *** Failers
2542 Abxxc
2543 ABxxc
2544 abxxC
2545
2546 /^(?(?=abc)\w{3}:|\d\d)$/
2547 abc:
2548 12
2549 *** Failers
2550 123
2551 xyz
2552
2553 /^(?(?!abc)\d\d|\w{3}:)$/
2554 abc:
2555 12
2556 *** Failers
2557 123
2558 xyz
2559
2560 /(?(?<=foo)bar|cat)/
2561 foobar
2562 cat
2563 fcat
2564 focat
2565 *** Failers
2566 foocat
2567
2568 /(?(?<!foo)cat|bar)/
2569 foobar
2570 cat
2571 fcat
2572 focat
2573 *** Failers
2574 foocat
2575
2576 /(?>a*)*/
2577 a
2578 aa
2579 aaaa
2580
2581 /(abc|)+/
2582 abc
2583 abcabc
2584 abcabcabc
2585 xyz
2586
2587 /([a]*)*/
2588 a
2589 aaaaa
2590
2591 /([ab]*)*/
2592 a
2593 b
2594 ababab
2595 aaaabcde
2596 bbbb
2597
2598 /([^a]*)*/
2599 b
2600 bbbb
2601 aaa
2602
2603 /([^ab]*)*/
2604 cccc
2605 abab
2606
2607 /([a]*?)*/
2608 a
2609 aaaa
2610
2611 /([ab]*?)*/
2612 a
2613 b
2614 abab
2615 baba
2616
2617 /([^a]*?)*/
2618 b
2619 bbbb
2620 aaa
2621
2622 /([^ab]*?)*/
2623 c
2624 cccc
2625 baba
2626
2627 /(?>a*)*/
2628 a
2629 aaabcde
2630
2631 /((?>a*))*/
2632 aaaaa
2633 aabbaa
2634
2635 /((?>a*?))*/
2636 aaaaa
2637 aabbaa
2638
2639 /(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /x
2640 12-sep-98
2641 12-09-98
2642 *** Failers
2643 sep-12-98
2644
2645 /(?i:saturday|sunday)/
2646 saturday
2647 sunday
2648 Saturday
2649 Sunday
2650 SATURDAY
2651 SUNDAY
2652 SunDay
2653
2654 /(a(?i)bc|BB)x/
2655 abcx
2656 aBCx
2657 bbx
2658 BBx
2659 *** Failers
2660 abcX
2661 aBCX
2662 bbX
2663 BBX
2664
2665 /^([ab](?i)[cd]|[ef])/
2666 ac
2667 aC
2668 bD
2669 elephant
2670 Europe
2671 frog
2672 France
2673 *** Failers
2674 Africa
2675
2676 /^(ab|a(?i)[b-c](?m-i)d|x(?i)y|z)/
2677 ab
2678 aBd
2679 xy
2680 xY
2681 zebra
2682 Zambesi
2683 *** Failers
2684 aCD
2685 XY
2686
2687 /(?<=foo\n)^bar/m
2688 foo\nbar
2689 *** Failers
2690 bar
2691 baz\nbar
2692
2693 /(?<=(?<!foo)bar)baz/
2694 barbaz
2695 barbarbaz
2696 koobarbaz
2697 *** Failers
2698 baz
2699 foobarbaz
2700
2701 /The following tests are taken from the Perl 5.005 test suite; some of them/
2702 /are compatible with 5.004, but I'd rather not have to sort them out./
2703
2704 /abc/
2705 abc
2706 xabcy
2707 ababc
2708 *** Failers
2709 xbc
2710 axc
2711 abx
2712
2713 /ab*c/
2714 abc
2715
2716 /ab*bc/
2717 abc
2718 abbc
2719 abbbbc
2720
2721 /.{1}/
2722 abbbbc
2723
2724 /.{3,4}/
2725 abbbbc
2726
2727 /ab{0,}bc/
2728 abbbbc
2729
2730 /ab+bc/
2731 abbc
2732 *** Failers
2733 abc
2734 abq
2735
2736 /ab+bc/
2737 abbbbc
2738
2739 /ab{1,}bc/
2740 abbbbc
2741
2742 /ab{1,3}bc/
2743 abbbbc
2744
2745 /ab{3,4}bc/
2746 abbbbc
2747
2748 /ab{4,5}bc/
2749 *** Failers
2750 abq
2751 abbbbc
2752
2753 /ab?bc/
2754 abbc
2755 abc
2756
2757 /ab{0,1}bc/
2758 abc
2759
2760 /ab?bc/
2761
2762 /ab?c/
2763 abc
2764
2765 /ab{0,1}c/
2766 abc
2767
2768 /^abc$/
2769 abc
2770 *** Failers
2771 abbbbc
2772 abcc
2773
2774 /^abc/
2775 abcc
2776
2777 /^abc$/
2778
2779 /abc$/
2780 aabc
2781 *** Failers
2782 aabc
2783 aabcd
2784
2785 /^/
2786 abc
2787
2788 /$/
2789 abc
2790
2791 /a.c/
2792 abc
2793 axc
2794
2795 /a.*c/
2796 axyzc
2797
2798 /a[bc]d/
2799 abd
2800 *** Failers
2801 axyzd
2802 abc
2803
2804 /a[b-d]e/
2805 ace
2806
2807 /a[b-d]/
2808 aac
2809
2810 /a[-b]/
2811 a-
2812
2813 /a[b-]/
2814 a-
2815
2816 /a]/
2817 a]
2818
2819 /a[]]b/
2820 a]b
2821
2822 /a[^bc]d/
2823 aed
2824 *** Failers
2825 abd
2826 abd
2827
2828 /a[^-b]c/
2829 adc
2830
2831 /a[^]b]c/
2832 adc
2833 *** Failers
2834 a-c
2835 a]c
2836
2837 /\ba\b/
2838 a-
2839 -a
2840 -a-
2841
2842 /\by\b/
2843 *** Failers
2844 xy
2845 yz
2846 xyz
2847
2848 /\Ba\B/
2849 *** Failers
2850 a-
2851 -a
2852 -a-
2853
2854 /\By\b/
2855 xy
2856
2857 /\by\B/
2858 yz
2859
2860 /\By\B/
2861 xyz
2862
2863 /\w/
2864 a
2865
2866 /\W/
2867 -
2868 *** Failers
2869 -
2870 a
2871
2872 /a\sb/
2873 a b
2874
2875 /a\Sb/
2876 a-b
2877 *** Failers
2878 a-b
2879 a b
2880
2881 /\d/
2882 1
2883
2884 /\D/
2885 -
2886 *** Failers
2887 -
2888 1
2889
2890 /[\w]/
2891 a
2892
2893 /[\W]/
2894 -
2895 *** Failers
2896 -
2897 a
2898
2899 /a[\s]b/
2900 a b
2901
2902 /a[\S]b/
2903 a-b
2904 *** Failers
2905 a-b
2906 a b
2907
2908 /[\d]/
2909 1
2910
2911 /[\D]/
2912 -
2913 *** Failers
2914 -
2915 1
2916
2917 /ab|cd/
2918 abc
2919 abcd
2920
2921 /()ef/
2922 def
2923
2924 /$b/
2925
2926 /a\(b/
2927 a(b
2928
2929 /a\(*b/
2930 ab
2931 a((b
2932
2933 /a\\b/
2934 a\b
2935
2936 /((a))/
2937 abc
2938
2939 /(a)b(c)/
2940 abc
2941
2942 /a+b+c/
2943 aabbabc
2944
2945 /a{1,}b{1,}c/
2946 aabbabc
2947
2948 /a.+?c/
2949 abcabc
2950
2951 /(a+|b)*/
2952 ab
2953
2954 /(a+|b){0,}/
2955 ab
2956
2957 /(a+|b)+/
2958 ab
2959
2960 /(a+|b){1,}/
2961 ab
2962
2963 /(a+|b)?/
2964 ab
2965
2966 /(a+|b){0,1}/
2967 ab
2968
2969 /[^ab]*/
2970 cde
2971
2972 /abc/
2973 *** Failers
2974 b
2975
2976
2977 /a*/
2978
2979
2980 /([abc])*d/
2981 abbbcd
2982
2983 /([abc])*bcd/
2984 abcd
2985
2986 /a|b|c|d|e/
2987 e
2988
2989 /(a|b|c|d|e)f/
2990 ef
2991
2992 /abcd*efg/
2993 abcdefg
2994
2995 /ab*/
2996 xabyabbbz
2997 xayabbbz
2998
2999 /(ab|cd)e/
3000 abcde
3001
3002 /[abhgefdc]ij/
3003 hij
3004
3005 /^(ab|cd)e/
3006
3007 /(abc|)ef/
3008 abcdef
3009
3010 /(a|b)c*d/
3011 abcd
3012
3013 /(ab|ab*)bc/
3014 abc
3015
3016 /a([bc]*)c*/
3017 abc
3018
3019 /a([bc]*)(c*d)/
3020 abcd
3021
3022 /a([bc]+)(c*d)/
3023 abcd
3024
3025 /a([bc]*)(c+d)/
3026 abcd
3027
3028 /a[bcd]*dcdcde/
3029 adcdcde
3030
3031 /a[bcd]+dcdcde/
3032 *** Failers
3033 abcde
3034 adcdcde
3035
3036 /(ab|a)b*c/
3037 abc
3038
3039 /((a)(b)c)(d)/
3040 abcd
3041
3042 /[a-zA-Z_][a-zA-Z0-9_]*/
3043 alpha
3044
3045 /^a(bc+|b[eh])g|.h$/
3046 abh
3047
3048 /(bc+d$|ef*g.|h?i(j|k))/
3049 effgz
3050 ij
3051 reffgz
3052 *** Failers
3053 effg
3054 bcdd
3055
3056 /((((((((((a))))))))))/
3057 a
3058
3059 /(((((((((a)))))))))/
3060 a
3061
3062 /multiple words of text/
3063 *** Failers
3064 aa
3065 uh-uh
3066
3067 /multiple words/
3068 multiple words, yeah
3069
3070 /(.*)c(.*)/
3071 abcde
3072
3073 /\((.*), (.*)\)/
3074 (a, b)
3075
3076 /[k]/
3077
3078 /abcd/
3079 abcd
3080
3081 /a(bc)d/
3082 abcd
3083
3084 /a[-]?c/
3085 ac
3086
3087 /abc/i
3088 ABC
3089 XABCY
3090 ABABC
3091 *** Failers
3092 aaxabxbaxbbx
3093 XBC
3094 AXC
3095 ABX
3096
3097 /ab*c/i
3098 ABC
3099
3100 /ab*bc/i
3101 ABC
3102 ABBC
3103
3104 /ab*?bc/i
3105 ABBBBC
3106
3107 /ab{0,}?bc/i
3108 ABBBBC
3109
3110 /ab+?bc/i
3111 ABBC
3112
3113 /ab+bc/i
3114 *** Failers
3115 ABC
3116 ABQ
3117
3118 /ab{1,}bc/i
3119
3120 /ab+bc/i
3121 ABBBBC
3122
3123 /ab{1,}?bc/i
3124 ABBBBC
3125
3126 /ab{1,3}?bc/i
3127 ABBBBC
3128
3129 /ab{3,4}?bc/i
3130 ABBBBC
3131
3132 /ab{4,5}?bc/i
3133 *** Failers
3134 ABQ
3135 ABBBBC
3136
3137 /ab??bc/i
3138 ABBC
3139 ABC
3140
3141 /ab{0,1}?bc/i
3142 ABC
3143
3144 /ab??bc/i
3145
3146 /ab??c/i
3147 ABC
3148
3149 /ab{0,1}?c/i
3150 ABC
3151
3152 /^abc$/i
3153 ABC
3154 *** Failers
3155 ABBBBC
3156 ABCC
3157
3158 /^abc/i
3159 ABCC
3160
3161 /^abc$/i
3162
3163 /abc$/i
3164 AABC
3165
3166 /^/i
3167 ABC
3168
3169 /$/i
3170 ABC
3171
3172 /a.c/i
3173 ABC
3174 AXC
3175
3176 /a.*?c/i
3177 AXYZC
3178
3179 /a.*c/i
3180 *** Failers
3181 AABC
3182 AXYZD
3183
3184 /a[bc]d/i
3185 ABD
3186
3187 /a[b-d]e/i
3188 ACE
3189 *** Failers
3190 ABC
3191 ABD
3192
3193 /a[b-d]/i
3194 AAC
3195
3196 /a[-b]/i
3197 A-
3198
3199 /a[b-]/i
3200 A-
3201
3202 /a]/i
3203 A]
3204
3205 /a[]]b/i
3206 A]B
3207
3208 /a[^bc]d/i
3209 AED
3210
3211 /a[^-b]c/i
3212 ADC
3213 *** Failers
3214 ABD
3215 A-C
3216
3217 /a[^]b]c/i
3218 ADC
3219
3220 /ab|cd/i
3221 ABC
3222 ABCD
3223
3224 /()ef/i
3225 DEF
3226
3227 /$b/i
3228 *** Failers
3229 A]C
3230 B
3231
3232 /a\(b/i
3233 A(B
3234
3235 /a\(*b/i
3236 AB
3237 A((B
3238
3239 /a\\b/i
3240 A\B
3241
3242 /((a))/i
3243 ABC
3244
3245 /(a)b(c)/i
3246 ABC
3247
3248 /a+b+c/i
3249 AABBABC
3250
3251 /a{1,}b{1,}c/i
3252 AABBABC
3253
3254 /a.+?c/i
3255 ABCABC
3256
3257 /a.*?c/i
3258 ABCABC
3259
3260 /a.{0,5}?c/i
3261 ABCABC
3262
3263 /(a+|b)*/i
3264 AB
3265
3266 /(a+|b){0,}/i
3267 AB
3268
3269 /(a+|b)+/i
3270 AB
3271
3272 /(a+|b){1,}/i
3273 AB
3274
3275 /(a+|b)?/i
3276 AB
3277
3278 /(a+|b){0,1}/i
3279 AB
3280
3281 /(a+|b){0,1}?/i
3282 AB
3283
3284 /[^ab]*/i
3285 CDE
3286
3287 /abc/i
3288
3289 /a*/i
3290
3291
3292 /([abc])*d/i
3293 ABBBCD
3294
3295 /([abc])*bcd/i
3296 ABCD
3297
3298 /a|b|c|d|e/i
3299 E
3300
3301 /(a|b|c|d|e)f/i
3302 EF
3303
3304 /abcd*efg/i
3305 ABCDEFG
3306
3307 /ab*/i
3308 XABYABBBZ
3309 XAYABBBZ
3310
3311 /(ab|cd)e/i
3312 ABCDE
3313
3314 /[abhgefdc]ij/i
3315 HIJ
3316
3317 /^(ab|cd)e/i
3318 ABCDE
3319
3320 /(abc|)ef/i
3321 ABCDEF
3322
3323 /(a|b)c*d/i
3324 ABCD
3325
3326 /(ab|ab*)bc/i
3327 ABC
3328
3329 /a([bc]*)c*/i
3330 ABC
3331
3332 /a([bc]*)(c*d)/i
3333 ABCD
3334
3335 /a([bc]+)(c*d)/i
3336 ABCD
3337
3338 /a([bc]*)(c+d)/i
3339 ABCD
3340
3341 /a[bcd]*dcdcde/i
3342 ADCDCDE
3343
3344 /a[bcd]+dcdcde/i
3345
3346 /(ab|a)b*c/i
3347 ABC
3348
3349 /((a)(b)c)(d)/i
3350 ABCD
3351
3352 /[a-zA-Z_][a-zA-Z0-9_]*/i
3353 ALPHA
3354
3355 /^a(bc+|b[eh])g|.h$/i
3356 ABH
3357
3358 /(bc+d$|ef*g.|h?i(j|k))/i
3359 EFFGZ
3360 IJ
3361 REFFGZ
3362 *** Failers
3363 ADCDCDE
3364 EFFG
3365 BCDD
3366
3367 /((((((((((a))))))))))/i
3368 A
3369
3370 /(((((((((a)))))))))/i
3371 A
3372
3373 /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a))))))))))/i
3374 A
3375
3376 /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/i
3377 C
3378
3379 /multiple words of text/i
3380 *** Failers
3381 AA
3382 UH-UH
3383
3384 /multiple words/i
3385 MULTIPLE WORDS, YEAH
3386
3387 /(.*)c(.*)/i
3388 ABCDE
3389
3390 /\((.*), (.*)\)/i
3391 (A, B)
3392
3393 /[k]/i
3394
3395 /abcd/i
3396 ABCD
3397
3398 /a(bc)d/i
3399 ABCD
3400
3401 /a[-]?c/i
3402 AC
3403
3404 /a(?!b)./
3405 abad
3406
3407 /a(?=d)./
3408 abad
3409
3410 /a(?=c|d)./
3411 abad
3412
3413 /a(?:b|c|d)(.)/
3414 ace
3415
3416 /a(?:b|c|d)*(.)/
3417 ace
3418
3419 /a(?:b|c|d)+?(.)/
3420 ace
3421 acdbcdbe
3422
3423 /a(?:b|c|d)+(.)/
3424 acdbcdbe
3425
3426 /a(?:b|c|d){2}(.)/
3427 acdbcdbe
3428
3429 /a(?:b|c|d){4,5}(.)/
3430 acdbcdbe
3431
3432 /a(?:b|c|d){4,5}?(.)/
3433 acdbcdbe
3434
3435 /((foo)|(bar))*/
3436 foobar
3437
3438 /a(?:b|c|d){6,7}(.)/
3439 acdbcdbe
3440
3441 /a(?:b|c|d){6,7}?(.)/
3442 acdbcdbe
3443
3444 /a(?:b|c|d){5,6}(.)/
3445 acdbcdbe
3446
3447 /a(?:b|c|d){5,6}?(.)/
3448 acdbcdbe
3449
3450 /a(?:b|c|d){5,7}(.)/
3451 acdbcdbe
3452
3453 /a(?:b|c|d){5,7}?(.)/
3454 acdbcdbe
3455
3456 /a(?:b|(c|e){1,2}?|d)+?(.)/
3457 ace
3458
3459 /^(.+)?B/
3460 AB
3461
3462 /^([^a-z])|(\^)$/
3463 .
3464
3465 /^[<>]&/
3466 <&OUT
3467
3468 /(?:(f)(o)(o)|(b)(a)(r))*/
3469 foobar
3470
3471 /(?<=a)b/
3472 ab
3473 *** Failers
3474 cb
3475 b
3476
3477 /(?<!c)b/
3478 ab
3479 b
3480 b
3481
3482 /(?:..)*a/
3483 aba
3484
3485 /(?:..)*?a/
3486 aba
3487
3488 /^(){3,5}/
3489 abc
3490
3491 /^(a+)*ax/
3492 aax
3493
3494 /^((a|b)+)*ax/
3495 aax
3496
3497 /^((a|bc)+)*ax/
3498 aax
3499
3500 /(a|x)*ab/
3501 cab
3502
3503 /(a)*ab/
3504 cab
3505
3506 /(?:(?i)a)b/
3507 ab
3508
3509 /((?i)a)b/
3510 ab
3511
3512 /(?:(?i)a)b/
3513 Ab
3514
3515 /((?i)a)b/
3516 Ab
3517
3518 /(?:(?i)a)b/
3519 *** Failers
3520 cb
3521 aB
3522
3523 /((?i)a)b/
3524
3525 /(?i:a)b/
3526 ab
3527
3528 /((?i:a))b/
3529 ab
3530
3531 /(?i:a)b/
3532 Ab
3533
3534 /((?i:a))b/
3535 Ab
3536
3537 /(?i:a)b/
3538 *** Failers
3539 aB
3540 aB
3541
3542 /((?i:a))b/
3543
3544 /(?:(?-i)a)b/i
3545 ab
3546
3547 /((?-i)a)b/i
3548 ab
3549
3550 /(?:(?-i)a)b/i
3551 aB
3552
3553 /((?-i)a)b/i
3554 aB
3555
3556 /(?:(?-i)a)b/i
3557 *** Failers
3558 aB
3559 Ab
3560
3561 /((?-i)a)b/i
3562
3563 /(?:(?-i)a)b/i
3564 aB
3565
3566 /((?-i)a)b/i
3567 aB
3568
3569 /(?:(?-i)a)b/i
3570 *** Failers
3571 Ab
3572 AB
3573
3574 /((?-i)a)b/i
3575
3576 /(?-i:a)b/i
3577 ab
3578
3579 /((?-i:a))b/i
3580 ab
3581
3582 /(?-i:a)b/i
3583 aB
3584
3585 /((?-i:a))b/i
3586 aB
3587
3588 /(?-i:a)b/i
3589 *** Failers
3590 AB
3591 Ab
3592
3593 /((?-i:a))b/i
3594
3595 /(?-i:a)b/i
3596 aB
3597
3598 /((?-i:a))b/i
3599 aB
3600
3601 /(?-i:a)b/i
3602 *** Failers
3603 Ab
3604 AB
3605
3606 /((?-i:a))b/i
3607
3608 /((?-i:a.))b/i
3609 *** Failers
3610 AB
3611 a\nB
3612
3613 /((?s-i:a.))b/i
3614 a\nB
3615
3616 /(?:c|d)(?:)(?:a(?:)(?:b)(?:b(?:))(?:b(?:)(?:b)))/
3617 cabbbb
3618
3619 /(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/
3620 caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
3621
3622 /foo\w*\d{4}baz/
3623 foobar1234baz
3624
3625 /x(~~)*(?:(?:F)?)?/
3626 x~~
3627
3628 /^a(?#xxx){3}c/
3629 aaac
3630
3631 /^a (?#xxx) (?#yyy) {3}c/x
3632 aaac
3633
3634 /(?<![cd])b/
3635 *** Failers
3636 B\nB
3637 dbcb
3638
3639 /(?<![cd])[ab]/
3640 dbaacb
3641
3642 /(?<!(c|d))b/
3643
3644 /(?<!(c|d))[ab]/
3645 dbaacb
3646
3647 /(?<!cd)[ab]/
3648 cdaccb
3649
3650 /^(?:a?b?)*$/
3651 *** Failers
3652 dbcb
3653 a--
3654
3655 /((?s)^a(.))((?m)^b$)/
3656 a\nb\nc\n
3657
3658 /((?m)^b$)/
3659 a\nb\nc\n
3660
3661 /(?m)^b/
3662 a\nb\n
3663
3664 /(?m)^(b)/
3665 a\nb\n
3666
3667 /((?m)^b)/
3668 a\nb\n
3669
3670 /\n((?m)^b)/
3671 a\nb\n
3672
3673 /((?s).)c(?!.)/
3674 a\nb\nc\n
3675 a\nb\nc\n
3676
3677 /((?s)b.)c(?!.)/
3678 a\nb\nc\n
3679 a\nb\nc\n
3680
3681 /^b/
3682
3683 /()^b/
3684 *** Failers
3685 a\nb\nc\n
3686 a\nb\nc\n
3687
3688 /((?m)^b)/
3689 a\nb\nc\n
3690
3691 /(?(?!a)a|b)/
3692
3693 /(?(?!a)b|a)/
3694 a
3695
3696 /(?(?=a)b|a)/
3697 *** Failers
3698 a
3699 a
3700
3701 /(?(?=a)a|b)/
3702 a
3703
3704 /(\w+:)+/
3705 one:
3706
3707 /$(?<=^(a))/
3708 a
3709
3710 /([\w:]+::)?(\w+)$/
3711 abcd
3712 xy:z:::abcd
3713
3714 /^[^bcd]*(c+)/
3715 aexycd
3716
3717 /(a*)b+/
3718 caab
3719
3720 /([\w:]+::)?(\w+)$/
3721 abcd
3722 xy:z:::abcd
3723 *** Failers
3724 abcd:
3725 abcd:
3726
3727 /^[^bcd]*(c+)/
3728 aexycd
3729
3730 /(>a+)ab/
3731
3732 /(?>a+)b/
3733 aaab
3734
3735 /([[:]+)/
3736 a:[b]:
3737
3738 /([[=]+)/
3739 a=[b]=
3740
3741 /([[.]+)/
3742 a.[b].
3743
3744 /((?>a+)b)/
3745 aaab
3746
3747 /(?>(a+))b/
3748 aaab
3749
3750 /((?>[^()]+)|\([^()]*\))+/
3751 ((abc(ade)ufh()()x
3752
3753 /a\Z/
3754 *** Failers
3755 aaab
3756 a\nb\n
3757
3758 /b\Z/
3759 a\nb\n
3760
3761 /b\z/
3762
3763 /b\Z/
3764 a\nb
3765
3766 /b\z/
3767 a\nb
3768 *** Failers
3769
3770 /(?>.*)(?<=(abcd|wxyz))/
3771 alphabetabcd
3772 endingwxyz
3773 *** Failers
3774 a rather long string that doesn't end with one of them
3775
3776 /word (?>(?:(?!otherword)[a-zA-Z0-9]+ ){0,30})otherword/
3777 word cat dog elephant mussel cow horse canary baboon snake shark otherword
3778 word cat dog elephant mussel cow horse canary baboon snake shark
3779
3780 /word (?>[a-zA-Z0-9]+ ){0,30}otherword/
3781 word cat dog elephant mussel cow horse canary baboon snake shark the quick brown fox and the lazy dog and several other words getting close to thirty by now I hope
3782
3783 /(?<=\d{3}(?!999))foo/
3784 999foo
3785 123999foo
3786 *** Failers
3787 123abcfoo
3788
3789 /(?<=(?!...999)\d{3})foo/
3790 999foo
3791 123999foo
3792 *** Failers
3793 123abcfoo
3794
3795 /(?<=\d{3}(?!999)...)foo/
3796 123abcfoo
3797 123456foo
3798 *** Failers
3799 123999foo
3800
3801 /(?<=\d{3}...)(?<!999)foo/
3802 123abcfoo
3803 123456foo
3804 *** Failers
3805 123999foo
3806
3807 /((Z)+|A)*/
3808 ZABCDEFG
3809
3810 /(Z()|A)*/
3811 ZABCDEFG
3812
3813 /(Z(())|A)*/
3814 ZABCDEFG
3815
3816 /((?>Z)+|A)*/
3817 ZABCDEFG
3818
3819 /((?>)+|A)*/
3820 ZABCDEFG
3821
3822 /a*/g
3823 abbab
3824
3825 /^[a-\d]/
3826 abcde
3827 -things
3828 0digit
3829 *** Failers
3830 bcdef
3831
3832 /^[\d-a]/
3833 abcde
3834 -things
3835 0digit
3836 *** Failers
3837 bcdef
3838
3839 /[[:space:]]+/
3840 > \x09\x0a\x0c\x0d\x0b<
3841
3842 /[[:blank:]]+/
3843 > \x09\x0a\x0c\x0d\x0b<
3844
3845 /[\s]+/
3846 > \x09\x0a\x0c\x0d\x0b<
3847
3848 /\s+/
3849 > \x09\x0a\x0c\x0d\x0b<
3850
3851 /a b/x
3852 ab
3853
3854 /(?!\A)x/m
3855 a\nxb\n
3856
3857 /(?!^)x/m
3858 a\nxb\n
3859
3860 /abc\Qabc\Eabc/
3861 abcabcabc
3862
3863 /abc\Q(*+|\Eabc/
3864 abc(*+|abc
3865
3866 / abc\Q abc\Eabc/x
3867 abc abcabc
3868 *** Failers
3869 abcabcabc
3870
3871 /abc#comment
3872 \Q#not comment
3873 literal\E/x
3874 abc#not comment\n literal
3875
3876 /abc#comment
3877 \Q#not comment
3878 literal/x
3879 abc#not comment\n literal
3880
3881 /abc#comment
3882 \Q#not comment
3883 literal\E #more comment
3884 /x
3885 abc#not comment\n literal
3886
3887 /abc#comment
3888 \Q#not comment
3889 literal\E #more comment/x
3890 abc#not comment\n literal
3891
3892 /\Qabc\$xyz\E/
3893 abc\\\$xyz
3894
3895 /\Qabc\E\$\Qxyz\E/
3896 abc\$xyz
3897
3898 /\Gabc/
3899 abc
3900 *** Failers
3901 xyzabc
3902
3903 /\Gabc./g
3904 abc1abc2xyzabc3
3905
3906 /abc./g
3907 abc1abc2xyzabc3
3908
3909 /a(?x: b c )d/
3910 XabcdY
3911 *** Failers
3912 Xa b c d Y
3913
3914 /((?x)x y z | a b c)/
3915 XabcY
3916 AxyzB
3917
3918 /(?i)AB(?-i)C/
3919 XabCY
3920 *** Failers
3921 XabcY
3922
3923 /((?i)AB(?-i)C|D)E/
3924 abCE
3925 DE
3926 *** Failers
3927 abcE
3928 abCe
3929 dE
3930 De
3931
3932 /[z\Qa-d]\E]/
3933 z
3934 a
3935 -
3936 d
3937 ]
3938 *** Failers
3939 b
3940
3941 /[\z\C]/
3942 z
3943 C
3944
3945 /\M/
3946 M
3947
3948 /(a+)*b/
3949 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
3950
3951 /(?i)reg(?:ul(?:[a]|ae)r|ex)/
3952 REGular
3953 regulaer
3954 Regex
3955 regulr
3956
3957 /[--]+/
3958
3959
3960
3961
3962
3963 /(?<=Z)X./
3964 \x84XAZXB
3965
3966 /^(?(2)a|(1)(2))+$/
3967 123a
3968
3969 /(?<=a|bbbb)c/
3970 ac
3971 bbbbc
3972
3973 /abc/>testsavedregex
3974 <testsavedregex
3975 abc
3976 *** Failers
3977 bca
3978
3979 /abc/F>testsavedregex
3980 <testsavedregex
3981 abc
3982 *** Failers
3983 bca
3984
3985 /(a|b)/S>testsavedregex
3986 <testsavedregex
3987 abc
3988 *** Failers
3989 def
3990
3991 /(a|b)/SF>testsavedregex
3992 <testsavedregex
3993 abc
3994 *** Failers
3995 def
3996
3997 /line\nbreak/
3998 this is a line\nbreak
3999 line one\nthis is a line\nbreak in the second line
4000
4001 /line\nbreak/f
4002 this is a line\nbreak
4003 ** Failers
4004 line one\nthis is a line\nbreak in the second line
4005
4006 /line\nbreak/mf
4007 this is a line\nbreak
4008 ** Failers
4009 line one\nthis is a line\nbreak in the second line
4010
4011 /1234/
4012 123\P
4013 a4\P\R
4014
4015 /1234/
4016 123\P
4017 4\P\R
4018
4019 /^/mg
4020 a\nb\nc\n
4021 \
4022
4023 /(?<=C\n)^/mg
4024 A\nC\nC\n
4025
4026 /(?s)A?B/
4027 AB
4028 aB
4029
4030 /(?s)A*B/
4031 AB
4032 aB
4033
4034 /(?m)A?B/
4035 AB
4036 aB
4037
4038 /(?m)A*B/
4039 AB
4040 aB
4041
4042 /Content-Type\x3A[^\r\n]{6,}/
4043 Content-Type:xxxxxyyy
4044
4045 /Content-Type\x3A[^\r\n]{6,}z/
4046 Content-Type:xxxxxyyyz
4047
4048 /Content-Type\x3A[^a]{6,}/
4049 Content-Type:xxxyyy
4050
4051 /Content-Type\x3A[^a]{6,}z/
4052 Content-Type:xxxyyyz
4053
4054 /^abc/m
4055 xyz\nabc
4056 xyz\nabc\<lf>
4057 xyz\r\nabc\<lf>
4058 xyz\rabc\<cr>
4059 xyz\r\nabc\<crlf>
4060 ** Failers
4061 xyz\nabc\<cr>
4062 xyz\r\nabc\<cr>
4063 xyz\nabc\<crlf>
4064 xyz\rabc\<crlf>
4065 xyz\rabc\<lf>
4066
4067 /abc$/m<lf>
4068 xyzabc
4069 xyzabc\n
4070 xyzabc\npqr
4071 xyzabc\r\<cr>
4072 xyzabc\rpqr\<cr>
4073 xyzabc\r\n\<crlf>
4074 xyzabc\r\npqr\<crlf>
4075 ** Failers
4076 xyzabc\r
4077 xyzabc\rpqr
4078 xyzabc\r\n
4079 xyzabc\r\npqr
4080
4081 /^abc/m<cr>
4082 xyz\rabcdef
4083 xyz\nabcdef\<lf>
4084 ** Failers
4085 xyz\nabcdef
4086
4087 /^abc/m<lf>
4088 xyz\nabcdef
4089 xyz\rabcdef\<cr>
4090 ** Failers
4091 xyz\rabcdef
4092
4093 /^abc/m<crlf>
4094 xyz\r\nabcdef
4095 xyz\rabcdef\<cr>
4096 ** Failers
4097 xyz\rabcdef
4098
4099 /.*/<lf>
4100 abc\ndef
4101 abc\rdef
4102 abc\r\ndef
4103 \<cr>abc\ndef
4104 \<cr>abc\rdef
4105 \<cr>abc\r\ndef
4106 \<crlf>abc\ndef
4107 \<crlf>abc\rdef
4108 \<crlf>abc\r\ndef
4109
4110 /\w+(.)(.)?def/s
4111 abc\ndef
4112 abc\rdef
4113 abc\r\ndef
4114
4115 /^\w+=.*(\\\n.*)*/
4116 abc=xyz\\\npqr
4117
4118 /^(a()*)*/
4119 aaaa
4120
4121 /^(?:a(?:(?:))*)*/
4122 aaaa
4123
4124 /^(a()+)+/
4125 aaaa
4126
4127 /^(?:a(?:(?:))+)+/
4128 aaaa
4129
4130 /(a|)*\d/
4131 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4132 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
4133
4134 /(?>a|)*\d/
4135 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4136 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
4137
4138 /(?:a|)*\d/
4139 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4140 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
4141
4142 /^a.b/<lf>
4143 a\rb
4144 a\nb\<cr>
4145 ** Failers
4146 a\nb
4147 a\nb\<any>
4148 a\rb\<cr>
4149 a\rb\<any>
4150
4151 /^abc./mgx<any>
4152 abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
4153
4154 /abc.$/mgx<any>
4155 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
4156
4157 /^a\Rb/<bsr_unicode>
4158 a\nb
4159 a\rb
4160 a\r\nb
4161 a\x0bb
4162 a\x0cb
4163 a\x85b
4164 ** Failers
4165 a\n\rb
4166
4167 /^a\R*b/<bsr_unicode>
4168 ab
4169 a\nb
4170 a\rb
4171 a\r\nb
4172 a\x0bb
4173 a\x0cb
4174 a\x85b
4175 a\n\rb
4176 a\n\r\x85\x0cb
4177
4178 /^a\R+b/<bsr_unicode>
4179 a\nb
4180 a\rb
4181 a\r\nb
4182 a\x0bb
4183 a\x0cb
4184 a\x85b
4185 a\n\rb
4186 a\n\r\x85\x0cb
4187 ** Failers
4188 ab
4189
4190 /^a\R{1,3}b/<bsr_unicode>
4191 a\nb
4192 a\n\rb
4193 a\n\r\x85b
4194 a\r\n\r\nb
4195 a\r\n\r\n\r\nb
4196 a\n\r\n\rb
4197 a\n\n\r\nb
4198 ** Failers
4199 a\n\n\n\rb
4200 a\r
4201
4202 /^a[\R]b/<bsr_unicode>
4203 aRb
4204 ** Failers
4205 a\nb
4206
4207 /.+foo/
4208 afoo
4209 ** Failers
4210 \r\nfoo
4211 \nfoo
4212
4213 /.+foo/<crlf>
4214 afoo
4215 \nfoo
4216 ** Failers
4217 \r\nfoo
4218
4219 /.+foo/<any>
4220 afoo
4221 ** Failers
4222 \nfoo
4223 \r\nfoo
4224
4225 /.+foo/s
4226 afoo
4227 \r\nfoo
4228 \nfoo
4229
4230 /^$/mg<any>
4231 abc\r\rxyz
4232 abc\n\rxyz
4233 ** Failers
4234 abc\r\nxyz
4235
4236 /^X/m
4237 XABC
4238 ** Failers
4239 XABC\B
4240
4241 /(?m)^$/<any>g+
4242 abc\r\n\r\n
4243
4244 /(?m)^$|^\r\n/<any>g+
4245 abc\r\n\r\n
4246
4247 /(?m)$/<any>g+
4248 abc\r\n\r\n
4249
4250 /(?|(abc)|(xyz))/
4251 >abc<
4252 >xyz<
4253
4254 /(x)(?|(abc)|(xyz))(x)/
4255 xabcx
4256 xxyzx
4257
4258 /(x)(?|(abc)(pqr)|(xyz))(x)/
4259 xabcpqrx
4260 xxyzx
4261
4262 /(?|(abc)|(xyz))(?1)/
4263 abcabc
4264 xyzabc
4265 ** Failers
4266 xyzxyz
4267
4268 /\H\h\V\v/
4269 X X\x0a
4270 X\x09X\x0b
4271 ** Failers
4272 \xa0 X\x0a
4273
4274 /\H*\h+\V?\v{3,4}/
4275 \x09\x20\xa0X\x0a\x0b\x0c\x0d\x0a
4276 \x09\x20\xa0\x0a\x0b\x0c\x0d\x0a
4277 \x09\x20\xa0\x0a\x0b\x0c
4278 ** Failers
4279 \x09\x20\xa0\x0a\x0b
4280
4281 /\H{3,4}/
4282 XY ABCDE
4283 XY PQR ST
4284
4285 /.\h{3,4}./
4286 XY AB PQRS
4287
4288 /\h*X\h?\H+Y\H?Z/
4289 >XNNNYZ
4290 > X NYQZ
4291 ** Failers
4292 >XYZ
4293 > X NY Z
4294
4295 /\v*X\v?Y\v+Z\V*\x0a\V+\x0b\V{2,3}\x0c/
4296 >XY\x0aZ\x0aA\x0bNN\x0c
4297 >\x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c
4298
4299 /.+A/<crlf>
4300 \r\nA
4301
4302 /\nA/<crlf>
4303 \r\nA
4304
4305 /[\r\n]A/<crlf>
4306 \r\nA
4307
4308 /(\r|\n)A/<crlf>
4309 \r\nA
4310
4311 /a\Rb/I<bsr_anycrlf>
4312 a\rb
4313 a\nb
4314 a\r\nb
4315 ** Failers
4316 a\x85b
4317 a\x0bb
4318
4319 /a\Rb/I<bsr_unicode>
4320 a\rb
4321 a\nb
4322 a\r\nb
4323 a\x85b
4324 a\x0bb
4325 ** Failers
4326 a\x85b\<bsr_anycrlf>
4327 a\x0bb\<bsr_anycrlf>
4328
4329 /a\R?b/I<bsr_anycrlf>
4330 a\rb
4331 a\nb
4332 a\r\nb
4333 ** Failers
4334 a\x85b
4335 a\x0bb
4336
4337 /a\R?b/I<bsr_unicode>
4338 a\rb
4339 a\nb
4340 a\r\nb
4341 a\x85b
4342 a\x0bb
4343 ** Failers
4344 a\x85b\<bsr_anycrlf>
4345 a\x0bb\<bsr_anycrlf>
4346
4347 /a\R{2,4}b/I<bsr_anycrlf>
4348 a\r\n\nb
4349 a\n\r\rb
4350 a\r\n\r\n\r\n\r\nb
4351 ** Failers
4352 a\x85\85b
4353 a\x0b\0bb
4354
4355 /a\R{2,4}b/I<bsr_unicode>
4356 a\r\rb
4357 a\n\n\nb
4358 a\r\n\n\r\rb
4359 a\x85\85b
4360 a\x0b\0bb
4361 ** Failers
4362 a\r\r\r\r\rb
4363 a\x85\85b\<bsr_anycrlf>
4364 a\x0b\0bb\<bsr_anycrlf>
4365
4366 /a(?!)|\wbc/
4367 abc
4368
4369 /a[]b/<JS>
4370 ** Failers
4371 ab
4372
4373 /a[]+b/<JS>
4374 ** Failers
4375 ab
4376
4377 /a[]*+b/<JS>
4378 ** Failers
4379 ab
4380
4381 /a[^]b/<JS>
4382 aXb
4383 a\nb
4384 ** Failers
4385 ab
4386
4387 /a[^]+b/<JS>
4388 aXb
4389 a\nX\nXb
4390 ** Failers
4391 ab
4392
4393 /X$/E
4394 X
4395 ** Failers
4396 X\n
4397
4398 /X$/
4399 X
4400 X\n
4401
4402 /xyz/C
4403 xyz
4404 abcxyz
4405 abcxyz\Y
4406 ** Failers
4407 abc
4408 abc\Y
4409 abcxypqr
4410 abcxypqr\Y
4411
4412 /(?C)ab/
4413 ab
4414 \C-ab
4415
4416 /ab/C
4417 ab
4418 \C-ab
4419
4420 /^"((?(?=[a])[^"])|b)*"$/C
4421 "ab"
4422 \C-"ab"
4423
4424 /\d+X|9+Y/
4425 ++++123999\P
4426 ++++123999Y\P
4427
4428 /Z(*F)/
4429 Z\P
4430 ZA\P
4431
4432 /Z(?!)/
4433 Z\P
4434 ZA\P
4435
4436 /dog(sbody)?/
4437 dogs\P
4438 dogs\P\P
4439
4440 /dog(sbody)??/
4441 dogs\P
4442 dogs\P\P
4443
4444 /dog|dogsbody/
4445 dogs\P
4446 dogs\P\P
4447
4448 /dogsbody|dog/
4449 dogs\P
4450 dogs\P\P
4451
4452 /Z(*F)Q|ZXY/
4453 Z\P
4454 ZA\P
4455 X\P
4456
4457 /\bthe cat\b/
4458 the cat\P
4459 the cat\P\P
4460
4461 /dog(sbody)?/
4462 dogs\D\P
4463 body\D\R
4464
4465 /dog(sbody)?/
4466 dogs\D\P\P
4467 body\D\R
4468
4469 /abc/
4470 abc\P
4471 abc\P\P
4472
4473 / End of testinput7 /

Properties

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

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12