~ubuntu-branches/ubuntu/feisty/apache2/feisty

« back to all changes in this revision

Viewing changes to srclib/pcre/testdata/testoutput2

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Barth
  • Date: 2006-12-09 21:05:45 UTC
  • mto: This revision was merged to the branch mainline in revision 12.
  • Revision ID: james.westby@ubuntu.com-20061209210545-l2c6ssmet17xa2o3
ImportĀ upstreamĀ versionĀ 2.2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
PCRE version 5.0 13-Sep-2004
 
2
 
 
3
/(a)b|/
 
4
Capturing subpattern count = 1
 
5
No options
 
6
No first char
 
7
No need char
 
8
 
 
9
/abc/
 
10
Capturing subpattern count = 0
 
11
No options
 
12
First char = 'a'
 
13
Need char = 'c'
 
14
    abc
 
15
 0: abc
 
16
    defabc
 
17
 0: abc
 
18
    \Aabc
 
19
 0: abc
 
20
    *** Failers
 
21
No match
 
22
    \Adefabc
 
23
No match
 
24
    ABC
 
25
No match
 
26
 
 
27
/^abc/
 
28
Capturing subpattern count = 0
 
29
Options: anchored
 
30
No first char
 
31
No need char
 
32
    abc
 
33
 0: abc
 
34
    \Aabc
 
35
 0: abc
 
36
    *** Failers
 
37
No match
 
38
    defabc
 
39
No match
 
40
    \Adefabc
 
41
No match
 
42
 
 
43
/a+bc/
 
44
Capturing subpattern count = 0
 
45
Partial matching not supported
 
46
No options
 
47
First char = 'a'
 
48
Need char = 'c'
 
49
 
 
50
/a*bc/
 
51
Capturing subpattern count = 0
 
52
Partial matching not supported
 
53
No options
 
54
No first char
 
55
Need char = 'c'
 
56
 
 
57
/a{3}bc/
 
58
Capturing subpattern count = 0
 
59
Partial matching not supported
 
60
No options
 
61
First char = 'a'
 
62
Need char = 'c'
 
63
 
 
64
/(abc|a+z)/
 
65
Capturing subpattern count = 1
 
66
Partial matching not supported
 
67
No options
 
68
First char = 'a'
 
69
No need char
 
70
 
 
71
/^abc$/
 
72
Capturing subpattern count = 0
 
73
Options: anchored
 
74
No first char
 
75
No need char
 
76
    abc
 
77
 0: abc
 
78
    *** Failers
 
79
No match
 
80
    def\nabc
 
81
No match
 
82
 
 
83
/ab\gdef/X
 
84
Failed: unrecognized character follows \ at offset 3
 
85
 
 
86
/(?X)ab\gdef/X
 
87
Failed: unrecognized character follows \ at offset 7
 
88
 
 
89
/x{5,4}/
 
90
Failed: numbers out of order in {} quantifier at offset 5
 
91
 
 
92
/z{65536}/
 
93
Failed: number too big in {} quantifier at offset 7
 
94
 
 
95
/[abcd/
 
96
Failed: missing terminating ] for character class at offset 5
 
97
 
 
98
/(?X)[\B]/
 
99
Failed: invalid escape sequence in character class at offset 6
 
100
 
 
101
/[z-a]/
 
102
Failed: range out of order in character class at offset 3
 
103
 
 
104
/^*/
 
105
Failed: nothing to repeat at offset 1
 
106
 
 
107
/(abc/
 
108
Failed: missing ) at offset 4
 
109
 
 
110
/(?# abc/
 
111
Failed: missing ) after comment at offset 7
 
112
 
 
113
/(?z)abc/
 
114
Failed: unrecognized character after (? at offset 2
 
115
 
 
116
/.*b/
 
117
Capturing subpattern count = 0
 
118
Partial matching not supported
 
119
No options
 
120
First char at start or follows \n
 
121
Need char = 'b'
 
122
 
 
123
/.*?b/
 
124
Capturing subpattern count = 0
 
125
Partial matching not supported
 
126
No options
 
127
First char at start or follows \n
 
128
Need char = 'b'
 
129
 
 
130
/cat|dog|elephant/
 
131
Capturing subpattern count = 0
 
132
No options
 
133
No first char
 
134
No need char
 
135
    this sentence eventually mentions a cat
 
136
 0: cat
 
137
    this sentences rambles on and on for a while and then reaches elephant
 
138
 0: elephant
 
139
 
 
140
/cat|dog|elephant/S
 
141
Capturing subpattern count = 0
 
142
No options
 
143
No first char
 
144
No need char
 
145
Starting byte set: c d e 
 
146
    this sentence eventually mentions a cat
 
147
 0: cat
 
148
    this sentences rambles on and on for a while and then reaches elephant
 
149
 0: elephant
 
150
 
 
151
/cat|dog|elephant/iS
 
152
Capturing subpattern count = 0
 
153
Options: caseless
 
154
No first char
 
155
No need char
 
156
Starting byte set: C D E c d e 
 
157
    this sentence eventually mentions a CAT cat
 
158
 0: CAT
 
159
    this sentences rambles on and on for a while to elephant ElePhant
 
160
 0: elephant
 
161
 
 
162
/a|[bcd]/S
 
163
Capturing subpattern count = 0
 
164
No options
 
165
No first char
 
166
No need char
 
167
Starting byte set: a b c d 
 
168
 
 
169
/(a|[^\dZ])/S
 
170
Capturing subpattern count = 1
 
171
No options
 
172
No first char
 
173
No need char
 
174
Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a 
 
175
  \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 
 
176
  \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = > 
 
177
  ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y [ \ ] ^ _ ` a b c d 
 
178
  e f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83 
 
179
  \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 
 
180
  \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 
 
181
  \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 
 
182
  \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf 
 
183
  \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce 
 
184
  \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd 
 
185
  \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec 
 
186
  \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb 
 
187
  \xfc \xfd \xfe \xff 
 
188
 
 
189
/(a|b)*[\s]/S
 
190
Capturing subpattern count = 1
 
191
No options
 
192
No first char
 
193
No need char
 
194
Starting byte set: \x09 \x0a \x0c \x0d \x20 a b 
 
195
 
 
196
/(ab\2)/
 
197
Failed: reference to non-existent subpattern at offset 6
 
198
 
 
199
/{4,5}abc/
 
200
Failed: nothing to repeat at offset 4
 
201
 
 
202
/(a)(b)(c)\2/
 
203
Capturing subpattern count = 3
 
204
Max back reference = 2
 
205
No options
 
206
First char = 'a'
 
207
Need char = 'c'
 
208
    abcb
 
209
 0: abcb
 
210
 1: a
 
211
 2: b
 
212
 3: c
 
213
    \O0abcb
 
214
Matched, but too many substrings
 
215
    \O3abcb
 
216
Matched, but too many substrings
 
217
 0: abcb
 
218
    \O6abcb
 
219
Matched, but too many substrings
 
220
 0: abcb
 
221
 1: a
 
222
    \O9abcb
 
223
Matched, but too many substrings
 
224
 0: abcb
 
225
 1: a
 
226
 2: b
 
227
    \O12abcb 
 
228
 0: abcb
 
229
 1: a
 
230
 2: b
 
231
 3: c
 
232
 
 
233
/(a)bc|(a)(b)\2/
 
234
Capturing subpattern count = 3
 
235
Max back reference = 2
 
236
No options
 
237
First char = 'a'
 
238
No need char
 
239
    abc
 
240
 0: abc
 
241
 1: a
 
242
    \O0abc
 
243
Matched, but too many substrings
 
244
    \O3abc
 
245
Matched, but too many substrings
 
246
 0: abc
 
247
    \O6abc
 
248
 0: abc
 
249
 1: a
 
250
    aba
 
251
 0: aba
 
252
 1: <unset>
 
253
 2: a
 
254
 3: b
 
255
    \O0aba
 
256
Matched, but too many substrings
 
257
    \O3aba
 
258
Matched, but too many substrings
 
259
 0: aba
 
260
    \O6aba
 
261
Matched, but too many substrings
 
262
 0: aba
 
263
 1: <unset>
 
264
    \O9aba
 
265
Matched, but too many substrings
 
266
 0: aba
 
267
 1: <unset>
 
268
 2: a
 
269
    \O12aba
 
270
 0: aba
 
271
 1: <unset>
 
272
 2: a
 
273
 3: b
 
274
 
 
275
/abc$/E
 
276
Capturing subpattern count = 0
 
277
Options: dollar_endonly
 
278
First char = 'a'
 
279
Need char = 'c'
 
280
    abc
 
281
 0: abc
 
282
    *** Failers
 
283
No match
 
284
    abc\n
 
285
No match
 
286
    abc\ndef
 
287
No match
 
288
 
 
289
/(a)(b)(c)(d)(e)\6/
 
290
Failed: reference to non-existent subpattern at offset 17
 
291
 
 
292
/the quick brown fox/
 
293
Capturing subpattern count = 0
 
294
No options
 
295
First char = 't'
 
296
Need char = 'x'
 
297
    the quick brown fox
 
298
 0: the quick brown fox
 
299
    this is a line with the quick brown fox
 
300
 0: the quick brown fox
 
301
 
 
302
/the quick brown fox/A
 
303
Capturing subpattern count = 0
 
304
Options: anchored
 
305
No first char
 
306
No need char
 
307
    the quick brown fox
 
308
 0: the quick brown fox
 
309
    *** Failers
 
310
No match
 
311
    this is a line with the quick brown fox
 
312
No match
 
313
 
 
314
/ab(?z)cd/
 
315
Failed: unrecognized character after (? at offset 4
 
316
 
 
317
/^abc|def/
 
318
Capturing subpattern count = 0
 
319
No options
 
320
No first char
 
321
No need char
 
322
    abcdef
 
323
 0: abc
 
324
    abcdef\B
 
325
 0: def
 
326
 
 
327
/.*((abc)$|(def))/
 
328
Capturing subpattern count = 3
 
329
Partial matching not supported
 
330
No options
 
331
First char at start or follows \n
 
332
No need char
 
333
    defabc
 
334
 0: defabc
 
335
 1: abc
 
336
 2: abc
 
337
    \Zdefabc
 
338
 0: def
 
339
 1: def
 
340
 2: <unset>
 
341
 3: def
 
342
 
 
343
/abc/P
 
344
    abc
 
345
 0: abc
 
346
    *** Failers
 
347
No match: POSIX code 17: match failed
 
348
    
 
349
/^abc|def/P
 
350
    abcdef
 
351
 0: abc
 
352
    abcdef\B
 
353
 0: def
 
354
 
 
355
/.*((abc)$|(def))/P
 
356
    defabc
 
357
 0: defabc
 
358
 1: abc
 
359
 2: abc
 
360
    \Zdefabc
 
361
 0: def
 
362
 1: def
 
363
 3: def
 
364
  
 
365
/the quick brown fox/P
 
366
    the quick brown fox
 
367
 0: the quick brown fox
 
368
    *** Failers 
 
369
No match: POSIX code 17: match failed
 
370
    The Quick Brown Fox 
 
371
No match: POSIX code 17: match failed
 
372
 
 
373
/the quick brown fox/Pi
 
374
    the quick brown fox
 
375
 0: the quick brown fox
 
376
    The Quick Brown Fox 
 
377
 0: The Quick Brown Fox
 
378
 
 
379
/abc.def/P
 
380
    *** Failers
 
381
No match: POSIX code 17: match failed
 
382
    abc\ndef
 
383
No match: POSIX code 17: match failed
 
384
    
 
385
/abc$/P
 
386
    abc
 
387
 0: abc
 
388
    abc\n 
 
389
 0: abc
 
390
 
 
391
/(abc)\2/P
 
392
Failed: POSIX code 15: bad back reference at offset 7     
 
393
 
 
394
/(abc\1)/P
 
395
    abc
 
396
No match: POSIX code 17: match failed
 
397
 
 
398
/)/
 
399
Failed: unmatched parentheses at offset 0
 
400
 
 
401
/a[]b/
 
402
Failed: missing terminating ] for character class at offset 4
 
403
 
 
404
/[^aeiou ]{3,}/
 
405
Capturing subpattern count = 0
 
406
Partial matching not supported
 
407
No options
 
408
No first char
 
409
No need char
 
410
    co-processors, and for 
 
411
 0: -pr
 
412
    
 
413
/<.*>/
 
414
Capturing subpattern count = 0
 
415
Partial matching not supported
 
416
No options
 
417
First char = '<'
 
418
Need char = '>'
 
419
    abc<def>ghi<klm>nop
 
420
 0: <def>ghi<klm>
 
421
 
 
422
/<.*?>/
 
423
Capturing subpattern count = 0
 
424
Partial matching not supported
 
425
No options
 
426
First char = '<'
 
427
Need char = '>'
 
428
    abc<def>ghi<klm>nop
 
429
 0: <def>
 
430
 
 
431
/<.*>/U
 
432
Capturing subpattern count = 0
 
433
Partial matching not supported
 
434
Options: ungreedy
 
435
First char = '<'
 
436
Need char = '>'
 
437
    abc<def>ghi<klm>nop
 
438
 0: <def>
 
439
    
 
440
/(?U)<.*>/
 
441
Capturing subpattern count = 0
 
442
Partial matching not supported
 
443
Options: ungreedy
 
444
First char = '<'
 
445
Need char = '>'
 
446
    abc<def>ghi<klm>nop
 
447
 0: <def>
 
448
 
 
449
/<.*?>/U
 
450
Capturing subpattern count = 0
 
451
Partial matching not supported
 
452
Options: ungreedy
 
453
First char = '<'
 
454
Need char = '>'
 
455
    abc<def>ghi<klm>nop
 
456
 0: <def>ghi<klm>
 
457
    
 
458
/={3,}/U
 
459
Capturing subpattern count = 0
 
460
Partial matching not supported
 
461
Options: ungreedy
 
462
First char = '='
 
463
Need char = '='
 
464
    abc========def
 
465
 0: ===
 
466
    
 
467
/(?U)={3,}?/
 
468
Capturing subpattern count = 0
 
469
Partial matching not supported
 
470
Options: ungreedy
 
471
First char = '='
 
472
Need char = '='
 
473
    abc========def
 
474
 0: ========
 
475
    
 
476
/(?<!bar|cattle)foo/
 
477
Capturing subpattern count = 0
 
478
No options
 
479
First char = 'f'
 
480
Need char = 'o'
 
481
    foo
 
482
 0: foo
 
483
    catfoo 
 
484
 0: foo
 
485
    *** Failers
 
486
No match
 
487
    the barfoo
 
488
No match
 
489
    and cattlefoo   
 
490
No match
 
491
 
 
492
/(?<=a+)b/
 
493
Failed: lookbehind assertion is not fixed length at offset 6
 
494
 
 
495
/(?<=aaa|b{0,3})b/
 
496
Failed: lookbehind assertion is not fixed length at offset 14
 
497
 
 
498
/(?<!(foo)a\1)bar/
 
499
Failed: lookbehind assertion is not fixed length at offset 12
 
500
 
 
501
/(?i)abc/
 
502
Capturing subpattern count = 0
 
503
Options: caseless
 
504
First char = 'a' (caseless)
 
505
Need char = 'c' (caseless)
 
506
 
 
507
/(a|(?m)a)/
 
508
Capturing subpattern count = 1
 
509
No options
 
510
First char = 'a'
 
511
No need char
 
512
 
 
513
/(?i)^1234/
 
514
Capturing subpattern count = 0
 
515
Options: anchored caseless
 
516
No first char
 
517
No need char
 
518
 
 
519
/(^b|(?i)^d)/
 
520
Capturing subpattern count = 1
 
521
Options: anchored
 
522
Case state changes
 
523
No first char
 
524
No need char
 
525
 
 
526
/(?s).*/
 
527
Capturing subpattern count = 0
 
528
Partial matching not supported
 
529
Options: anchored dotall
 
530
No first char
 
531
No need char
 
532
 
 
533
/[abcd]/S
 
534
Capturing subpattern count = 0
 
535
No options
 
536
No first char
 
537
No need char
 
538
Starting byte set: a b c d 
 
539
 
 
540
/(?i)[abcd]/S
 
541
Capturing subpattern count = 0
 
542
Options: caseless
 
543
No first char
 
544
No need char
 
545
Starting byte set: A B C D a b c d 
 
546
 
 
547
/(?m)[xy]|(b|c)/S
 
548
Capturing subpattern count = 1
 
549
Options: multiline
 
550
No first char
 
551
No need char
 
552
Starting byte set: b c x y 
 
553
 
 
554
/(^a|^b)/m
 
555
Capturing subpattern count = 1
 
556
Options: multiline
 
557
First char at start or follows \n
 
558
No need char
 
559
 
 
560
/(?i)(^a|^b)/m
 
561
Capturing subpattern count = 1
 
562
Options: caseless multiline
 
563
First char at start or follows \n
 
564
No need char
 
565
 
 
566
/(a)(?(1)a|b|c)/
 
567
Failed: conditional group contains more than two branches at offset 13
 
568
 
 
569
/(?(?=a)a|b|c)/
 
570
Failed: conditional group contains more than two branches at offset 12
 
571
 
 
572
/(?(1a)/
 
573
Failed: malformed number after (?( at offset 4
 
574
 
 
575
/(?(?i))/
 
576
Failed: assertion expected after (?( at offset 3
 
577
 
 
578
/(?(abc))/
 
579
Failed: assertion expected after (?( at offset 3
 
580
 
 
581
/(?(?<ab))/
 
582
Failed: unrecognized character after (?< at offset 5
 
583
 
 
584
/((?s)blah)\s+\1/
 
585
Capturing subpattern count = 1
 
586
Max back reference = 1
 
587
Partial matching not supported
 
588
No options
 
589
First char = 'b'
 
590
Need char = 'h'
 
591
 
 
592
/((?i)blah)\s+\1/
 
593
Capturing subpattern count = 1
 
594
Max back reference = 1
 
595
Partial matching not supported
 
596
No options
 
597
Case state changes
 
598
First char = 'b' (caseless)
 
599
Need char = 'h' (caseless)
 
600
 
 
601
/((?i)b)/DS
 
602
------------------------------------------------------------------
 
603
  0  15 Bra 0
 
604
  3   7 Bra 1
 
605
  6  01 Opt
 
606
  8  NC b
 
607
 10   7 Ket
 
608
 13  00 Opt
 
609
 15  15 Ket
 
610
 18     End
 
611
------------------------------------------------------------------
 
612
Capturing subpattern count = 1
 
613
No options
 
614
Case state changes
 
615
First char = 'b' (caseless)
 
616
No need char
 
617
Study returned NULL
 
618
 
 
619
/(a*b|(?i:c*(?-i)d))/S
 
620
Capturing subpattern count = 1
 
621
Partial matching not supported
 
622
No options
 
623
Case state changes
 
624
No first char
 
625
No need char
 
626
Starting byte set: C a b c d 
 
627
 
 
628
/a$/
 
629
Capturing subpattern count = 0
 
630
No options
 
631
First char = 'a'
 
632
No need char
 
633
    a
 
634
 0: a
 
635
    a\n
 
636
 0: a
 
637
    *** Failers 
 
638
No match
 
639
    \Za
 
640
No match
 
641
    \Za\n   
 
642
No match
 
643
 
 
644
/a$/m
 
645
Capturing subpattern count = 0
 
646
Options: multiline
 
647
First char = 'a'
 
648
No need char
 
649
    a
 
650
 0: a
 
651
    a\n
 
652
 0: a
 
653
    \Za\n   
 
654
 0: a
 
655
    *** Failers 
 
656
No match
 
657
    \Za
 
658
No match
 
659
    
 
660
/\Aabc/m
 
661
Capturing subpattern count = 0
 
662
Options: anchored multiline
 
663
No first char
 
664
No need char
 
665
 
 
666
/^abc/m 
 
667
Capturing subpattern count = 0
 
668
Options: multiline
 
669
First char at start or follows \n
 
670
Need char = 'c'
 
671
 
 
672
/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/
 
673
Capturing subpattern count = 5
 
674
Partial matching not supported
 
675
Options: anchored
 
676
No first char
 
677
No need char
 
678
  aaaaabbbbbcccccdef
 
679
 0: aaaaabbbbbcccccdef
 
680
 1: aaaaabbbbbcccccdef
 
681
 2: aaaaa
 
682
 3: b
 
683
 4: bbbbccccc
 
684
 5: def
 
685
 
 
686
/(?<=foo)[ab]/S
 
687
Capturing subpattern count = 0
 
688
No options
 
689
No first char
 
690
No need char
 
691
Starting byte set: a b 
 
692
 
 
693
/(?<!foo)(alpha|omega)/S
 
694
Capturing subpattern count = 1
 
695
No options
 
696
No first char
 
697
Need char = 'a'
 
698
Starting byte set: a o 
 
699
 
 
700
/(?!alphabet)[ab]/S
 
701
Capturing subpattern count = 0
 
702
No options
 
703
No first char
 
704
No need char
 
705
Starting byte set: a b 
 
706
 
 
707
/(?<=foo\n)^bar/m
 
708
Capturing subpattern count = 0
 
709
Options: multiline
 
710
No first char
 
711
Need char = 'r'
 
712
    foo\nbarbar 
 
713
 0: bar
 
714
    ***Failers
 
715
No match
 
716
    rhubarb 
 
717
No match
 
718
    barbell
 
719
No match
 
720
    abc\nbarton 
 
721
No match
 
722
 
 
723
/^(?<=foo\n)bar/m
 
724
Capturing subpattern count = 0
 
725
Options: multiline
 
726
First char at start or follows \n
 
727
Need char = 'r'
 
728
    foo\nbarbar 
 
729
 0: bar
 
730
    ***Failers
 
731
No match
 
732
    rhubarb 
 
733
No match
 
734
    barbell
 
735
No match
 
736
    abc\nbarton 
 
737
No match
 
738
 
 
739
/(?>^abc)/m
 
740
Capturing subpattern count = 0
 
741
Options: multiline
 
742
First char at start or follows \n
 
743
Need char = 'c'
 
744
    abc
 
745
 0: abc
 
746
    def\nabc
 
747
 0: abc
 
748
    *** Failers
 
749
No match
 
750
    defabc   
 
751
No match
 
752
 
 
753
/(?<=ab(c+)d)ef/
 
754
Failed: lookbehind assertion is not fixed length at offset 11
 
755
 
 
756
/(?<=ab(?<=c+)d)ef/
 
757
Failed: lookbehind assertion is not fixed length at offset 12
 
758
 
 
759
/(?<=ab(c|de)f)g/
 
760
Failed: lookbehind assertion is not fixed length at offset 13
 
761
 
 
762
/The next three are in testinput2 because they have variable length branches/
 
763
Capturing subpattern count = 0
 
764
No options
 
765
First char = 'T'
 
766
Need char = 's'
 
767
 
 
768
/(?<=bullock|donkey)-cart/
 
769
Capturing subpattern count = 0
 
770
No options
 
771
First char = '-'
 
772
Need char = 't'
 
773
    the bullock-cart
 
774
 0: -cart
 
775
    a donkey-cart race
 
776
 0: -cart
 
777
    *** Failers
 
778
No match
 
779
    cart
 
780
No match
 
781
    horse-and-cart    
 
782
No match
 
783
      
 
784
/(?<=ab(?i)x|y|z)/
 
785
Capturing subpattern count = 0
 
786
No options
 
787
Case state changes
 
788
No first char
 
789
No need char
 
790
 
 
791
/(?>.*)(?<=(abcd)|(xyz))/
 
792
Capturing subpattern count = 2
 
793
Partial matching not supported
 
794
No options
 
795
First char at start or follows \n
 
796
No need char
 
797
    alphabetabcd
 
798
 0: alphabetabcd
 
799
 1: abcd
 
800
    endingxyz
 
801
 0: endingxyz
 
802
 1: <unset>
 
803
 2: xyz
 
804
 
 
805
/(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/
 
806
Capturing subpattern count = 0
 
807
No options
 
808
Case state changes
 
809
First char = 'Z'
 
810
Need char = 'Z'
 
811
    abxyZZ
 
812
 0: ZZ
 
813
    abXyZZ
 
814
 0: ZZ
 
815
    ZZZ
 
816
 0: ZZ
 
817
    zZZ
 
818
 0: ZZ
 
819
    bZZ
 
820
 0: ZZ
 
821
    BZZ     
 
822
 0: ZZ
 
823
    *** Failers
 
824
No match
 
825
    ZZ 
 
826
No match
 
827
    abXYZZ 
 
828
No match
 
829
    zzz
 
830
No match
 
831
    bzz  
 
832
No match
 
833
 
 
834
/(?<!(foo)a)bar/
 
835
Capturing subpattern count = 1
 
836
No options
 
837
First char = 'b'
 
838
Need char = 'r'
 
839
    bar
 
840
 0: bar
 
841
    foobbar 
 
842
 0: bar
 
843
    *** Failers
 
844
No match
 
845
    fooabar  
 
846
No match
 
847
 
 
848
/This one is here because Perl 5.005_02 doesn't fail it/
 
849
Capturing subpattern count = 0
 
850
No options
 
851
First char = 'T'
 
852
Need char = 't'
 
853
 
 
854
/^(a)?(?(1)a|b)+$/
 
855
Capturing subpattern count = 1
 
856
Options: anchored
 
857
No first char
 
858
No need char
 
859
    *** Failers
 
860
No match
 
861
    a 
 
862
No match
 
863
 
 
864
/This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/
 
865
Capturing subpattern count = 0
 
866
No options
 
867
First char = 'T'
 
868
Need char = 'g'
 
869
 
 
870
/^(a\1?){4}$/
 
871
Capturing subpattern count = 1
 
872
Max back reference = 1
 
873
Options: anchored
 
874
No first char
 
875
No need char
 
876
    aaaaaa
 
877
 0: aaaaaa
 
878
 1: aa
 
879
    
 
880
/These are syntax tests from Perl 5.005/
 
881
Capturing subpattern count = 0
 
882
No options
 
883
First char = 'T'
 
884
Need char = '5'
 
885
 
 
886
/a[b-a]/
 
887
Failed: range out of order in character class at offset 4
 
888
 
 
889
/a[]b/
 
890
Failed: missing terminating ] for character class at offset 4
 
891
 
 
892
/a[/
 
893
Failed: missing terminating ] for character class at offset 2
 
894
 
 
895
/*a/
 
896
Failed: nothing to repeat at offset 0
 
897
 
 
898
/(*)b/
 
899
Failed: nothing to repeat at offset 1
 
900
 
 
901
/abc)/
 
902
Failed: unmatched parentheses at offset 3
 
903
 
 
904
/(abc/
 
905
Failed: missing ) at offset 4
 
906
 
 
907
/a**/
 
908
Failed: nothing to repeat at offset 2
 
909
 
 
910
/)(/
 
911
Failed: unmatched parentheses at offset 0
 
912
 
 
913
/\1/
 
914
Failed: reference to non-existent subpattern at offset 2
 
915
 
 
916
/\2/
 
917
Failed: reference to non-existent subpattern at offset 2
 
918
 
 
919
/(a)|\2/
 
920
Failed: reference to non-existent subpattern at offset 6
 
921
 
 
922
/a[b-a]/i
 
923
Failed: range out of order in character class at offset 4
 
924
 
 
925
/a[]b/i
 
926
Failed: missing terminating ] for character class at offset 4
 
927
 
 
928
/a[/i
 
929
Failed: missing terminating ] for character class at offset 2
 
930
 
 
931
/*a/i
 
932
Failed: nothing to repeat at offset 0
 
933
 
 
934
/(*)b/i
 
935
Failed: nothing to repeat at offset 1
 
936
 
 
937
/abc)/i
 
938
Failed: unmatched parentheses at offset 3
 
939
 
 
940
/(abc/i
 
941
Failed: missing ) at offset 4
 
942
 
 
943
/a**/i
 
944
Failed: nothing to repeat at offset 2
 
945
 
 
946
/)(/i
 
947
Failed: unmatched parentheses at offset 0
 
948
 
 
949
/:(?:/
 
950
Failed: missing ) at offset 4
 
951
 
 
952
/(?<%)b/
 
953
Failed: unrecognized character after (?< at offset 3
 
954
 
 
955
/a(?{)b/
 
956
Failed: unrecognized character after (? at offset 3
 
957
 
 
958
/a(?{{})b/
 
959
Failed: unrecognized character after (? at offset 3
 
960
 
 
961
/a(?{}})b/
 
962
Failed: unrecognized character after (? at offset 3
 
963
 
 
964
/a(?{"{"})b/
 
965
Failed: unrecognized character after (? at offset 3
 
966
 
 
967
/a(?{"{"}})b/
 
968
Failed: unrecognized character after (? at offset 3
 
969
 
 
970
/(?(1?)a|b)/
 
971
Failed: malformed number after (?( at offset 4
 
972
 
 
973
/(?(1)a|b|c)/
 
974
Failed: conditional group contains more than two branches at offset 10
 
975
 
 
976
/[a[:xyz:/
 
977
Failed: missing terminating ] for character class at offset 8
 
978
 
 
979
/(?<=x+)y/
 
980
Failed: lookbehind assertion is not fixed length at offset 6
 
981
 
 
982
/a{37,17}/
 
983
Failed: numbers out of order in {} quantifier at offset 7
 
984
 
 
985
/abc/\
 
986
Failed: \ at end of pattern at offset 4
 
987
 
 
988
/abc/\P
 
989
Failed: POSIX code 9: bad escape sequence at offset 4     
 
990
 
 
991
/abc/\i
 
992
Failed: \ at end of pattern at offset 4
 
993
 
 
994
/(a)bc(d)/
 
995
Capturing subpattern count = 2
 
996
No options
 
997
First char = 'a'
 
998
Need char = 'd'
 
999
    abcd
 
1000
 0: abcd
 
1001
 1: a
 
1002
 2: d
 
1003
    abcd\C2
 
1004
 0: abcd
 
1005
 1: a
 
1006
 2: d
 
1007
 2C d (1)
 
1008
    abcd\C5
 
1009
 0: abcd
 
1010
 1: a
 
1011
 2: d
 
1012
copy substring 5 failed -7
 
1013
     
 
1014
/(.{20})/
 
1015
Capturing subpattern count = 1
 
1016
Partial matching not supported
 
1017
No options
 
1018
No first char
 
1019
No need char
 
1020
    abcdefghijklmnopqrstuvwxyz
 
1021
 0: abcdefghijklmnopqrst
 
1022
 1: abcdefghijklmnopqrst
 
1023
    abcdefghijklmnopqrstuvwxyz\C1
 
1024
 0: abcdefghijklmnopqrst
 
1025
 1: abcdefghijklmnopqrst
 
1026
copy substring 1 failed -6
 
1027
    abcdefghijklmnopqrstuvwxyz\G1
 
1028
 0: abcdefghijklmnopqrst
 
1029
 1: abcdefghijklmnopqrst
 
1030
 1G abcdefghijklmnopqrst (20)
 
1031
     
 
1032
/(.{15})/
 
1033
Capturing subpattern count = 1
 
1034
Partial matching not supported
 
1035
No options
 
1036
No first char
 
1037
No need char
 
1038
    abcdefghijklmnopqrstuvwxyz
 
1039
 0: abcdefghijklmno
 
1040
 1: abcdefghijklmno
 
1041
    abcdefghijklmnopqrstuvwxyz\C1\G1
 
1042
 0: abcdefghijklmno
 
1043
 1: abcdefghijklmno
 
1044
 1C abcdefghijklmno (15)
 
1045
 1G abcdefghijklmno (15)
 
1046
 
 
1047
/(.{16})/
 
1048
Capturing subpattern count = 1
 
1049
Partial matching not supported
 
1050
No options
 
1051
No first char
 
1052
No need char
 
1053
    abcdefghijklmnopqrstuvwxyz
 
1054
 0: abcdefghijklmnop
 
1055
 1: abcdefghijklmnop
 
1056
    abcdefghijklmnopqrstuvwxyz\C1\G1\L
 
1057
 0: abcdefghijklmnop
 
1058
 1: abcdefghijklmnop
 
1059
copy substring 1 failed -6
 
1060
 1G abcdefghijklmnop (16)
 
1061
 0L abcdefghijklmnop
 
1062
 1L abcdefghijklmnop
 
1063
    
 
1064
/^(a|(bc))de(f)/
 
1065
Capturing subpattern count = 3
 
1066
Options: anchored
 
1067
No first char
 
1068
No need char
 
1069
    adef\G1\G2\G3\G4\L 
 
1070
 0: adef
 
1071
 1: a
 
1072
 2: <unset>
 
1073
 3: f
 
1074
 1G a (1)
 
1075
 2G  (0)
 
1076
 3G f (1)
 
1077
get substring 4 failed -7
 
1078
 0L adef
 
1079
 1L a
 
1080
 2L 
 
1081
 3L f
 
1082
    bcdef\G1\G2\G3\G4\L 
 
1083
 0: bcdef
 
1084
 1: bc
 
1085
 2: bc
 
1086
 3: f
 
1087
 1G bc (2)
 
1088
 2G bc (2)
 
1089
 3G f (1)
 
1090
get substring 4 failed -7
 
1091
 0L bcdef
 
1092
 1L bc
 
1093
 2L bc
 
1094
 3L f
 
1095
    adefghijk\C0 
 
1096
 0: adef
 
1097
 1: a
 
1098
 2: <unset>
 
1099
 3: f
 
1100
 0C adef (4)
 
1101
    
 
1102
/^abc\00def/
 
1103
Capturing subpattern count = 0
 
1104
Options: anchored
 
1105
No first char
 
1106
No need char
 
1107
    abc\00def\L\C0 
 
1108
 0: abc\x00def
 
1109
 0C abc (7)
 
1110
 0L abc
 
1111
    
 
1112
/word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ 
 
1113
)((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ 
 
1114
)?)?)?)?)?)?)?)?)?otherword/M
 
1115
Memory allocation (code space): 432
 
1116
Capturing subpattern count = 8
 
1117
Partial matching not supported
 
1118
No options
 
1119
First char = 'w'
 
1120
Need char = 'd'
 
1121
 
 
1122
/.*X/D
 
1123
------------------------------------------------------------------
 
1124
  0   7 Bra 0
 
1125
  3     Any*
 
1126
  5     X
 
1127
  7   7 Ket
 
1128
 10     End
 
1129
------------------------------------------------------------------
 
1130
Capturing subpattern count = 0
 
1131
Partial matching not supported
 
1132
No options
 
1133
First char at start or follows \n
 
1134
Need char = 'X'
 
1135
 
 
1136
/.*X/Ds
 
1137
------------------------------------------------------------------
 
1138
  0   7 Bra 0
 
1139
  3     Any*
 
1140
  5     X
 
1141
  7   7 Ket
 
1142
 10     End
 
1143
------------------------------------------------------------------
 
1144
Capturing subpattern count = 0
 
1145
Partial matching not supported
 
1146
Options: anchored dotall
 
1147
No first char
 
1148
Need char = 'X'
 
1149
 
 
1150
/(.*X|^B)/D
 
1151
------------------------------------------------------------------
 
1152
  0  19 Bra 0
 
1153
  3   7 Bra 1
 
1154
  6     Any*
 
1155
  8     X
 
1156
 10   6 Alt
 
1157
 13     ^
 
1158
 14     B
 
1159
 16  13 Ket
 
1160
 19  19 Ket
 
1161
 22     End
 
1162
------------------------------------------------------------------
 
1163
Capturing subpattern count = 1
 
1164
Partial matching not supported
 
1165
No options
 
1166
First char at start or follows \n
 
1167
No need char
 
1168
 
 
1169
/(.*X|^B)/Ds
 
1170
------------------------------------------------------------------
 
1171
  0  19 Bra 0
 
1172
  3   7 Bra 1
 
1173
  6     Any*
 
1174
  8     X
 
1175
 10   6 Alt
 
1176
 13     ^
 
1177
 14     B
 
1178
 16  13 Ket
 
1179
 19  19 Ket
 
1180
 22     End
 
1181
------------------------------------------------------------------
 
1182
Capturing subpattern count = 1
 
1183
Partial matching not supported
 
1184
Options: anchored dotall
 
1185
No first char
 
1186
No need char
 
1187
    
 
1188
/(?s)(.*X|^B)/D
 
1189
------------------------------------------------------------------
 
1190
  0  19 Bra 0
 
1191
  3   7 Bra 1
 
1192
  6     Any*
 
1193
  8     X
 
1194
 10   6 Alt
 
1195
 13     ^
 
1196
 14     B
 
1197
 16  13 Ket
 
1198
 19  19 Ket
 
1199
 22     End
 
1200
------------------------------------------------------------------
 
1201
Capturing subpattern count = 1
 
1202
Partial matching not supported
 
1203
Options: anchored dotall
 
1204
No first char
 
1205
No need char
 
1206
 
 
1207
/(?s:.*X|^B)/D
 
1208
------------------------------------------------------------------
 
1209
  0  25 Bra 0
 
1210
  3   9 Bra 0
 
1211
  6  04 Opt
 
1212
  8     Any*
 
1213
 10     X
 
1214
 12   8 Alt
 
1215
 15  04 Opt
 
1216
 17     ^
 
1217
 18     B
 
1218
 20  17 Ket
 
1219
 23  00 Opt
 
1220
 25  25 Ket
 
1221
 28     End
 
1222
------------------------------------------------------------------
 
1223
Capturing subpattern count = 0
 
1224
Partial matching not supported
 
1225
No options
 
1226
First char at start or follows \n
 
1227
No need char
 
1228
 
 
1229
/\Biss\B/+
 
1230
Capturing subpattern count = 0
 
1231
No options
 
1232
First char = 'i'
 
1233
Need char = 's'
 
1234
    Mississippi
 
1235
 0: iss
 
1236
 0+ issippi
 
1237
 
 
1238
/\Biss\B/+P
 
1239
    Mississippi
 
1240
 0: iss
 
1241
 0+ issippi
 
1242
 
 
1243
/iss/G+
 
1244
Capturing subpattern count = 0
 
1245
No options
 
1246
First char = 'i'
 
1247
Need char = 's'
 
1248
    Mississippi
 
1249
 0: iss
 
1250
 0+ issippi
 
1251
 0: iss
 
1252
 0+ ippi
 
1253
 
 
1254
/\Biss\B/G+
 
1255
Capturing subpattern count = 0
 
1256
No options
 
1257
First char = 'i'
 
1258
Need char = 's'
 
1259
    Mississippi
 
1260
 0: iss
 
1261
 0+ issippi
 
1262
 
 
1263
/\Biss\B/g+
 
1264
Capturing subpattern count = 0
 
1265
No options
 
1266
First char = 'i'
 
1267
Need char = 's'
 
1268
    Mississippi
 
1269
 0: iss
 
1270
 0+ issippi
 
1271
 0: iss
 
1272
 0+ ippi
 
1273
    *** Failers
 
1274
No match
 
1275
    Mississippi\A
 
1276
No match
 
1277
 
 
1278
/(?<=[Ms])iss/g+
 
1279
Capturing subpattern count = 0
 
1280
No options
 
1281
First char = 'i'
 
1282
Need char = 's'
 
1283
    Mississippi
 
1284
 0: iss
 
1285
 0+ issippi
 
1286
 0: iss
 
1287
 0+ ippi
 
1288
 
 
1289
/(?<=[Ms])iss/G+
 
1290
Capturing subpattern count = 0
 
1291
No options
 
1292
First char = 'i'
 
1293
Need char = 's'
 
1294
    Mississippi
 
1295
 0: iss
 
1296
 0+ issippi
 
1297
 
 
1298
/^iss/g+
 
1299
Capturing subpattern count = 0
 
1300
Options: anchored
 
1301
No first char
 
1302
No need char
 
1303
    ississippi
 
1304
 0: iss
 
1305
 0+ issippi
 
1306
    
 
1307
/.*iss/g+
 
1308
Capturing subpattern count = 0
 
1309
Partial matching not supported
 
1310
No options
 
1311
First char at start or follows \n
 
1312
Need char = 's'
 
1313
    abciss\nxyzisspqr 
 
1314
 0: abciss
 
1315
 0+ \x0axyzisspqr
 
1316
 0: xyziss
 
1317
 0+ pqr
 
1318
 
 
1319
/.i./+g
 
1320
Capturing subpattern count = 0
 
1321
No options
 
1322
No first char
 
1323
Need char = 'i'
 
1324
    Mississippi
 
1325
 0: Mis
 
1326
 0+ sissippi
 
1327
 0: sis
 
1328
 0+ sippi
 
1329
 0: sip
 
1330
 0+ pi
 
1331
    Mississippi\A
 
1332
 0: Mis
 
1333
 0+ sissippi
 
1334
 0: sis
 
1335
 0+ sippi
 
1336
 0: sip
 
1337
 0+ pi
 
1338
    Missouri river
 
1339
 0: Mis
 
1340
 0+ souri river
 
1341
 0: ri 
 
1342
 0+ river
 
1343
 0: riv
 
1344
 0+ er
 
1345
    Missouri river\A  
 
1346
 0: Mis
 
1347
 0+ souri river
 
1348
 
 
1349
/^.is/+g
 
1350
Capturing subpattern count = 0
 
1351
Options: anchored
 
1352
No first char
 
1353
No need char
 
1354
    Mississippi
 
1355
 0: Mis
 
1356
 0+ sissippi
 
1357
 
 
1358
/^ab\n/g+
 
1359
Capturing subpattern count = 0
 
1360
Options: anchored
 
1361
No first char
 
1362
No need char
 
1363
    ab\nab\ncd
 
1364
 0: ab\x0a
 
1365
 0+ ab\x0acd
 
1366
 
 
1367
/^ab\n/mg+
 
1368
Capturing subpattern count = 0
 
1369
Options: multiline
 
1370
First char at start or follows \n
 
1371
Need char = 10
 
1372
    ab\nab\ncd
 
1373
 0: ab\x0a
 
1374
 0+ ab\x0acd
 
1375
 0: ab\x0a
 
1376
 0+ cd
 
1377
 
 
1378
/abc/
 
1379
Capturing subpattern count = 0
 
1380
No options
 
1381
First char = 'a'
 
1382
Need char = 'c'
 
1383
 
 
1384
/abc|bac/
 
1385
Capturing subpattern count = 0
 
1386
No options
 
1387
No first char
 
1388
Need char = 'c'
 
1389
 
 
1390
/(abc|bac)/
 
1391
Capturing subpattern count = 1
 
1392
No options
 
1393
No first char
 
1394
Need char = 'c'
 
1395
 
 
1396
/(abc|(c|dc))/
 
1397
Capturing subpattern count = 2
 
1398
No options
 
1399
No first char
 
1400
Need char = 'c'
 
1401
 
 
1402
/(abc|(d|de)c)/
 
1403
Capturing subpattern count = 2
 
1404
No options
 
1405
No first char
 
1406
Need char = 'c'
 
1407
 
 
1408
/a*/
 
1409
Capturing subpattern count = 0
 
1410
Partial matching not supported
 
1411
No options
 
1412
No first char
 
1413
No need char
 
1414
 
 
1415
/a+/
 
1416
Capturing subpattern count = 0
 
1417
Partial matching not supported
 
1418
No options
 
1419
First char = 'a'
 
1420
No need char
 
1421
 
 
1422
/(baa|a+)/
 
1423
Capturing subpattern count = 1
 
1424
Partial matching not supported
 
1425
No options
 
1426
No first char
 
1427
Need char = 'a'
 
1428
 
 
1429
/a{0,3}/
 
1430
Capturing subpattern count = 0
 
1431
Partial matching not supported
 
1432
No options
 
1433
No first char
 
1434
No need char
 
1435
 
 
1436
/baa{3,}/
 
1437
Capturing subpattern count = 0
 
1438
Partial matching not supported
 
1439
No options
 
1440
First char = 'b'
 
1441
Need char = 'a'
 
1442
 
 
1443
/"([^\\"]+|\\.)*"/
 
1444
Capturing subpattern count = 1
 
1445
Partial matching not supported
 
1446
No options
 
1447
First char = '"'
 
1448
Need char = '"'
 
1449
 
 
1450
/(abc|ab[cd])/
 
1451
Capturing subpattern count = 1
 
1452
No options
 
1453
First char = 'a'
 
1454
No need char
 
1455
 
 
1456
/(a|.)/
 
1457
Capturing subpattern count = 1
 
1458
No options
 
1459
No first char
 
1460
No need char
 
1461
 
 
1462
/a|ba|\w/
 
1463
Capturing subpattern count = 0
 
1464
No options
 
1465
No first char
 
1466
No need char
 
1467
 
 
1468
/abc(?=pqr)/
 
1469
Capturing subpattern count = 0
 
1470
No options
 
1471
First char = 'a'
 
1472
Need char = 'r'
 
1473
 
 
1474
/...(?<=abc)/
 
1475
Capturing subpattern count = 0
 
1476
No options
 
1477
No first char
 
1478
No need char
 
1479
 
 
1480
/abc(?!pqr)/
 
1481
Capturing subpattern count = 0
 
1482
No options
 
1483
First char = 'a'
 
1484
Need char = 'c'
 
1485
 
 
1486
/ab./
 
1487
Capturing subpattern count = 0
 
1488
No options
 
1489
First char = 'a'
 
1490
Need char = 'b'
 
1491
 
 
1492
/ab[xyz]/
 
1493
Capturing subpattern count = 0
 
1494
No options
 
1495
First char = 'a'
 
1496
Need char = 'b'
 
1497
 
 
1498
/abc*/
 
1499
Capturing subpattern count = 0
 
1500
Partial matching not supported
 
1501
No options
 
1502
First char = 'a'
 
1503
Need char = 'b'
 
1504
 
 
1505
/ab.c*/
 
1506
Capturing subpattern count = 0
 
1507
Partial matching not supported
 
1508
No options
 
1509
First char = 'a'
 
1510
Need char = 'b'
 
1511
 
 
1512
/a.c*/
 
1513
Capturing subpattern count = 0
 
1514
Partial matching not supported
 
1515
No options
 
1516
First char = 'a'
 
1517
No need char
 
1518
 
 
1519
/.c*/
 
1520
Capturing subpattern count = 0
 
1521
Partial matching not supported
 
1522
No options
 
1523
No first char
 
1524
No need char
 
1525
 
 
1526
/ac*/
 
1527
Capturing subpattern count = 0
 
1528
Partial matching not supported
 
1529
No options
 
1530
First char = 'a'
 
1531
No need char
 
1532
 
 
1533
/(a.c*|b.c*)/
 
1534
Capturing subpattern count = 1
 
1535
Partial matching not supported
 
1536
No options
 
1537
No first char
 
1538
No need char
 
1539
 
 
1540
/a.c*|aba/
 
1541
Capturing subpattern count = 0
 
1542
Partial matching not supported
 
1543
No options
 
1544
First char = 'a'
 
1545
No need char
 
1546
 
 
1547
/.+a/
 
1548
Capturing subpattern count = 0
 
1549
Partial matching not supported
 
1550
No options
 
1551
No first char
 
1552
Need char = 'a'
 
1553
 
 
1554
/(?=abcda)a.*/
 
1555
Capturing subpattern count = 0
 
1556
Partial matching not supported
 
1557
No options
 
1558
First char = 'a'
 
1559
Need char = 'a'
 
1560
 
 
1561
/(?=a)a.*/
 
1562
Capturing subpattern count = 0
 
1563
Partial matching not supported
 
1564
No options
 
1565
First char = 'a'
 
1566
No need char
 
1567
 
 
1568
/a(b)*/
 
1569
Capturing subpattern count = 1
 
1570
No options
 
1571
First char = 'a'
 
1572
No need char
 
1573
 
 
1574
/a\d*/
 
1575
Capturing subpattern count = 0
 
1576
Partial matching not supported
 
1577
No options
 
1578
First char = 'a'
 
1579
No need char
 
1580
 
 
1581
/ab\d*/
 
1582
Capturing subpattern count = 0
 
1583
Partial matching not supported
 
1584
No options
 
1585
First char = 'a'
 
1586
Need char = 'b'
 
1587
 
 
1588
/a(\d)*/
 
1589
Capturing subpattern count = 1
 
1590
No options
 
1591
First char = 'a'
 
1592
No need char
 
1593
 
 
1594
/abcde{0,0}/
 
1595
Capturing subpattern count = 0
 
1596
No options
 
1597
First char = 'a'
 
1598
Need char = 'd'
 
1599
 
 
1600
/ab\d+/
 
1601
Capturing subpattern count = 0
 
1602
Partial matching not supported
 
1603
No options
 
1604
First char = 'a'
 
1605
Need char = 'b'
 
1606
 
 
1607
/a(?(1)b)/
 
1608
Capturing subpattern count = 0
 
1609
No options
 
1610
First char = 'a'
 
1611
No need char
 
1612
 
 
1613
/a(?(1)bag|big)/
 
1614
Capturing subpattern count = 0
 
1615
No options
 
1616
First char = 'a'
 
1617
Need char = 'g'
 
1618
 
 
1619
/a(?(1)bag|big)*/
 
1620
Capturing subpattern count = 0
 
1621
No options
 
1622
First char = 'a'
 
1623
No need char
 
1624
 
 
1625
/a(?(1)bag|big)+/
 
1626
Capturing subpattern count = 0
 
1627
No options
 
1628
First char = 'a'
 
1629
Need char = 'g'
 
1630
 
 
1631
/a(?(1)b..|b..)/
 
1632
Capturing subpattern count = 0
 
1633
No options
 
1634
First char = 'a'
 
1635
Need char = 'b'
 
1636
 
 
1637
/ab\d{0}e/
 
1638
Capturing subpattern count = 0
 
1639
No options
 
1640
First char = 'a'
 
1641
Need char = 'e'
 
1642
 
 
1643
/a?b?/
 
1644
Capturing subpattern count = 0
 
1645
No options
 
1646
No first char
 
1647
No need char
 
1648
    a
 
1649
 0: a
 
1650
    b
 
1651
 0: b
 
1652
    ab
 
1653
 0: ab
 
1654
    \
 
1655
 0: 
 
1656
    *** Failers
 
1657
 0: 
 
1658
    \N     
 
1659
No match
 
1660
    
 
1661
/|-/
 
1662
Capturing subpattern count = 0
 
1663
No options
 
1664
No first char
 
1665
No need char
 
1666
    abcd
 
1667
 0: 
 
1668
    -abc
 
1669
 0: 
 
1670
    \Nab-c
 
1671
 0: -
 
1672
    *** Failers
 
1673
 0: 
 
1674
    \Nabc     
 
1675
No match
 
1676
 
 
1677
/a*(b+)(z)(z)/P
 
1678
    aaaabbbbzzzz
 
1679
 0: aaaabbbbzz
 
1680
 1: bbbb
 
1681
 2: z
 
1682
 3: z
 
1683
    aaaabbbbzzzz\O0
 
1684
    aaaabbbbzzzz\O1
 
1685
 0: aaaabbbbzz
 
1686
    aaaabbbbzzzz\O2
 
1687
 0: aaaabbbbzz
 
1688
 1: bbbb
 
1689
    aaaabbbbzzzz\O3
 
1690
 0: aaaabbbbzz
 
1691
 1: bbbb
 
1692
 2: z
 
1693
    aaaabbbbzzzz\O4
 
1694
 0: aaaabbbbzz
 
1695
 1: bbbb
 
1696
 2: z
 
1697
 3: z
 
1698
    aaaabbbbzzzz\O5
 
1699
 0: aaaabbbbzz
 
1700
 1: bbbb
 
1701
 2: z
 
1702
 3: z
 
1703
    
 
1704
/^.?abcd/S 
 
1705
Capturing subpattern count = 0
 
1706
Options: anchored
 
1707
No first char
 
1708
Need char = 'd'
 
1709
Study returned NULL
 
1710
 
 
1711
/\(             # ( at start
 
1712
  (?:           # Non-capturing bracket
 
1713
  (?>[^()]+)    # Either a sequence of non-brackets (no backtracking)
 
1714
  |             # Or
 
1715
  (?R)          # Recurse - i.e. nested bracketed string
 
1716
  )*            # Zero or more contents
 
1717
  \)            # Closing )
 
1718
  /x
 
1719
Capturing subpattern count = 0
 
1720
Partial matching not supported
 
1721
Options: extended
 
1722
First char = '('
 
1723
Need char = ')'
 
1724
    (abcd)
 
1725
 0: (abcd)
 
1726
    (abcd)xyz
 
1727
 0: (abcd)
 
1728
    xyz(abcd)
 
1729
 0: (abcd)
 
1730
    (ab(xy)cd)pqr 
 
1731
 0: (ab(xy)cd)
 
1732
    (ab(xycd)pqr 
 
1733
 0: (xycd)
 
1734
    () abc () 
 
1735
 0: ()
 
1736
    12(abcde(fsh)xyz(foo(bar))lmno)89
 
1737
 0: (abcde(fsh)xyz(foo(bar))lmno)
 
1738
    *** Failers
 
1739
No match
 
1740
    abcd 
 
1741
No match
 
1742
    abcd)
 
1743
No match
 
1744
    (abcd  
 
1745
No match
 
1746
 
 
1747
/\(  ( (?>[^()]+) | (?R) )* \) /xg
 
1748
Capturing subpattern count = 1
 
1749
Partial matching not supported
 
1750
Options: extended
 
1751
First char = '('
 
1752
Need char = ')'
 
1753
    (ab(xy)cd)pqr 
 
1754
 0: (ab(xy)cd)
 
1755
 1: cd
 
1756
    1(abcd)(x(y)z)pqr
 
1757
 0: (abcd)
 
1758
 1: abcd
 
1759
 0: (x(y)z)
 
1760
 1: z
 
1761
 
 
1762
/\(  (?: (?>[^()]+) | (?R) ) \) /x
 
1763
Capturing subpattern count = 0
 
1764
Partial matching not supported
 
1765
Options: extended
 
1766
First char = '('
 
1767
Need char = ')'
 
1768
    (abcd)
 
1769
 0: (abcd)
 
1770
    (ab(xy)cd)
 
1771
 0: (xy)
 
1772
    (a(b(c)d)e) 
 
1773
 0: (c)
 
1774
    ((ab)) 
 
1775
 0: ((ab))
 
1776
    *** Failers
 
1777
No match
 
1778
    ()   
 
1779
No match
 
1780
 
 
1781
/\(  (?: (?>[^()]+) | (?R) )? \) /x
 
1782
Capturing subpattern count = 0
 
1783
Partial matching not supported
 
1784
Options: extended
 
1785
First char = '('
 
1786
Need char = ')'
 
1787
    ()
 
1788
 0: ()
 
1789
    12(abcde(fsh)xyz(foo(bar))lmno)89
 
1790
 0: (fsh)
 
1791
 
 
1792
/\(  ( (?>[^()]+) | (?R) )* \) /x
 
1793
Capturing subpattern count = 1
 
1794
Partial matching not supported
 
1795
Options: extended
 
1796
First char = '('
 
1797
Need char = ')'
 
1798
    (ab(xy)cd)
 
1799
 0: (ab(xy)cd)
 
1800
 1: cd
 
1801
 
 
1802
/\( ( ( (?>[^()]+) | (?R) )* ) \) /x
 
1803
Capturing subpattern count = 2
 
1804
Partial matching not supported
 
1805
Options: extended
 
1806
First char = '('
 
1807
Need char = ')'
 
1808
    (ab(xy)cd)
 
1809
 0: (ab(xy)cd)
 
1810
 1: ab(xy)cd
 
1811
 2: cd
 
1812
 
 
1813
/\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /x
 
1814
Capturing subpattern count = 3
 
1815
Partial matching not supported
 
1816
Options: extended
 
1817
First char = '('
 
1818
Need char = ')'
 
1819
    (ab(xy)cd)
 
1820
 0: (ab(xy)cd)
 
1821
 1: <unset>
 
1822
 2: ab(xy)cd
 
1823
 3: cd
 
1824
    (123ab(xy)cd)
 
1825
 0: (123ab(xy)cd)
 
1826
 1: 123
 
1827
 2: ab(xy)cd
 
1828
 3: cd
 
1829
 
 
1830
/\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /x
 
1831
Capturing subpattern count = 3
 
1832
Partial matching not supported
 
1833
Options: extended
 
1834
First char = '('
 
1835
Need char = ')'
 
1836
    (ab(xy)cd)
 
1837
 0: (ab(xy)cd)
 
1838
 1: ab(xy)cd
 
1839
 2: <unset>
 
1840
 3: cd
 
1841
    (123ab(xy)cd)
 
1842
 0: (123ab(xy)cd)
 
1843
 1: 123ab(xy)cd
 
1844
 2: 123
 
1845
 3: cd
 
1846
 
 
1847
/\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /x
 
1848
Capturing subpattern count = 11
 
1849
Partial matching not supported
 
1850
Options: extended
 
1851
First char = '('
 
1852
Need char = ')'
 
1853
    (ab(xy)cd)
 
1854
 0: (ab(xy)cd)
 
1855
 1: ab(xy)cd
 
1856
 2: ab(xy)cd
 
1857
 3: ab(xy)cd
 
1858
 4: ab(xy)cd
 
1859
 5: ab(xy)cd
 
1860
 6: ab(xy)cd
 
1861
 7: ab(xy)cd
 
1862
 8: ab(xy)cd
 
1863
 9: ab(xy)cd
 
1864
10: ab(xy)cd
 
1865
11: cd
 
1866
 
 
1867
/\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /x
 
1868
Capturing subpattern count = 3
 
1869
Partial matching not supported
 
1870
Options: extended
 
1871
First char = '('
 
1872
Need char = ')'
 
1873
    (abcd(xyz<p>qrs)123)
 
1874
 0: (abcd(xyz<p>qrs)123)
 
1875
 1: abcd(xyz<p>qrs)123
 
1876
 2: 123
 
1877
 3: <unset>
 
1878
 
 
1879
/\( ( ( (?>[^()]+) | ((?R)) )* ) \) /x
 
1880
Capturing subpattern count = 3
 
1881
Partial matching not supported
 
1882
Options: extended
 
1883
First char = '('
 
1884
Need char = ')'
 
1885
    (ab(cd)ef)
 
1886
 0: (ab(cd)ef)
 
1887
 1: ab(cd)ef
 
1888
 2: ef
 
1889
 3: (cd)
 
1890
    (ab(cd(ef)gh)ij)
 
1891
 0: (ab(cd(ef)gh)ij)
 
1892
 1: ab(cd(ef)gh)ij
 
1893
 2: ij
 
1894
 3: (cd(ef)gh)
 
1895
 
 
1896
/^[[:alnum:]]/D
 
1897
------------------------------------------------------------------
 
1898
  0  37 Bra 0
 
1899
  3     ^
 
1900
  4     [0-9A-Za-z]
 
1901
 37  37 Ket
 
1902
 40     End
 
1903
------------------------------------------------------------------
 
1904
Capturing subpattern count = 0
 
1905
Options: anchored
 
1906
No first char
 
1907
No need char
 
1908
 
 
1909
/^[[:^alnum:]]/D
 
1910
------------------------------------------------------------------
 
1911
  0  37 Bra 0
 
1912
  3     ^
 
1913
  4     [\x00-/:-@[-`{-\xff]
 
1914
 37  37 Ket
 
1915
 40     End
 
1916
------------------------------------------------------------------
 
1917
Capturing subpattern count = 0
 
1918
Options: anchored
 
1919
No first char
 
1920
No need char
 
1921
 
 
1922
/^[[:alpha:]]/D
 
1923
------------------------------------------------------------------
 
1924
  0  37 Bra 0
 
1925
  3     ^
 
1926
  4     [A-Za-z]
 
1927
 37  37 Ket
 
1928
 40     End
 
1929
------------------------------------------------------------------
 
1930
Capturing subpattern count = 0
 
1931
Options: anchored
 
1932
No first char
 
1933
No need char
 
1934
 
 
1935
/^[[:^alpha:]]/D
 
1936
------------------------------------------------------------------
 
1937
  0  37 Bra 0
 
1938
  3     ^
 
1939
  4     [\x00-@[-`{-\xff]
 
1940
 37  37 Ket
 
1941
 40     End
 
1942
------------------------------------------------------------------
 
1943
Capturing subpattern count = 0
 
1944
Options: anchored
 
1945
No first char
 
1946
No need char
 
1947
             
 
1948
/^[[:ascii:]]/D
 
1949
------------------------------------------------------------------
 
1950
  0  37 Bra 0
 
1951
  3     ^
 
1952
  4     [\x00-\x7f]
 
1953
 37  37 Ket
 
1954
 40     End
 
1955
------------------------------------------------------------------
 
1956
Capturing subpattern count = 0
 
1957
Options: anchored
 
1958
No first char
 
1959
No need char
 
1960
 
 
1961
/^[[:^ascii:]]/D
 
1962
------------------------------------------------------------------
 
1963
  0  37 Bra 0
 
1964
  3     ^
 
1965
  4     [\x80-\xff]
 
1966
 37  37 Ket
 
1967
 40     End
 
1968
------------------------------------------------------------------
 
1969
Capturing subpattern count = 0
 
1970
Options: anchored
 
1971
No first char
 
1972
No need char
 
1973
 
 
1974
/^[[:blank:]]/D
 
1975
------------------------------------------------------------------
 
1976
  0  37 Bra 0
 
1977
  3     ^
 
1978
  4     [\x09 ]
 
1979
 37  37 Ket
 
1980
 40     End
 
1981
------------------------------------------------------------------
 
1982
Capturing subpattern count = 0
 
1983
Options: anchored
 
1984
No first char
 
1985
No need char
 
1986
 
 
1987
/^[[:cntrl:]]/D
 
1988
------------------------------------------------------------------
 
1989
  0  37 Bra 0
 
1990
  3     ^
 
1991
  4     [\x00-\x1f\x7f]
 
1992
 37  37 Ket
 
1993
 40     End
 
1994
------------------------------------------------------------------
 
1995
Capturing subpattern count = 0
 
1996
Options: anchored
 
1997
No first char
 
1998
No need char
 
1999
 
 
2000
/^[[:digit:]]/D
 
2001
------------------------------------------------------------------
 
2002
  0  37 Bra 0
 
2003
  3     ^
 
2004
  4     [0-9]
 
2005
 37  37 Ket
 
2006
 40     End
 
2007
------------------------------------------------------------------
 
2008
Capturing subpattern count = 0
 
2009
Options: anchored
 
2010
No first char
 
2011
No need char
 
2012
 
 
2013
/^[[:graph:]]/D
 
2014
------------------------------------------------------------------
 
2015
  0  37 Bra 0
 
2016
  3     ^
 
2017
  4     [!-~]
 
2018
 37  37 Ket
 
2019
 40     End
 
2020
------------------------------------------------------------------
 
2021
Capturing subpattern count = 0
 
2022
Options: anchored
 
2023
No first char
 
2024
No need char
 
2025
 
 
2026
/^[[:lower:]]/D
 
2027
------------------------------------------------------------------
 
2028
  0  37 Bra 0
 
2029
  3     ^
 
2030
  4     [a-z]
 
2031
 37  37 Ket
 
2032
 40     End
 
2033
------------------------------------------------------------------
 
2034
Capturing subpattern count = 0
 
2035
Options: anchored
 
2036
No first char
 
2037
No need char
 
2038
 
 
2039
/^[[:print:]]/D
 
2040
------------------------------------------------------------------
 
2041
  0  37 Bra 0
 
2042
  3     ^
 
2043
  4     [ -~]
 
2044
 37  37 Ket
 
2045
 40     End
 
2046
------------------------------------------------------------------
 
2047
Capturing subpattern count = 0
 
2048
Options: anchored
 
2049
No first char
 
2050
No need char
 
2051
 
 
2052
/^[[:punct:]]/D
 
2053
------------------------------------------------------------------
 
2054
  0  37 Bra 0
 
2055
  3     ^
 
2056
  4     [!-/:-@[-`{-~]
 
2057
 37  37 Ket
 
2058
 40     End
 
2059
------------------------------------------------------------------
 
2060
Capturing subpattern count = 0
 
2061
Options: anchored
 
2062
No first char
 
2063
No need char
 
2064
 
 
2065
/^[[:space:]]/D
 
2066
------------------------------------------------------------------
 
2067
  0  37 Bra 0
 
2068
  3     ^
 
2069
  4     [\x09-\x0d ]
 
2070
 37  37 Ket
 
2071
 40     End
 
2072
------------------------------------------------------------------
 
2073
Capturing subpattern count = 0
 
2074
Options: anchored
 
2075
No first char
 
2076
No need char
 
2077
 
 
2078
/^[[:upper:]]/D
 
2079
------------------------------------------------------------------
 
2080
  0  37 Bra 0
 
2081
  3     ^
 
2082
  4     [A-Z]
 
2083
 37  37 Ket
 
2084
 40     End
 
2085
------------------------------------------------------------------
 
2086
Capturing subpattern count = 0
 
2087
Options: anchored
 
2088
No first char
 
2089
No need char
 
2090
 
 
2091
/^[[:xdigit:]]/D
 
2092
------------------------------------------------------------------
 
2093
  0  37 Bra 0
 
2094
  3     ^
 
2095
  4     [0-9A-Fa-f]
 
2096
 37  37 Ket
 
2097
 40     End
 
2098
------------------------------------------------------------------
 
2099
Capturing subpattern count = 0
 
2100
Options: anchored
 
2101
No first char
 
2102
No need char
 
2103
 
 
2104
/^[[:word:]]/D
 
2105
------------------------------------------------------------------
 
2106
  0  37 Bra 0
 
2107
  3     ^
 
2108
  4     [0-9A-Z_a-z]
 
2109
 37  37 Ket
 
2110
 40     End
 
2111
------------------------------------------------------------------
 
2112
Capturing subpattern count = 0
 
2113
Options: anchored
 
2114
No first char
 
2115
No need char
 
2116
 
 
2117
/^[[:^cntrl:]]/D
 
2118
------------------------------------------------------------------
 
2119
  0  37 Bra 0
 
2120
  3     ^
 
2121
  4     [ -~\x80-\xff]
 
2122
 37  37 Ket
 
2123
 40     End
 
2124
------------------------------------------------------------------
 
2125
Capturing subpattern count = 0
 
2126
Options: anchored
 
2127
No first char
 
2128
No need char
 
2129
 
 
2130
/^[12[:^digit:]]/D
 
2131
------------------------------------------------------------------
 
2132
  0  37 Bra 0
 
2133
  3     ^
 
2134
  4     [\x00-/12:-\xff]
 
2135
 37  37 Ket
 
2136
 40     End
 
2137
------------------------------------------------------------------
 
2138
Capturing subpattern count = 0
 
2139
Options: anchored
 
2140
No first char
 
2141
No need char
 
2142
 
 
2143
/^[[:^blank:]]/D
 
2144
------------------------------------------------------------------
 
2145
  0  37 Bra 0
 
2146
  3     ^
 
2147
  4     [\x00-\x08\x0a-\x1f!-\xff]
 
2148
 37  37 Ket
 
2149
 40     End
 
2150
------------------------------------------------------------------
 
2151
Capturing subpattern count = 0
 
2152
Options: anchored
 
2153
No first char
 
2154
No need char
 
2155
 
 
2156
/[01[:alpha:]%]/D
 
2157
------------------------------------------------------------------
 
2158
  0  36 Bra 0
 
2159
  3     [%01A-Za-z]
 
2160
 36  36 Ket
 
2161
 39     End
 
2162
------------------------------------------------------------------
 
2163
Capturing subpattern count = 0
 
2164
No options
 
2165
No first char
 
2166
No need char
 
2167
 
 
2168
/[[.ch.]]/
 
2169
Failed: POSIX collating elements are not supported at offset 1
 
2170
 
 
2171
/[[=ch=]]/
 
2172
Failed: POSIX collating elements are not supported at offset 1
 
2173
 
 
2174
/[[:rhubarb:]]/
 
2175
Failed: unknown POSIX class name at offset 3
 
2176
 
 
2177
/[[:upper:]]/i
 
2178
Capturing subpattern count = 0
 
2179
Options: caseless
 
2180
No first char
 
2181
No need char
 
2182
    A
 
2183
 0: A
 
2184
    a 
 
2185
 0: a
 
2186
    
 
2187
/[[:lower:]]/i
 
2188
Capturing subpattern count = 0
 
2189
Options: caseless
 
2190
No first char
 
2191
No need char
 
2192
    A
 
2193
 0: A
 
2194
    a 
 
2195
 0: a
 
2196
 
 
2197
/((?-i)[[:lower:]])[[:lower:]]/i
 
2198
Capturing subpattern count = 1
 
2199
Options: caseless
 
2200
Case state changes
 
2201
No first char
 
2202
No need char
 
2203
    ab
 
2204
 0: ab
 
2205
 1: a
 
2206
    aB
 
2207
 0: aB
 
2208
 1: a
 
2209
    *** Failers
 
2210
 0: ai
 
2211
 1: a
 
2212
    Ab
 
2213
No match
 
2214
    AB        
 
2215
No match
 
2216
 
 
2217
/[\200-\410]/
 
2218
Failed: range out of order in character class at offset 9
 
2219
 
 
2220
/^(?(0)f|b)oo/
 
2221
Failed: invalid condition (?(0) at offset 5
 
2222
 
 
2223
/This one's here because of the large output vector needed/
 
2224
Capturing subpattern count = 0
 
2225
No options
 
2226
First char = 'T'
 
2227
Need char = 'd'
 
2228
 
 
2229
/(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/
 
2230
Capturing subpattern count = 271
 
2231
Max back reference = 270
 
2232
Partial matching not supported
 
2233
No options
 
2234
No first char
 
2235
No need char
 
2236
    \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
 
2237
 0: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
 
2238
 1: 1 
 
2239
 2: 2 
 
2240
 3: 3 
 
2241
 4: 4 
 
2242
 5: 5 
 
2243
 6: 6 
 
2244
 7: 7 
 
2245
 8: 8 
 
2246
 9: 9 
 
2247
10: 10 
 
2248
11: 11 
 
2249
12: 12 
 
2250
13: 13 
 
2251
14: 14 
 
2252
15: 15 
 
2253
16: 16 
 
2254
17: 17 
 
2255
18: 18 
 
2256
19: 19 
 
2257
20: 20 
 
2258
21: 21 
 
2259
22: 22 
 
2260
23: 23 
 
2261
24: 24 
 
2262
25: 25 
 
2263
26: 26 
 
2264
27: 27 
 
2265
28: 28 
 
2266
29: 29 
 
2267
30: 30 
 
2268
31: 31 
 
2269
32: 32 
 
2270
33: 33 
 
2271
34: 34 
 
2272
35: 35 
 
2273
36: 36 
 
2274
37: 37 
 
2275
38: 38 
 
2276
39: 39 
 
2277
40: 40 
 
2278
41: 41 
 
2279
42: 42 
 
2280
43: 43 
 
2281
44: 44 
 
2282
45: 45 
 
2283
46: 46 
 
2284
47: 47 
 
2285
48: 48 
 
2286
49: 49 
 
2287
50: 50 
 
2288
51: 51 
 
2289
52: 52 
 
2290
53: 53 
 
2291
54: 54 
 
2292
55: 55 
 
2293
56: 56 
 
2294
57: 57 
 
2295
58: 58 
 
2296
59: 59 
 
2297
60: 60 
 
2298
61: 61 
 
2299
62: 62 
 
2300
63: 63 
 
2301
64: 64 
 
2302
65: 65 
 
2303
66: 66 
 
2304
67: 67 
 
2305
68: 68 
 
2306
69: 69 
 
2307
70: 70 
 
2308
71: 71 
 
2309
72: 72 
 
2310
73: 73 
 
2311
74: 74 
 
2312
75: 75 
 
2313
76: 76 
 
2314
77: 77 
 
2315
78: 78 
 
2316
79: 79 
 
2317
80: 80 
 
2318
81: 81 
 
2319
82: 82 
 
2320
83: 83 
 
2321
84: 84 
 
2322
85: 85 
 
2323
86: 86 
 
2324
87: 87 
 
2325
88: 88 
 
2326
89: 89 
 
2327
90: 90 
 
2328
91: 91 
 
2329
92: 92 
 
2330
93: 93 
 
2331
94: 94 
 
2332
95: 95 
 
2333
96: 96 
 
2334
97: 97 
 
2335
98: 98 
 
2336
99: 99 
 
2337
100: 100 
 
2338
101: 101 
 
2339
102: 102 
 
2340
103: 103 
 
2341
104: 104 
 
2342
105: 105 
 
2343
106: 106 
 
2344
107: 107 
 
2345
108: 108 
 
2346
109: 109 
 
2347
110: 110 
 
2348
111: 111 
 
2349
112: 112 
 
2350
113: 113 
 
2351
114: 114 
 
2352
115: 115 
 
2353
116: 116 
 
2354
117: 117 
 
2355
118: 118 
 
2356
119: 119 
 
2357
120: 120 
 
2358
121: 121 
 
2359
122: 122 
 
2360
123: 123 
 
2361
124: 124 
 
2362
125: 125 
 
2363
126: 126 
 
2364
127: 127 
 
2365
128: 128 
 
2366
129: 129 
 
2367
130: 130 
 
2368
131: 131 
 
2369
132: 132 
 
2370
133: 133 
 
2371
134: 134 
 
2372
135: 135 
 
2373
136: 136 
 
2374
137: 137 
 
2375
138: 138 
 
2376
139: 139 
 
2377
140: 140 
 
2378
141: 141 
 
2379
142: 142 
 
2380
143: 143 
 
2381
144: 144 
 
2382
145: 145 
 
2383
146: 146 
 
2384
147: 147 
 
2385
148: 148 
 
2386
149: 149 
 
2387
150: 150 
 
2388
151: 151 
 
2389
152: 152 
 
2390
153: 153 
 
2391
154: 154 
 
2392
155: 155 
 
2393
156: 156 
 
2394
157: 157 
 
2395
158: 158 
 
2396
159: 159 
 
2397
160: 160 
 
2398
161: 161 
 
2399
162: 162 
 
2400
163: 163 
 
2401
164: 164 
 
2402
165: 165 
 
2403
166: 166 
 
2404
167: 167 
 
2405
168: 168 
 
2406
169: 169 
 
2407
170: 170 
 
2408
171: 171 
 
2409
172: 172 
 
2410
173: 173 
 
2411
174: 174 
 
2412
175: 175 
 
2413
176: 176 
 
2414
177: 177 
 
2415
178: 178 
 
2416
179: 179 
 
2417
180: 180 
 
2418
181: 181 
 
2419
182: 182 
 
2420
183: 183 
 
2421
184: 184 
 
2422
185: 185 
 
2423
186: 186 
 
2424
187: 187 
 
2425
188: 188 
 
2426
189: 189 
 
2427
190: 190 
 
2428
191: 191 
 
2429
192: 192 
 
2430
193: 193 
 
2431
194: 194 
 
2432
195: 195 
 
2433
196: 196 
 
2434
197: 197 
 
2435
198: 198 
 
2436
199: 199 
 
2437
200: 200 
 
2438
201: 201 
 
2439
202: 202 
 
2440
203: 203 
 
2441
204: 204 
 
2442
205: 205 
 
2443
206: 206 
 
2444
207: 207 
 
2445
208: 208 
 
2446
209: 209 
 
2447
210: 210 
 
2448
211: 211 
 
2449
212: 212 
 
2450
213: 213 
 
2451
214: 214 
 
2452
215: 215 
 
2453
216: 216 
 
2454
217: 217 
 
2455
218: 218 
 
2456
219: 219 
 
2457
220: 220 
 
2458
221: 221 
 
2459
222: 222 
 
2460
223: 223 
 
2461
224: 224 
 
2462
225: 225 
 
2463
226: 226 
 
2464
227: 227 
 
2465
228: 228 
 
2466
229: 229 
 
2467
230: 230 
 
2468
231: 231 
 
2469
232: 232 
 
2470
233: 233 
 
2471
234: 234 
 
2472
235: 235 
 
2473
236: 236 
 
2474
237: 237 
 
2475
238: 238 
 
2476
239: 239 
 
2477
240: 240 
 
2478
241: 241 
 
2479
242: 242 
 
2480
243: 243 
 
2481
244: 244 
 
2482
245: 245 
 
2483
246: 246 
 
2484
247: 247 
 
2485
248: 248 
 
2486
249: 249 
 
2487
250: 250 
 
2488
251: 251 
 
2489
252: 252 
 
2490
253: 253 
 
2491
254: 254 
 
2492
255: 255 
 
2493
256: 256 
 
2494
257: 257 
 
2495
258: 258 
 
2496
259: 259 
 
2497
260: 260 
 
2498
261: 261 
 
2499
262: 262 
 
2500
263: 263 
 
2501
264: 264 
 
2502
265: 265 
 
2503
266: 266 
 
2504
267: 267 
 
2505
268: 268 
 
2506
269: 269 
 
2507
270: ABC
 
2508
271: ABC
 
2509
 
 
2510
/This one's here because Perl does this differently and PCRE can't at present/
 
2511
Capturing subpattern count = 0
 
2512
No options
 
2513
First char = 'T'
 
2514
Need char = 't'
 
2515
 
 
2516
/(main(O)?)+/
 
2517
Capturing subpattern count = 2
 
2518
No options
 
2519
First char = 'm'
 
2520
Need char = 'n'
 
2521
    mainmain
 
2522
 0: mainmain
 
2523
 1: main
 
2524
    mainOmain
 
2525
 0: mainOmain
 
2526
 1: main
 
2527
 2: O
 
2528
    
 
2529
/These are all cases where Perl does it differently (nested captures)/
 
2530
Capturing subpattern count = 1
 
2531
No options
 
2532
First char = 'T'
 
2533
Need char = 's'
 
2534
 
 
2535
/^(a(b)?)+$/
 
2536
Capturing subpattern count = 2
 
2537
Options: anchored
 
2538
No first char
 
2539
No need char
 
2540
    aba
 
2541
 0: aba
 
2542
 1: a
 
2543
 2: b
 
2544
   
 
2545
/^(aa(bb)?)+$/
 
2546
Capturing subpattern count = 2
 
2547
Options: anchored
 
2548
No first char
 
2549
No need char
 
2550
    aabbaa    
 
2551
 0: aabbaa
 
2552
 1: aa
 
2553
 2: bb
 
2554
    
 
2555
/^(aa|aa(bb))+$/
 
2556
Capturing subpattern count = 2
 
2557
Options: anchored
 
2558
No first char
 
2559
No need char
 
2560
    aabbaa 
 
2561
 0: aabbaa
 
2562
 1: aa
 
2563
 2: bb
 
2564
    
 
2565
/^(aa(bb)??)+$/
 
2566
Capturing subpattern count = 2
 
2567
Options: anchored
 
2568
No first char
 
2569
No need char
 
2570
    aabbaa    
 
2571
 0: aabbaa
 
2572
 1: aa
 
2573
 2: bb
 
2574
    
 
2575
/^(?:aa(bb)?)+$/
 
2576
Capturing subpattern count = 1
 
2577
Options: anchored
 
2578
No first char
 
2579
No need char
 
2580
    aabbaa    
 
2581
 0: aabbaa
 
2582
 1: bb
 
2583
    
 
2584
/^(aa(b(b))?)+$/
 
2585
Capturing subpattern count = 3
 
2586
Options: anchored
 
2587
No first char
 
2588
No need char
 
2589
    aabbaa    
 
2590
 0: aabbaa
 
2591
 1: aa
 
2592
 2: bb
 
2593
 3: b
 
2594
 
 
2595
/^(?:aa(b(b))?)+$/
 
2596
Capturing subpattern count = 2
 
2597
Options: anchored
 
2598
No first char
 
2599
No need char
 
2600
    aabbaa    
 
2601
 0: aabbaa
 
2602
 1: bb
 
2603
 2: b
 
2604
 
 
2605
/^(?:aa(b(?:b))?)+$/
 
2606
Capturing subpattern count = 1
 
2607
Options: anchored
 
2608
No first char
 
2609
No need char
 
2610
    aabbaa    
 
2611
 0: aabbaa
 
2612
 1: bb
 
2613
 
 
2614
/^(?:aa(bb(?:b))?)+$/
 
2615
Capturing subpattern count = 1
 
2616
Options: anchored
 
2617
No first char
 
2618
No need char
 
2619
    aabbbaa    
 
2620
 0: aabbbaa
 
2621
 1: bbb
 
2622
    
 
2623
/^(?:aa(b(?:bb))?)+$/
 
2624
Capturing subpattern count = 1
 
2625
Options: anchored
 
2626
No first char
 
2627
No need char
 
2628
    aabbbaa    
 
2629
 0: aabbbaa
 
2630
 1: bbb
 
2631
 
 
2632
/^(?:aa(?:b(b))?)+$/
 
2633
Capturing subpattern count = 1
 
2634
Options: anchored
 
2635
No first char
 
2636
No need char
 
2637
    aabbaa    
 
2638
 0: aabbaa
 
2639
 1: b
 
2640
 
 
2641
/^(?:aa(?:b(bb))?)+$/
 
2642
Capturing subpattern count = 1
 
2643
Options: anchored
 
2644
No first char
 
2645
No need char
 
2646
    aabbbaa    
 
2647
 0: aabbbaa
 
2648
 1: bb
 
2649
 
 
2650
/^(aa(b(bb))?)+$/
 
2651
Capturing subpattern count = 3
 
2652
Options: anchored
 
2653
No first char
 
2654
No need char
 
2655
    aabbbaa    
 
2656
 0: aabbbaa
 
2657
 1: aa
 
2658
 2: bbb
 
2659
 3: bb
 
2660
 
 
2661
/^(aa(bb(bb))?)+$/
 
2662
Capturing subpattern count = 3
 
2663
Options: anchored
 
2664
No first char
 
2665
No need char
 
2666
    aabbbbaa    
 
2667
 0: aabbbbaa
 
2668
 1: aa
 
2669
 2: bbbb
 
2670
 3: bb
 
2671
 
 
2672
/--------------------------------------------------------------------/ 
 
2673
Capturing subpattern count = 0
 
2674
No options
 
2675
First char = '-'
 
2676
Need char = '-'
 
2677
    
 
2678
/#/xMD
 
2679
Memory allocation (code space): 7
 
2680
------------------------------------------------------------------
 
2681
  0   3 Bra 0
 
2682
  3   3 Ket
 
2683
  6     End
 
2684
------------------------------------------------------------------
 
2685
Capturing subpattern count = 0
 
2686
Options: extended
 
2687
No first char
 
2688
No need char
 
2689
 
 
2690
/a#/xMD
 
2691
Memory allocation (code space): 9
 
2692
------------------------------------------------------------------
 
2693
  0   5 Bra 0
 
2694
  3     a
 
2695
  5   5 Ket
 
2696
  8     End
 
2697
------------------------------------------------------------------
 
2698
Capturing subpattern count = 0
 
2699
Options: extended
 
2700
First char = 'a'
 
2701
No need char
 
2702
 
 
2703
/[\s]/D
 
2704
------------------------------------------------------------------
 
2705
  0  36 Bra 0
 
2706
  3     [\x09\x0a\x0c\x0d ]
 
2707
 36  36 Ket
 
2708
 39     End
 
2709
------------------------------------------------------------------
 
2710
Capturing subpattern count = 0
 
2711
No options
 
2712
No first char
 
2713
No need char
 
2714
 
 
2715
/[\S]/D
 
2716
------------------------------------------------------------------
 
2717
  0  36 Bra 0
 
2718
  3     [\x00-\x08\x0b\x0e-\x1f!-\xff]
 
2719
 36  36 Ket
 
2720
 39     End
 
2721
------------------------------------------------------------------
 
2722
Capturing subpattern count = 0
 
2723
No options
 
2724
No first char
 
2725
No need char
 
2726
 
 
2727
/a(?i)b/D
 
2728
------------------------------------------------------------------
 
2729
  0   9 Bra 0
 
2730
  3     a
 
2731
  5  01 Opt
 
2732
  7  NC b
 
2733
  9   9 Ket
 
2734
 12     End
 
2735
------------------------------------------------------------------
 
2736
Capturing subpattern count = 0
 
2737
No options
 
2738
Case state changes
 
2739
First char = 'a'
 
2740
Need char = 'b' (caseless)
 
2741
    ab
 
2742
 0: ab
 
2743
    aB
 
2744
 0: aB
 
2745
    *** Failers 
 
2746
No match
 
2747
    AB  
 
2748
No match
 
2749
 
 
2750
/(a(?i)b)/D
 
2751
------------------------------------------------------------------
 
2752
  0  17 Bra 0
 
2753
  3   9 Bra 1
 
2754
  6     a
 
2755
  8  01 Opt
 
2756
 10  NC b
 
2757
 12   9 Ket
 
2758
 15  00 Opt
 
2759
 17  17 Ket
 
2760
 20     End
 
2761
------------------------------------------------------------------
 
2762
Capturing subpattern count = 1
 
2763
No options
 
2764
Case state changes
 
2765
First char = 'a'
 
2766
Need char = 'b' (caseless)
 
2767
    ab
 
2768
 0: ab
 
2769
 1: ab
 
2770
    aB
 
2771
 0: aB
 
2772
 1: aB
 
2773
    *** Failers 
 
2774
No match
 
2775
    AB  
 
2776
No match
 
2777
    
 
2778
/   (?i)abc/xD
 
2779
------------------------------------------------------------------
 
2780
  0   9 Bra 0
 
2781
  3  NC abc
 
2782
  9   9 Ket
 
2783
 12     End
 
2784
------------------------------------------------------------------
 
2785
Capturing subpattern count = 0
 
2786
Options: caseless extended
 
2787
First char = 'a' (caseless)
 
2788
Need char = 'c' (caseless)
 
2789
 
 
2790
/#this is a comment
 
2791
  (?i)abc/xD
 
2792
------------------------------------------------------------------
 
2793
  0   9 Bra 0
 
2794
  3  NC abc
 
2795
  9   9 Ket
 
2796
 12     End
 
2797
------------------------------------------------------------------
 
2798
Capturing subpattern count = 0
 
2799
Options: caseless extended
 
2800
First char = 'a' (caseless)
 
2801
Need char = 'c' (caseless)
 
2802
 
 
2803
/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D
 
2804
------------------------------------------------------------------
 
2805
  0 603 Bra 0
 
2806
  3     123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
 
2807
603 603 Ket
 
2808
606     End
 
2809
------------------------------------------------------------------
 
2810
Capturing subpattern count = 0
 
2811
No options
 
2812
First char = '1'
 
2813
Need char = '0'
 
2814
 
 
2815
/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D
 
2816
------------------------------------------------------------------
 
2817
  0 603 Bra 0
 
2818
  3     123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
 
2819
603 603 Ket
 
2820
606     End
 
2821
------------------------------------------------------------------
 
2822
Capturing subpattern count = 0
 
2823
No options
 
2824
First char = '1'
 
2825
Need char = '0'
 
2826
 
 
2827
/\Q\E/D
 
2828
------------------------------------------------------------------
 
2829
  0   3 Bra 0
 
2830
  3   3 Ket
 
2831
  6     End
 
2832
------------------------------------------------------------------
 
2833
Capturing subpattern count = 0
 
2834
No options
 
2835
No first char
 
2836
No need char
 
2837
    \
 
2838
 0: 
 
2839
 
 
2840
/\Q\Ex/D
 
2841
------------------------------------------------------------------
 
2842
  0   5 Bra 0
 
2843
  3     x
 
2844
  5   5 Ket
 
2845
  8     End
 
2846
------------------------------------------------------------------
 
2847
Capturing subpattern count = 0
 
2848
No options
 
2849
First char = 'x'
 
2850
No need char
 
2851
 
 
2852
/ \Q\E/D
 
2853
------------------------------------------------------------------
 
2854
  0   5 Bra 0
 
2855
  3      
 
2856
  5   5 Ket
 
2857
  8     End
 
2858
------------------------------------------------------------------
 
2859
Capturing subpattern count = 0
 
2860
No options
 
2861
First char = ' '
 
2862
No need char
 
2863
 
 
2864
/a\Q\E/D
 
2865
------------------------------------------------------------------
 
2866
  0   5 Bra 0
 
2867
  3     a
 
2868
  5   5 Ket
 
2869
  8     End
 
2870
------------------------------------------------------------------
 
2871
Capturing subpattern count = 0
 
2872
No options
 
2873
First char = 'a'
 
2874
No need char
 
2875
  abc
 
2876
 0: a
 
2877
  bca
 
2878
 0: a
 
2879
  bac  
 
2880
 0: a
 
2881
 
 
2882
/a\Q\Eb/D
 
2883
------------------------------------------------------------------
 
2884
  0   7 Bra 0
 
2885
  3     ab
 
2886
  7   7 Ket
 
2887
 10     End
 
2888
------------------------------------------------------------------
 
2889
Capturing subpattern count = 0
 
2890
No options
 
2891
First char = 'a'
 
2892
Need char = 'b'
 
2893
  abc
 
2894
 0: ab
 
2895
 
 
2896
/\Q\Eabc/D
 
2897
------------------------------------------------------------------
 
2898
  0   9 Bra 0
 
2899
  3     abc
 
2900
  9   9 Ket
 
2901
 12     End
 
2902
------------------------------------------------------------------
 
2903
Capturing subpattern count = 0
 
2904
No options
 
2905
First char = 'a'
 
2906
Need char = 'c'
 
2907
 
 
2908
/x*+\w/D
 
2909
------------------------------------------------------------------
 
2910
  0  12 Bra 0
 
2911
  3   5 Once
 
2912
  6     x*
 
2913
  8   5 Ket
 
2914
 11     \w
 
2915
 12  12 Ket
 
2916
 15     End
 
2917
------------------------------------------------------------------
 
2918
Capturing subpattern count = 0
 
2919
Partial matching not supported
 
2920
No options
 
2921
No first char
 
2922
No need char
 
2923
    *** Failers
 
2924
 0: F
 
2925
    xxxxx
 
2926
No match
 
2927
    
 
2928
/x?+/D
 
2929
------------------------------------------------------------------
 
2930
  0  11 Bra 0
 
2931
  3   5 Once
 
2932
  6     x?
 
2933
  8   5 Ket
 
2934
 11  11 Ket
 
2935
 14     End
 
2936
------------------------------------------------------------------
 
2937
Capturing subpattern count = 0
 
2938
No options
 
2939
No first char
 
2940
No need char
 
2941
 
 
2942
/x++/D
 
2943
------------------------------------------------------------------
 
2944
  0  11 Bra 0
 
2945
  3   5 Once
 
2946
  6     x+
 
2947
  8   5 Ket
 
2948
 11  11 Ket
 
2949
 14     End
 
2950
------------------------------------------------------------------
 
2951
Capturing subpattern count = 0
 
2952
Partial matching not supported
 
2953
No options
 
2954
First char = 'x'
 
2955
No need char
 
2956
 
 
2957
/x{1,3}+/D 
 
2958
------------------------------------------------------------------
 
2959
  0  15 Bra 0
 
2960
  3   9 Once
 
2961
  6     x
 
2962
  8     x{,2}
 
2963
 12   9 Ket
 
2964
 15  15 Ket
 
2965
 18     End
 
2966
------------------------------------------------------------------
 
2967
Capturing subpattern count = 0
 
2968
Partial matching not supported
 
2969
No options
 
2970
First char = 'x'
 
2971
No need char
 
2972
 
 
2973
/(x)*+/D
 
2974
------------------------------------------------------------------
 
2975
  0  18 Bra 0
 
2976
  3  12 Once
 
2977
  6     Brazero
 
2978
  7   5 Bra 1
 
2979
 10     x
 
2980
 12   5 KetRmax
 
2981
 15  12 Ket
 
2982
 18  18 Ket
 
2983
 21     End
 
2984
------------------------------------------------------------------
 
2985
Capturing subpattern count = 1
 
2986
No options
 
2987
No first char
 
2988
No need char
 
2989
 
 
2990
/^(\w++|\s++)*$/
 
2991
Capturing subpattern count = 1
 
2992
Partial matching not supported
 
2993
Options: anchored
 
2994
No first char
 
2995
No need char
 
2996
    now is the time for all good men to come to the aid of the party
 
2997
 0: now is the time for all good men to come to the aid of the party
 
2998
 1: party
 
2999
    *** Failers
 
3000
No match
 
3001
    this is not a line with only words and spaces!
 
3002
No match
 
3003
    
 
3004
/(\d++)(\w)/
 
3005
Capturing subpattern count = 2
 
3006
Partial matching not supported
 
3007
No options
 
3008
No first char
 
3009
No need char
 
3010
    12345a
 
3011
 0: 12345a
 
3012
 1: 12345
 
3013
 2: a
 
3014
    *** Failers
 
3015
No match
 
3016
    12345+ 
 
3017
No match
 
3018
 
 
3019
/a++b/
 
3020
Capturing subpattern count = 0
 
3021
Partial matching not supported
 
3022
No options
 
3023
First char = 'a'
 
3024
Need char = 'b'
 
3025
    aaab
 
3026
 0: aaab
 
3027
 
 
3028
/(a++b)/
 
3029
Capturing subpattern count = 1
 
3030
Partial matching not supported
 
3031
No options
 
3032
First char = 'a'
 
3033
Need char = 'b'
 
3034
    aaab
 
3035
 0: aaab
 
3036
 1: aaab
 
3037
 
 
3038
/(a++)b/
 
3039
Capturing subpattern count = 1
 
3040
Partial matching not supported
 
3041
No options
 
3042
First char = 'a'
 
3043
Need char = 'b'
 
3044
    aaab
 
3045
 0: aaab
 
3046
 1: aaa
 
3047
 
 
3048
/([^()]++|\([^()]*\))+/
 
3049
Capturing subpattern count = 1
 
3050
Partial matching not supported
 
3051
No options
 
3052
No first char
 
3053
No need char
 
3054
    ((abc(ade)ufh()()x
 
3055
 0: abc(ade)ufh()()x
 
3056
 1: x
 
3057
    
 
3058
/\(([^()]++|\([^()]+\))+\)/ 
 
3059
Capturing subpattern count = 1
 
3060
Partial matching not supported
 
3061
No options
 
3062
First char = '('
 
3063
Need char = ')'
 
3064
    (abc)
 
3065
 0: (abc)
 
3066
 1: abc
 
3067
    (abc(def)xyz)
 
3068
 0: (abc(def)xyz)
 
3069
 1: xyz
 
3070
    *** Failers
 
3071
No match
 
3072
    ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa   
 
3073
No match
 
3074
 
 
3075
/(abc){1,3}+/D
 
3076
------------------------------------------------------------------
 
3077
  0  53 Bra 0
 
3078
  3  47 Once
 
3079
  6   9 Bra 1
 
3080
  9     abc
 
3081
 15   9 Ket
 
3082
 18     Brazero
 
3083
 19  28 Bra 0
 
3084
 22   9 Bra 1
 
3085
 25     abc
 
3086
 31   9 Ket
 
3087
 34     Brazero
 
3088
 35   9 Bra 1
 
3089
 38     abc
 
3090
 44   9 Ket
 
3091
 47  28 Ket
 
3092
 50  47 Ket
 
3093
 53  53 Ket
 
3094
 56     End
 
3095
------------------------------------------------------------------
 
3096
Capturing subpattern count = 1
 
3097
No options
 
3098
First char = 'a'
 
3099
Need char = 'c'
 
3100
 
 
3101
/a+?+/
 
3102
Failed: nothing to repeat at offset 3
 
3103
 
 
3104
/a{2,3}?+b/
 
3105
Failed: nothing to repeat at offset 7
 
3106
 
 
3107
/(?U)a+?+/
 
3108
Failed: nothing to repeat at offset 7
 
3109
 
 
3110
/a{2,3}?+b/U
 
3111
Failed: nothing to repeat at offset 7
 
3112
 
 
3113
/x(?U)a++b/D
 
3114
------------------------------------------------------------------
 
3115
  0  15 Bra 0
 
3116
  3     x
 
3117
  5   5 Once
 
3118
  8     a+
 
3119
 10   5 Ket
 
3120
 13     b
 
3121
 15  15 Ket
 
3122
 18     End
 
3123
------------------------------------------------------------------
 
3124
Capturing subpattern count = 0
 
3125
Partial matching not supported
 
3126
No options
 
3127
First char = 'x'
 
3128
Need char = 'b'
 
3129
    xaaaab
 
3130
 0: xaaaab
 
3131
 
 
3132
/(?U)xa++b/D
 
3133
------------------------------------------------------------------
 
3134
  0  15 Bra 0
 
3135
  3     x
 
3136
  5   5 Once
 
3137
  8     a+
 
3138
 10   5 Ket
 
3139
 13     b
 
3140
 15  15 Ket
 
3141
 18     End
 
3142
------------------------------------------------------------------
 
3143
Capturing subpattern count = 0
 
3144
Partial matching not supported
 
3145
Options: ungreedy
 
3146
First char = 'x'
 
3147
Need char = 'b'
 
3148
    xaaaab
 
3149
 0: xaaaab
 
3150
 
 
3151
/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/D
 
3152
------------------------------------------------------------------
 
3153
  0 106 Bra 0
 
3154
  3     ^
 
3155
  4  99 Bra 1
 
3156
  7   5 Bra 2
 
3157
 10     a+
 
3158
 12   5 Ket
 
3159
 15  37 Bra 3
 
3160
 18     [ab]+?
 
3161
 52  37 Ket
 
3162
 55  37 Bra 4
 
3163
 58     [bc]+
 
3164
 92  37 Ket
 
3165
 95   5 Bra 5
 
3166
 98     \w*
 
3167
100   5 Ket
 
3168
103  99 Ket
 
3169
106 106 Ket
 
3170
109     End
 
3171
------------------------------------------------------------------
 
3172
Capturing subpattern count = 5
 
3173
Partial matching not supported
 
3174
Options: anchored
 
3175
No first char
 
3176
No need char
 
3177
 
 
3178
/^x(?U)a+b/D
 
3179
------------------------------------------------------------------
 
3180
  0  10 Bra 0
 
3181
  3     ^
 
3182
  4     x
 
3183
  6     a+?
 
3184
  8     b
 
3185
 10  10 Ket
 
3186
 13     End
 
3187
------------------------------------------------------------------
 
3188
Capturing subpattern count = 0
 
3189
Partial matching not supported
 
3190
Options: anchored
 
3191
No first char
 
3192
Need char = 'b'
 
3193
 
 
3194
/^x(?U)(a+)b/D
 
3195
------------------------------------------------------------------
 
3196
  0  16 Bra 0
 
3197
  3     ^
 
3198
  4     x
 
3199
  6   5 Bra 1
 
3200
  9     a+?
 
3201
 11   5 Ket
 
3202
 14     b
 
3203
 16  16 Ket
 
3204
 19     End
 
3205
------------------------------------------------------------------
 
3206
Capturing subpattern count = 1
 
3207
Partial matching not supported
 
3208
Options: anchored
 
3209
No first char
 
3210
Need char = 'b'
 
3211
 
 
3212
/[.x.]/
 
3213
Failed: POSIX collating elements are not supported at offset 0
 
3214
 
 
3215
/[=x=]/
 
3216
Failed: POSIX collating elements are not supported at offset 0
 
3217
 
 
3218
/[:x:]/
 
3219
Failed: POSIX named classes are supported only within a class at offset 0
 
3220
 
 
3221
/\l/
 
3222
Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
 
3223
 
 
3224
/\L/
 
3225
Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
 
3226
 
 
3227
/\N{name}/
 
3228
Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
 
3229
 
 
3230
/\u/
 
3231
Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
 
3232
 
 
3233
/\U/
 
3234
Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
 
3235
 
 
3236
/[/
 
3237
Failed: missing terminating ] for character class at offset 1
 
3238
 
 
3239
/[a-/
 
3240
Failed: missing terminating ] for character class at offset 3
 
3241
 
 
3242
/[[:space:]/
 
3243
Failed: missing terminating ] for character class at offset 10
 
3244
 
 
3245
/[\s]/DM
 
3246
Memory allocation (code space): 40
 
3247
------------------------------------------------------------------
 
3248
  0  36 Bra 0
 
3249
  3     [\x09\x0a\x0c\x0d ]
 
3250
 36  36 Ket
 
3251
 39     End
 
3252
------------------------------------------------------------------
 
3253
Capturing subpattern count = 0
 
3254
No options
 
3255
No first char
 
3256
No need char
 
3257
 
 
3258
/[[:space:]]/DM
 
3259
Memory allocation (code space): 40
 
3260
------------------------------------------------------------------
 
3261
  0  36 Bra 0
 
3262
  3     [\x09-\x0d ]
 
3263
 36  36 Ket
 
3264
 39     End
 
3265
------------------------------------------------------------------
 
3266
Capturing subpattern count = 0
 
3267
No options
 
3268
No first char
 
3269
No need char
 
3270
 
 
3271
/[[:space:]abcde]/DM
 
3272
Memory allocation (code space): 40
 
3273
------------------------------------------------------------------
 
3274
  0  36 Bra 0
 
3275
  3     [\x09-\x0d a-e]
 
3276
 36  36 Ket
 
3277
 39     End
 
3278
------------------------------------------------------------------
 
3279
Capturing subpattern count = 0
 
3280
No options
 
3281
No first char
 
3282
No need char
 
3283
 
 
3284
/< (?: (?(R) \d++  | [^<>]*+) | (?R)) * >/x
 
3285
Capturing subpattern count = 0
 
3286
Partial matching not supported
 
3287
Options: extended
 
3288
First char = '<'
 
3289
Need char = '>'
 
3290
    <>
 
3291
 0: <>
 
3292
    <abcd>
 
3293
 0: <abcd>
 
3294
    <abc <123> hij>
 
3295
 0: <abc <123> hij>
 
3296
    <abc <def> hij>
 
3297
 0: <def>
 
3298
    <abc<>def> 
 
3299
 0: <abc<>def>
 
3300
    <abc<>      
 
3301
 0: <>
 
3302
    *** Failers
 
3303
No match
 
3304
    <abc
 
3305
No match
 
3306
 
 
3307
|8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|DM
 
3308
Memory allocation (code space): 826
 
3309
------------------------------------------------------------------
 
3310
  0 822 Bra 0
 
3311
  3     8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
 
3312
821     \b
 
3313
822 822 Ket
 
3314
825     End
 
3315
------------------------------------------------------------------
 
3316
Capturing subpattern count = 0
 
3317
No options
 
3318
First char = '8'
 
3319
Need char = 'X'
 
3320
 
 
3321
|\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|DM
 
3322
Memory allocation (code space): 816
 
3323
------------------------------------------------------------------
 
3324
  0 812 Bra 0
 
3325
  3     $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X
 
3326
811     \b
 
3327
812 812 Ket
 
3328
815     End
 
3329
------------------------------------------------------------------
 
3330
Capturing subpattern count = 0
 
3331
No options
 
3332
First char = '$'
 
3333
Need char = 'X'
 
3334
 
 
3335
/(.*)\d+\1/I
 
3336
Capturing subpattern count = 1
 
3337
Max back reference = 1
 
3338
Partial matching not supported
 
3339
No options
 
3340
No first char
 
3341
No need char
 
3342
 
 
3343
/(.*)\d+/I
 
3344
Capturing subpattern count = 1
 
3345
Partial matching not supported
 
3346
No options
 
3347
First char at start or follows \n
 
3348
No need char
 
3349
    
 
3350
/(.*)\d+\1/Is
 
3351
Capturing subpattern count = 1
 
3352
Max back reference = 1
 
3353
Partial matching not supported
 
3354
Options: dotall
 
3355
No first char
 
3356
No need char
 
3357
 
 
3358
/(.*)\d+/Is
 
3359
Capturing subpattern count = 1
 
3360
Partial matching not supported
 
3361
Options: anchored dotall
 
3362
No first char
 
3363
No need char
 
3364
 
 
3365
/(.*(xyz))\d+\2/I
 
3366
Capturing subpattern count = 2
 
3367
Max back reference = 2
 
3368
Partial matching not supported
 
3369
No options
 
3370
First char at start or follows \n
 
3371
Need char = 'z'
 
3372
 
 
3373
/((.*))\d+\1/I
 
3374
Capturing subpattern count = 2
 
3375
Max back reference = 1
 
3376
Partial matching not supported
 
3377
No options
 
3378
No first char
 
3379
No need char
 
3380
    abc123bc
 
3381
 0: bc123bc
 
3382
 1: bc
 
3383
 2: bc
 
3384
    
 
3385
/a[b]/I
 
3386
Capturing subpattern count = 0
 
3387
No options
 
3388
First char = 'a'
 
3389
Need char = 'b'
 
3390
 
 
3391
/(?=a).*/I
 
3392
Capturing subpattern count = 0
 
3393
Partial matching not supported
 
3394
No options
 
3395
First char = 'a'
 
3396
No need char
 
3397
 
 
3398
/(?=abc).xyz/iI
 
3399
Capturing subpattern count = 0
 
3400
Options: caseless
 
3401
First char = 'a' (caseless)
 
3402
Need char = 'z' (caseless)
 
3403
 
 
3404
/(?=abc)(?i).xyz/I
 
3405
Capturing subpattern count = 0
 
3406
No options
 
3407
Case state changes
 
3408
First char = 'a'
 
3409
Need char = 'z' (caseless)
 
3410
 
 
3411
/(?=a)(?=b)/I
 
3412
Capturing subpattern count = 0
 
3413
No options
 
3414
First char = 'a'
 
3415
No need char
 
3416
 
 
3417
/(?=.)a/I
 
3418
Capturing subpattern count = 0
 
3419
No options
 
3420
First char = 'a'
 
3421
No need char
 
3422
 
 
3423
/((?=abcda)a)/I
 
3424
Capturing subpattern count = 1
 
3425
No options
 
3426
First char = 'a'
 
3427
Need char = 'a'
 
3428
 
 
3429
/((?=abcda)ab)/I
 
3430
Capturing subpattern count = 1
 
3431
No options
 
3432
First char = 'a'
 
3433
Need char = 'b'
 
3434
 
 
3435
/()a/I
 
3436
Capturing subpattern count = 1
 
3437
No options
 
3438
No first char
 
3439
Need char = 'a'
 
3440
 
 
3441
/(?(1)ab|ac)/I
 
3442
Capturing subpattern count = 0
 
3443
No options
 
3444
First char = 'a'
 
3445
No need char
 
3446
 
 
3447
/(?(1)abz|acz)/I
 
3448
Capturing subpattern count = 0
 
3449
No options
 
3450
First char = 'a'
 
3451
Need char = 'z'
 
3452
 
 
3453
/(?(1)abz)/I
 
3454
Capturing subpattern count = 0
 
3455
No options
 
3456
No first char
 
3457
No need char
 
3458
 
 
3459
/(?(1)abz)123/I
 
3460
Capturing subpattern count = 0
 
3461
No options
 
3462
No first char
 
3463
Need char = '3'
 
3464
 
 
3465
/(a)+/I
 
3466
Capturing subpattern count = 1
 
3467
No options
 
3468
First char = 'a'
 
3469
No need char
 
3470
 
 
3471
/(a){2,3}/I
 
3472
Capturing subpattern count = 1
 
3473
No options
 
3474
First char = 'a'
 
3475
Need char = 'a'
 
3476
 
 
3477
/(a)*/I
 
3478
Capturing subpattern count = 1
 
3479
No options
 
3480
No first char
 
3481
No need char
 
3482
 
 
3483
/[a]/I
 
3484
Capturing subpattern count = 0
 
3485
No options
 
3486
First char = 'a'
 
3487
No need char
 
3488
 
 
3489
/[ab]/I
 
3490
Capturing subpattern count = 0
 
3491
No options
 
3492
No first char
 
3493
No need char
 
3494
 
 
3495
/[ab]/IS
 
3496
Capturing subpattern count = 0
 
3497
No options
 
3498
No first char
 
3499
No need char
 
3500
Starting byte set: a b 
 
3501
 
 
3502
/[^a]/I
 
3503
Capturing subpattern count = 0
 
3504
No options
 
3505
No first char
 
3506
No need char
 
3507
 
 
3508
/\d456/I
 
3509
Capturing subpattern count = 0
 
3510
No options
 
3511
No first char
 
3512
Need char = '6'
 
3513
 
 
3514
/\d456/IS
 
3515
Capturing subpattern count = 0
 
3516
No options
 
3517
No first char
 
3518
Need char = '6'
 
3519
Starting byte set: 0 1 2 3 4 5 6 7 8 9 
 
3520
 
 
3521
/a^b/I
 
3522
Capturing subpattern count = 0
 
3523
No options
 
3524
First char = 'a'
 
3525
Need char = 'b'
 
3526
 
 
3527
/^a/mI
 
3528
Capturing subpattern count = 0
 
3529
Options: multiline
 
3530
First char at start or follows \n
 
3531
Need char = 'a'
 
3532
  abcde
 
3533
 0: a
 
3534
  xy\nabc 
 
3535
 0: a
 
3536
  *** Failers 
 
3537
No match
 
3538
  xyabc 
 
3539
No match
 
3540
 
 
3541
/c|abc/I
 
3542
Capturing subpattern count = 0
 
3543
No options
 
3544
No first char
 
3545
Need char = 'c'
 
3546
 
 
3547
/(?i)[ab]/IS
 
3548
Capturing subpattern count = 0
 
3549
Options: caseless
 
3550
No first char
 
3551
No need char
 
3552
Starting byte set: A B a b 
 
3553
 
 
3554
/[ab](?i)cd/IS
 
3555
Capturing subpattern count = 0
 
3556
No options
 
3557
Case state changes
 
3558
No first char
 
3559
Need char = 'd' (caseless)
 
3560
Starting byte set: a b 
 
3561
 
 
3562
/abc(?C)def/
 
3563
Capturing subpattern count = 0
 
3564
No options
 
3565
First char = 'a'
 
3566
Need char = 'f'
 
3567
    abcdef
 
3568
--->abcdef
 
3569
  0 ^  ^       d
 
3570
 0: abcdef
 
3571
    1234abcdef 
 
3572
--->1234abcdef
 
3573
  0     ^  ^       d
 
3574
 0: abcdef
 
3575
    *** Failers
 
3576
No match
 
3577
    abcxyz
 
3578
No match
 
3579
    abcxyzf   
 
3580
--->abcxyzf
 
3581
  0 ^  ^        d
 
3582
No match
 
3583
 
 
3584
/abc(?C)de(?C1)f/
 
3585
Capturing subpattern count = 0
 
3586
No options
 
3587
First char = 'a'
 
3588
Need char = 'f'
 
3589
    123abcdef
 
3590
--->123abcdef
 
3591
  0    ^  ^       d
 
3592
  1    ^    ^     f
 
3593
 0: abcdef
 
3594
    
 
3595
/(?C1)\dabc(?C2)def/ 
 
3596
Capturing subpattern count = 0
 
3597
No options
 
3598
No first char
 
3599
Need char = 'f'
 
3600
    1234abcdef
 
3601
--->1234abcdef
 
3602
  1 ^              \d
 
3603
  1  ^             \d
 
3604
  1   ^            \d
 
3605
  1    ^           \d
 
3606
  2    ^   ^       d
 
3607
 0: 4abcdef
 
3608
    *** Failers
 
3609
No match
 
3610
    abcdef 
 
3611
--->abcdef
 
3612
  1 ^          \d
 
3613
  1  ^         \d
 
3614
  1   ^        \d
 
3615
  1    ^       \d
 
3616
  1     ^      \d
 
3617
  1      ^     \d
 
3618
No match
 
3619
    
 
3620
/(?C255)ab/
 
3621
Capturing subpattern count = 0
 
3622
No options
 
3623
First char = 'a'
 
3624
Need char = 'b'
 
3625
 
 
3626
/(?C256)ab/
 
3627
Failed: number after (?C is > 255 at offset 6
 
3628
 
 
3629
/(?Cab)xx/ 
 
3630
Failed: closing ) for (?C expected at offset 3
 
3631
 
 
3632
/(?C12vr)x/
 
3633
Failed: closing ) for (?C expected at offset 5
 
3634
 
 
3635
/abc(?C)def/
 
3636
Capturing subpattern count = 0
 
3637
No options
 
3638
First char = 'a'
 
3639
Need char = 'f'
 
3640
    *** Failers
 
3641
No match
 
3642
    \x83\x0\x61bcdef
 
3643
--->\x83\x00abcdef
 
3644
  0         ^  ^       d
 
3645
 0: abcdef
 
3646
 
 
3647
/(abc)(?C)de(?C1)f/
 
3648
Capturing subpattern count = 1
 
3649
No options
 
3650
First char = 'a'
 
3651
Need char = 'f'
 
3652
    123abcdef
 
3653
--->123abcdef
 
3654
  0    ^  ^       d
 
3655
  1    ^    ^     f
 
3656
 0: abcdef
 
3657
 1: abc
 
3658
    123abcdef\C+ 
 
3659
Callout 0: last capture = 1
 
3660
 0: <unset>
 
3661
 1: abc
 
3662
--->123abcdef
 
3663
       ^  ^       d
 
3664
Callout 1: last capture = 1
 
3665
 0: <unset>
 
3666
 1: abc
 
3667
--->123abcdef
 
3668
       ^    ^     f
 
3669
 0: abcdef
 
3670
 1: abc
 
3671
    123abcdef\C- 
 
3672
 0: abcdef
 
3673
 1: abc
 
3674
    *** Failers
 
3675
No match
 
3676
    123abcdef\C!1 
 
3677
--->123abcdef
 
3678
  0    ^  ^       d
 
3679
  1    ^    ^     f
 
3680
No match
 
3681
    
 
3682
/(?C0)(abc(?C1))*/
 
3683
Capturing subpattern count = 1
 
3684
No options
 
3685
No first char
 
3686
No need char
 
3687
    abcabcabc
 
3688
--->abcabcabc
 
3689
  0 ^             (abc(?C1))*
 
3690
  1 ^  ^          )
 
3691
  1 ^     ^       )
 
3692
  1 ^        ^    )
 
3693
 0: abcabcabc
 
3694
 1: abc
 
3695
    abcabc\C!1!3   
 
3696
--->abcabc
 
3697
  0 ^          (abc(?C1))*
 
3698
  1 ^  ^       )
 
3699
  1 ^     ^    )
 
3700
 0: abcabc
 
3701
 1: abc
 
3702
    *** Failers
 
3703
--->*** Failers
 
3704
  0 ^               (abc(?C1))*
 
3705
 0: 
 
3706
    abcabcabc\C!1!3   
 
3707
--->abcabcabc
 
3708
  0 ^             (abc(?C1))*
 
3709
  1 ^  ^          )
 
3710
  1 ^     ^       )
 
3711
  1 ^        ^    )
 
3712
 0: abcabc
 
3713
 1: abc
 
3714
 
 
3715
/(\d{3}(?C))*/
 
3716
Capturing subpattern count = 1
 
3717
Partial matching not supported
 
3718
No options
 
3719
No first char
 
3720
No need char
 
3721
    123\C+
 
3722
Callout 0: last capture = -1
 
3723
 0: <unset>
 
3724
--->123
 
3725
    ^  ^    )
 
3726
 0: 123
 
3727
 1: 123
 
3728
    123456\C+
 
3729
Callout 0: last capture = -1
 
3730
 0: <unset>
 
3731
--->123456
 
3732
    ^  ^       )
 
3733
Callout 0: last capture = 1
 
3734
 0: <unset>
 
3735
 1: 123
 
3736
--->123456
 
3737
    ^     ^    )
 
3738
 0: 123456
 
3739
 1: 456
 
3740
    123456789\C+  
 
3741
Callout 0: last capture = -1
 
3742
 0: <unset>
 
3743
--->123456789
 
3744
    ^  ^          )
 
3745
Callout 0: last capture = 1
 
3746
 0: <unset>
 
3747
 1: 123
 
3748
--->123456789
 
3749
    ^     ^       )
 
3750
Callout 0: last capture = 1
 
3751
 0: <unset>
 
3752
 1: 456
 
3753
--->123456789
 
3754
    ^        ^    )
 
3755
 0: 123456789
 
3756
 1: 789
 
3757
 
 
3758
/((xyz)(?C)p|(?C1)xyzabc)/
 
3759
Capturing subpattern count = 2
 
3760
No options
 
3761
First char = 'x'
 
3762
No need char
 
3763
    xyzabc\C+
 
3764
Callout 0: last capture = 2
 
3765
 0: <unset>
 
3766
 1: <unset>
 
3767
 2: xyz
 
3768
--->xyzabc
 
3769
    ^  ^       p
 
3770
Callout 1: last capture = -1
 
3771
 0: <unset>
 
3772
--->xyzabc
 
3773
    ^          x
 
3774
 0: xyzabc
 
3775
 1: xyzabc
 
3776
 
 
3777
/(X)((xyz)(?C)p|(?C1)xyzabc)/
 
3778
Capturing subpattern count = 3
 
3779
No options
 
3780
First char = 'X'
 
3781
Need char = 'x'
 
3782
    Xxyzabc\C+
 
3783
Callout 0: last capture = 3
 
3784
 0: <unset>
 
3785
 1: X
 
3786
 2: <unset>
 
3787
 3: xyz
 
3788
--->Xxyzabc
 
3789
    ^   ^       p
 
3790
Callout 1: last capture = 1
 
3791
 0: <unset>
 
3792
 1: X
 
3793
--->Xxyzabc
 
3794
    ^^          x
 
3795
 0: Xxyzabc
 
3796
 1: X
 
3797
 2: xyzabc
 
3798
 
 
3799
/(?=(abc))(?C)abcdef/
 
3800
Capturing subpattern count = 1
 
3801
No options
 
3802
First char = 'a'
 
3803
Need char = 'f'
 
3804
    abcdef\C+
 
3805
Callout 0: last capture = 1
 
3806
 0: <unset>
 
3807
 1: abc
 
3808
--->abcdef
 
3809
    ^          a
 
3810
 0: abcdef
 
3811
 1: abc
 
3812
    
 
3813
/(?!(abc)(?C1)d)(?C2)abcxyz/
 
3814
Capturing subpattern count = 1
 
3815
No options
 
3816
First char = 'a'
 
3817
Need char = 'z'
 
3818
    abcxyz\C+ 
 
3819
Callout 1: last capture = 1
 
3820
 0: <unset>
 
3821
 1: abc
 
3822
--->abcxyz
 
3823
    ^  ^       d
 
3824
Callout 2: last capture = -1
 
3825
 0: <unset>
 
3826
--->abcxyz
 
3827
    ^          a
 
3828
 0: abcxyz
 
3829
 
 
3830
/(?<=(abc)(?C))xyz/
 
3831
Capturing subpattern count = 1
 
3832
No options
 
3833
First char = 'x'
 
3834
Need char = 'z'
 
3835
   abcxyz\C+
 
3836
Callout 0: last capture = 1
 
3837
 0: <unset>
 
3838
 1: abc
 
3839
--->abcxyz
 
3840
       ^       )
 
3841
 0: xyz
 
3842
 1: abc
 
3843
   
 
3844
/(?C)abc/ 
 
3845
Capturing subpattern count = 0
 
3846
No options
 
3847
First char = 'a'
 
3848
Need char = 'c'
 
3849
 
 
3850
/(?C)^abc/
 
3851
Capturing subpattern count = 0
 
3852
Options: anchored
 
3853
No first char
 
3854
No need char
 
3855
 
 
3856
/(?C)a|b/S
 
3857
Capturing subpattern count = 0
 
3858
No options
 
3859
No first char
 
3860
No need char
 
3861
Starting byte set: a b 
 
3862
 
 
3863
/(?R)/
 
3864
Failed: recursive call could loop indefinitely at offset 3
 
3865
 
 
3866
/(a|(?R))/
 
3867
Failed: recursive call could loop indefinitely at offset 6
 
3868
 
 
3869
/(ab|(bc|(de|(?R))))/
 
3870
Failed: recursive call could loop indefinitely at offset 15
 
3871
 
 
3872
/x(ab|(bc|(de|(?R))))/
 
3873
Capturing subpattern count = 3
 
3874
No options
 
3875
First char = 'x'
 
3876
No need char
 
3877
    xab
 
3878
 0: xab
 
3879
 1: ab
 
3880
    xbc
 
3881
 0: xbc
 
3882
 1: bc
 
3883
 2: bc
 
3884
    xde
 
3885
 0: xde
 
3886
 1: de
 
3887
 2: de
 
3888
 3: de
 
3889
    xxab
 
3890
 0: xxab
 
3891
 1: xab
 
3892
 2: xab
 
3893
 3: xab
 
3894
    xxxab
 
3895
 0: xxxab
 
3896
 1: xxab
 
3897
 2: xxab
 
3898
 3: xxab
 
3899
    *** Failers
 
3900
No match
 
3901
    xyab   
 
3902
No match
 
3903
 
 
3904
/(ab|(bc|(de|(?1))))/
 
3905
Failed: recursive call could loop indefinitely at offset 15
 
3906
 
 
3907
/x(ab|(bc|(de|(?1)x)x)x)/
 
3908
Failed: recursive call could loop indefinitely at offset 16
 
3909
 
 
3910
/^([^()]|\((?1)*\))*$/
 
3911
Capturing subpattern count = 1
 
3912
Options: anchored
 
3913
No first char
 
3914
No need char
 
3915
    abc
 
3916
 0: abc
 
3917
 1: c
 
3918
    a(b)c
 
3919
 0: a(b)c
 
3920
 1: c
 
3921
    a(b(c))d  
 
3922
 0: a(b(c))d
 
3923
 1: d
 
3924
    *** Failers)
 
3925
No match
 
3926
    a(b(c)d  
 
3927
No match
 
3928
 
 
3929
/^>abc>([^()]|\((?1)*\))*<xyz<$/
 
3930
Capturing subpattern count = 1
 
3931
Options: anchored
 
3932
No first char
 
3933
Need char = '<'
 
3934
   >abc>123<xyz<
 
3935
 0: >abc>123<xyz<
 
3936
 1: 3
 
3937
   >abc>1(2)3<xyz<
 
3938
 0: >abc>1(2)3<xyz<
 
3939
 1: 3
 
3940
   >abc>(1(2)3)<xyz<
 
3941
 0: >abc>(1(2)3)<xyz<
 
3942
 1: (1(2)3)
 
3943
 
 
3944
/(a(?1)b)/D
 
3945
------------------------------------------------------------------
 
3946
  0  16 Bra 0
 
3947
  3  10 Bra 1
 
3948
  6     a
 
3949
  8   3 Recurse
 
3950
 11     b
 
3951
 13  10 Ket
 
3952
 16  16 Ket
 
3953
 19     End
 
3954
------------------------------------------------------------------
 
3955
Capturing subpattern count = 1
 
3956
No options
 
3957
First char = 'a'
 
3958
Need char = 'b'
 
3959
 
 
3960
/(a(?1)+b)/D
 
3961
------------------------------------------------------------------
 
3962
  0  22 Bra 0
 
3963
  3  16 Bra 1
 
3964
  6     a
 
3965
  8   6 Bra 0
 
3966
 11   3 Recurse
 
3967
 14   6 KetRmax
 
3968
 17     b
 
3969
 19  16 Ket
 
3970
 22  22 Ket
 
3971
 25     End
 
3972
------------------------------------------------------------------
 
3973
Capturing subpattern count = 1
 
3974
No options
 
3975
First char = 'a'
 
3976
Need char = 'b'
 
3977
 
 
3978
/^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/i
 
3979
Capturing subpattern count = 4
 
3980
Max back reference = 4
 
3981
Partial matching not supported
 
3982
Options: anchored caseless
 
3983
No first char
 
3984
No need char
 
3985
    1221
 
3986
 0: 1221
 
3987
 1: 1221
 
3988
 2: 1
 
3989
    Satan, oscillate my metallic sonatas!
 
3990
 0: Satan, oscillate my metallic sonatas!
 
3991
 1: <unset>
 
3992
 2: <unset>
 
3993
 3: Satan, oscillate my metallic sonatas
 
3994
 4: S
 
3995
    A man, a plan, a canal: Panama!
 
3996
 0: A man, a plan, a canal: Panama!
 
3997
 1: <unset>
 
3998
 2: <unset>
 
3999
 3: A man, a plan, a canal: Panama
 
4000
 4: A
 
4001
    Able was I ere I saw Elba. 
 
4002
 0: Able was I ere I saw Elba.
 
4003
 1: <unset>
 
4004
 2: <unset>
 
4005
 3: Able was I ere I saw Elba
 
4006
 4: A
 
4007
    *** Failers
 
4008
No match
 
4009
    The quick brown fox  
 
4010
No match
 
4011
    
 
4012
/^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/
 
4013
Capturing subpattern count = 2
 
4014
Partial matching not supported
 
4015
Options: anchored
 
4016
No first char
 
4017
No need char
 
4018
    12
 
4019
 0: 12
 
4020
 1: 12
 
4021
    (((2+2)*-3)-7)
 
4022
 0: (((2+2)*-3)-7)
 
4023
 1: (((2+2)*-3)-7)
 
4024
 2: -
 
4025
    -12
 
4026
 0: -12
 
4027
 1: -12
 
4028
    *** Failers
 
4029
No match
 
4030
    ((2+2)*-3)-7)
 
4031
No match
 
4032
         
 
4033
/^(x(y|(?1){2})z)/
 
4034
Capturing subpattern count = 2
 
4035
Options: anchored
 
4036
No first char
 
4037
No need char
 
4038
    xyz
 
4039
 0: xyz
 
4040
 1: xyz
 
4041
 2: y
 
4042
    xxyzxyzz 
 
4043
 0: xxyzxyzz
 
4044
 1: xxyzxyzz
 
4045
 2: xyzxyz
 
4046
    *** Failers
 
4047
No match
 
4048
    xxyzz
 
4049
No match
 
4050
    xxyzxyzxyzz   
 
4051
No match
 
4052
 
 
4053
/((< (?: (?(R) \d++  | [^<>]*+) | (?2)) * >))/x
 
4054
Capturing subpattern count = 2
 
4055
Partial matching not supported
 
4056
Options: extended
 
4057
First char = '<'
 
4058
Need char = '>'
 
4059
    <>
 
4060
 0: <>
 
4061
 1: <>
 
4062
 2: <>
 
4063
    <abcd>
 
4064
 0: <abcd>
 
4065
 1: <abcd>
 
4066
 2: <abcd>
 
4067
    <abc <123> hij>
 
4068
 0: <abc <123> hij>
 
4069
 1: <abc <123> hij>
 
4070
 2: <abc <123> hij>
 
4071
    <abc <def> hij>
 
4072
 0: <def>
 
4073
 1: <def>
 
4074
 2: <def>
 
4075
    <abc<>def> 
 
4076
 0: <abc<>def>
 
4077
 1: <abc<>def>
 
4078
 2: <abc<>def>
 
4079
    <abc<>      
 
4080
 0: <>
 
4081
 1: <>
 
4082
 2: <>
 
4083
    *** Failers
 
4084
No match
 
4085
    <abc
 
4086
No match
 
4087
 
 
4088
/(?1)/
 
4089
Failed: reference to non-existent subpattern at offset 3
 
4090
 
 
4091
/((?2)(abc)/
 
4092
Failed: reference to non-existent subpattern at offset 4
 
4093
 
 
4094
/^(abc)def(?1)/
 
4095
Capturing subpattern count = 1
 
4096
Options: anchored
 
4097
No first char
 
4098
No need char
 
4099
    abcdefabc
 
4100
 0: abcdefabc
 
4101
 1: abc
 
4102
 
 
4103
/^(a|b|c)=(?1)+/
 
4104
Capturing subpattern count = 1
 
4105
Options: anchored
 
4106
No first char
 
4107
No need char
 
4108
    a=a
 
4109
 0: a=a
 
4110
 1: a
 
4111
    a=b
 
4112
 0: a=b
 
4113
 1: a
 
4114
    a=bc  
 
4115
 0: a=bc
 
4116
 1: a
 
4117
 
 
4118
/^(a|b|c)=((?1))+/
 
4119
Capturing subpattern count = 2
 
4120
Options: anchored
 
4121
No first char
 
4122
No need char
 
4123
    a=a
 
4124
 0: a=a
 
4125
 1: a
 
4126
 2: a
 
4127
    a=b
 
4128
 0: a=b
 
4129
 1: a
 
4130
 2: b
 
4131
    a=bc  
 
4132
 0: a=bc
 
4133
 1: a
 
4134
 2: c
 
4135
 
 
4136
/a(?P<name1>b|c)d(?P<longername2>e)/D
 
4137
------------------------------------------------------------------
 
4138
  0  28 Bra 0
 
4139
  3     a
 
4140
  5   5 Bra 1
 
4141
  8     b
 
4142
 10   5 Alt
 
4143
 13     c
 
4144
 15  10 Ket
 
4145
 18     d
 
4146
 20   5 Bra 2
 
4147
 23     e
 
4148
 25   5 Ket
 
4149
 28  28 Ket
 
4150
 31     End
 
4151
------------------------------------------------------------------
 
4152
Capturing subpattern count = 2
 
4153
Named capturing subpatterns:
 
4154
  longername2   2
 
4155
  name1         1
 
4156
No options
 
4157
First char = 'a'
 
4158
Need char = 'e'
 
4159
    abde
 
4160
 0: abde
 
4161
 1: b
 
4162
 2: e
 
4163
    acde 
 
4164
 0: acde
 
4165
 1: c
 
4166
 2: e
 
4167
 
 
4168
/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/D
 
4169
------------------------------------------------------------------
 
4170
  0  35 Bra 0
 
4171
  3  21 Bra 0
 
4172
  6     a
 
4173
  8  13 Bra 1
 
4174
 11     c
 
4175
 13   5 Bra 2
 
4176
 16     d
 
4177
 18   5 Ket
 
4178
 21  13 Ket
 
4179
 24  21 Ket
 
4180
 27   5 Bra 3
 
4181
 30     a
 
4182
 32   5 Ket
 
4183
 35  35 Ket
 
4184
 38     End
 
4185
------------------------------------------------------------------
 
4186
Capturing subpattern count = 3
 
4187
Named capturing subpatterns:
 
4188
  a   3
 
4189
  c   1
 
4190
  d   2
 
4191
No options
 
4192
First char = 'a'
 
4193
Need char = 'a'
 
4194
 
 
4195
/(?P<a>a)...(?P=a)bbb(?P>a)d/D
 
4196
------------------------------------------------------------------
 
4197
  0  28 Bra 0
 
4198
  3   5 Bra 1
 
4199
  6     a
 
4200
  8   5 Ket
 
4201
 11     Any
 
4202
 12     Any
 
4203
 13     Any
 
4204
 14     \1
 
4205
 17     bbb
 
4206
 23   3 Recurse
 
4207
 26     d
 
4208
 28  28 Ket
 
4209
 31     End
 
4210
------------------------------------------------------------------
 
4211
Capturing subpattern count = 1
 
4212
Max back reference = 1
 
4213
Named capturing subpatterns:
 
4214
  a   1
 
4215
No options
 
4216
First char = 'a'
 
4217
Need char = 'd'
 
4218
 
 
4219
/^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/i
 
4220
Capturing subpattern count = 4
 
4221
Max back reference = 4
 
4222
Named capturing subpatterns:
 
4223
  four    4
 
4224
  one     1
 
4225
  three   3
 
4226
  two     2
 
4227
Partial matching not supported
 
4228
Options: anchored caseless
 
4229
No first char
 
4230
No need char
 
4231
    1221
 
4232
 0: 1221
 
4233
 1: 1221
 
4234
 2: 1
 
4235
    Satan, oscillate my metallic sonatas!
 
4236
 0: Satan, oscillate my metallic sonatas!
 
4237
 1: <unset>
 
4238
 2: <unset>
 
4239
 3: Satan, oscillate my metallic sonatas
 
4240
 4: S
 
4241
    A man, a plan, a canal: Panama!
 
4242
 0: A man, a plan, a canal: Panama!
 
4243
 1: <unset>
 
4244
 2: <unset>
 
4245
 3: A man, a plan, a canal: Panama
 
4246
 4: A
 
4247
    Able was I ere I saw Elba. 
 
4248
 0: Able was I ere I saw Elba.
 
4249
 1: <unset>
 
4250
 2: <unset>
 
4251
 3: Able was I ere I saw Elba
 
4252
 4: A
 
4253
    *** Failers
 
4254
No match
 
4255
    The quick brown fox  
 
4256
No match
 
4257
    
 
4258
/((?(R)a|b))\1(?1)?/
 
4259
Capturing subpattern count = 1
 
4260
Max back reference = 1
 
4261
No options
 
4262
No first char
 
4263
No need char
 
4264
  bb
 
4265
 0: bb
 
4266
 1: b
 
4267
  bbaa 
 
4268
 0: bba
 
4269
 1: b
 
4270
 
 
4271
/(.*)a/sI
 
4272
Capturing subpattern count = 1
 
4273
Partial matching not supported
 
4274
Options: anchored dotall
 
4275
No first char
 
4276
Need char = 'a'
 
4277
 
 
4278
/(.*)a\1/sI
 
4279
Capturing subpattern count = 1
 
4280
Max back reference = 1
 
4281
Partial matching not supported
 
4282
Options: dotall
 
4283
No first char
 
4284
Need char = 'a'
 
4285
 
 
4286
/(.*)a(b)\2/sI
 
4287
Capturing subpattern count = 2
 
4288
Max back reference = 2
 
4289
Partial matching not supported
 
4290
Options: anchored dotall
 
4291
No first char
 
4292
Need char = 'b'
 
4293
 
 
4294
/((.*)a|(.*)b)z/sI
 
4295
Capturing subpattern count = 3
 
4296
Partial matching not supported
 
4297
Options: anchored dotall
 
4298
No first char
 
4299
Need char = 'z'
 
4300
 
 
4301
/((.*)a|(.*)b)z\1/sI
 
4302
Capturing subpattern count = 3
 
4303
Max back reference = 1
 
4304
Partial matching not supported
 
4305
Options: dotall
 
4306
No first char
 
4307
Need char = 'z'
 
4308
 
 
4309
/((.*)a|(.*)b)z\2/sI
 
4310
Capturing subpattern count = 3
 
4311
Max back reference = 2
 
4312
Partial matching not supported
 
4313
Options: dotall
 
4314
No first char
 
4315
Need char = 'z'
 
4316
 
 
4317
/((.*)a|(.*)b)z\3/sI
 
4318
Capturing subpattern count = 3
 
4319
Max back reference = 3
 
4320
Partial matching not supported
 
4321
Options: dotall
 
4322
No first char
 
4323
Need char = 'z'
 
4324
 
 
4325
/((.*)a|^(.*)b)z\3/sI
 
4326
Capturing subpattern count = 3
 
4327
Max back reference = 3
 
4328
Partial matching not supported
 
4329
Options: anchored dotall
 
4330
No first char
 
4331
Need char = 'z'
 
4332
 
 
4333
/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/sI
 
4334
Capturing subpattern count = 31
 
4335
Partial matching not supported
 
4336
Options: anchored dotall
 
4337
No first char
 
4338
No need char
 
4339
 
 
4340
/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/sI
 
4341
Capturing subpattern count = 31
 
4342
Max back reference = 31
 
4343
Partial matching not supported
 
4344
Options: dotall
 
4345
No first char
 
4346
No need char
 
4347
 
 
4348
/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/sI
 
4349
Capturing subpattern count = 32
 
4350
Max back reference = 32
 
4351
Partial matching not supported
 
4352
Options: dotall
 
4353
No first char
 
4354
No need char
 
4355
 
 
4356
/(a)(bc)/ND
 
4357
------------------------------------------------------------------
 
4358
  0  21 Bra 0
 
4359
  3   5 Bra 0
 
4360
  6     a
 
4361
  8   5 Ket
 
4362
 11   7 Bra 0
 
4363
 14     bc
 
4364
 18   7 Ket
 
4365
 21  21 Ket
 
4366
 24     End
 
4367
------------------------------------------------------------------
 
4368
Capturing subpattern count = 0
 
4369
Options:
 
4370
First char = 'a'
 
4371
Need char = 'c'
 
4372
  abc
 
4373
 0: abc
 
4374
 
 
4375
/(?P<one>a)(bc)/ND
 
4376
------------------------------------------------------------------
 
4377
  0  21 Bra 0
 
4378
  3   5 Bra 1
 
4379
  6     a
 
4380
  8   5 Ket
 
4381
 11   7 Bra 0
 
4382
 14     bc
 
4383
 18   7 Ket
 
4384
 21  21 Ket
 
4385
 24     End
 
4386
------------------------------------------------------------------
 
4387
Capturing subpattern count = 1
 
4388
Named capturing subpatterns:
 
4389
  one   1
 
4390
Options:
 
4391
First char = 'a'
 
4392
Need char = 'c'
 
4393
  abc
 
4394
 0: abc
 
4395
 1: a
 
4396
 
 
4397
/(a)(?P<named>bc)/ND
 
4398
------------------------------------------------------------------
 
4399
  0  21 Bra 0
 
4400
  3   5 Bra 0
 
4401
  6     a
 
4402
  8   5 Ket
 
4403
 11   7 Bra 1
 
4404
 14     bc
 
4405
 18   7 Ket
 
4406
 21  21 Ket
 
4407
 24     End
 
4408
------------------------------------------------------------------
 
4409
Capturing subpattern count = 1
 
4410
Named capturing subpatterns:
 
4411
  named   1
 
4412
Options:
 
4413
First char = 'a'
 
4414
Need char = 'c'
 
4415
 
 
4416
/(a+)*zz/
 
4417
Capturing subpattern count = 1
 
4418
Partial matching not supported
 
4419
No options
 
4420
No first char
 
4421
Need char = 'z'
 
4422
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
 
4423
Minimum match limit = 8
 
4424
 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz
 
4425
 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
4426
  aaaaaaaaaaaaaz\M
 
4427
Minimum match limit = 32768
 
4428
No match
 
4429
 
 
4430
/(aaa(?C1)bbb|ab)/
 
4431
Capturing subpattern count = 1
 
4432
No options
 
4433
First char = 'a'
 
4434
Need char = 'b'
 
4435
   aaabbb
 
4436
--->aaabbb
 
4437
  1 ^  ^       b
 
4438
 0: aaabbb
 
4439
 1: aaabbb
 
4440
   aaabbb\C*0
 
4441
--->aaabbb
 
4442
  1 ^  ^       b
 
4443
 0: aaabbb
 
4444
 1: aaabbb
 
4445
   aaabbb\C*1
 
4446
--->aaabbb
 
4447
  1 ^  ^       b
 
4448
Callout data = 1
 
4449
 0: ab
 
4450
 1: ab
 
4451
   aaabbb\C*-1
 
4452
--->aaabbb
 
4453
  1 ^  ^       b
 
4454
Callout data = -1
 
4455
No match
 
4456
 
 
4457
/ab(?P<one>cd)ef(?P<two>gh)/
 
4458
Capturing subpattern count = 2
 
4459
Named capturing subpatterns:
 
4460
  one   1
 
4461
  two   2
 
4462
No options
 
4463
First char = 'a'
 
4464
Need char = 'h'
 
4465
    abcdefgh
 
4466
 0: abcdefgh
 
4467
 1: cd
 
4468
 2: gh
 
4469
    abcdefgh\C1\Gtwo
 
4470
 0: abcdefgh
 
4471
 1: cd
 
4472
 2: gh
 
4473
 1C cd (2)
 
4474
 2G gh (2)
 
4475
    abcdefgh\Cone\Ctwo
 
4476
 0: abcdefgh
 
4477
 1: cd
 
4478
 2: gh
 
4479
 1C cd (2)
 
4480
 2C gh (2)
 
4481
    abcdefgh\Cthree  
 
4482
no parentheses with name "three"
 
4483
 0: abcdefgh
 
4484
 1: cd
 
4485
 2: gh
 
4486
 
 
4487
/(?P<Tes>)(?P<Test>)/D
 
4488
------------------------------------------------------------------
 
4489
  0  15 Bra 0
 
4490
  3   3 Bra 1
 
4491
  6   3 Ket
 
4492
  9   3 Bra 2
 
4493
 12   3 Ket
 
4494
 15  15 Ket
 
4495
 18     End
 
4496
------------------------------------------------------------------
 
4497
Capturing subpattern count = 2
 
4498
Named capturing subpatterns:
 
4499
  Tes    1
 
4500
  Test   2
 
4501
No options
 
4502
No first char
 
4503
No need char
 
4504
 
 
4505
/(?P<Test>)(?P<Tes>)/D
 
4506
------------------------------------------------------------------
 
4507
  0  15 Bra 0
 
4508
  3   3 Bra 1
 
4509
  6   3 Ket
 
4510
  9   3 Bra 2
 
4511
 12   3 Ket
 
4512
 15  15 Ket
 
4513
 18     End
 
4514
------------------------------------------------------------------
 
4515
Capturing subpattern count = 2
 
4516
Named capturing subpatterns:
 
4517
  Tes    2
 
4518
  Test   1
 
4519
No options
 
4520
No first char
 
4521
No need char
 
4522
 
 
4523
/(?P<Z>zz)(?P<A>aa)/
 
4524
Capturing subpattern count = 2
 
4525
Named capturing subpatterns:
 
4526
  A   2
 
4527
  Z   1
 
4528
No options
 
4529
First char = 'z'
 
4530
Need char = 'a'
 
4531
    zzaa\CZ
 
4532
 0: zzaa
 
4533
 1: zz
 
4534
 2: aa
 
4535
 1C zz (2)
 
4536
    zzaa\CA
 
4537
 0: zzaa
 
4538
 1: zz
 
4539
 2: aa
 
4540
 2C aa (2)
 
4541
 
 
4542
/(?P<x>eks)(?P<x>eccs)/
 
4543
Failed: two named groups have the same name at offset 16
 
4544
 
 
4545
/(?P<abc>abc(?P<def>def)(?P<abc>xyz))/
 
4546
Failed: two named groups have the same name at offset 31
 
4547
 
 
4548
"\[((?P<elem>\d+)(,(?P>elem))*)\]"
 
4549
Capturing subpattern count = 3
 
4550
Named capturing subpatterns:
 
4551
  elem   2
 
4552
Partial matching not supported
 
4553
No options
 
4554
First char = '['
 
4555
Need char = ']'
 
4556
    [10,20,30,5,5,4,4,2,43,23,4234]
 
4557
 0: [10,20,30,5,5,4,4,2,43,23,4234]
 
4558
 1: 10,20,30,5,5,4,4,2,43,23,4234
 
4559
 2: 10
 
4560
 3: ,4234
 
4561
    *** Failers
 
4562
No match
 
4563
    []  
 
4564
No match
 
4565
 
 
4566
"\[((?P<elem>\d+)(,(?P>elem))*)?\]"
 
4567
Capturing subpattern count = 3
 
4568
Named capturing subpatterns:
 
4569
  elem   2
 
4570
Partial matching not supported
 
4571
No options
 
4572
First char = '['
 
4573
Need char = ']'
 
4574
    [10,20,30,5,5,4,4,2,43,23,4234]
 
4575
 0: [10,20,30,5,5,4,4,2,43,23,4234]
 
4576
 1: 10,20,30,5,5,4,4,2,43,23,4234
 
4577
 2: 10
 
4578
 3: ,4234
 
4579
    [] 
 
4580
 0: []
 
4581
 
 
4582
/(a(b(?2)c))?/D
 
4583
------------------------------------------------------------------
 
4584
  0  25 Bra 0
 
4585
  3     Brazero
 
4586
  4  18 Bra 1
 
4587
  7     a
 
4588
  9  10 Bra 2
 
4589
 12     b
 
4590
 14   9 Recurse
 
4591
 17     c
 
4592
 19  10 Ket
 
4593
 22  18 Ket
 
4594
 25  25 Ket
 
4595
 28     End
 
4596
------------------------------------------------------------------
 
4597
Capturing subpattern count = 2
 
4598
No options
 
4599
No first char
 
4600
No need char
 
4601
 
 
4602
/(a(b(?2)c))*/D
 
4603
------------------------------------------------------------------
 
4604
  0  25 Bra 0
 
4605
  3     Brazero
 
4606
  4  18 Bra 1
 
4607
  7     a
 
4608
  9  10 Bra 2
 
4609
 12     b
 
4610
 14   9 Recurse
 
4611
 17     c
 
4612
 19  10 Ket
 
4613
 22  18 KetRmax
 
4614
 25  25 Ket
 
4615
 28     End
 
4616
------------------------------------------------------------------
 
4617
Capturing subpattern count = 2
 
4618
No options
 
4619
No first char
 
4620
No need char
 
4621
 
 
4622
/(a(b(?2)c)){0,2}/D
 
4623
------------------------------------------------------------------
 
4624
  0  53 Bra 0
 
4625
  3     Brazero
 
4626
  4  46 Bra 0
 
4627
  7  18 Bra 1
 
4628
 10     a
 
4629
 12  10 Bra 2
 
4630
 15     b
 
4631
 17  12 Recurse
 
4632
 20     c
 
4633
 22  10 Ket
 
4634
 25  18 Ket
 
4635
 28     Brazero
 
4636
 29  18 Bra 1
 
4637
 32     a
 
4638
 34  10 Bra 2
 
4639
 37     b
 
4640
 39  12 Recurse
 
4641
 42     c
 
4642
 44  10 Ket
 
4643
 47  18 Ket
 
4644
 50  46 Ket
 
4645
 53  53 Ket
 
4646
 56     End
 
4647
------------------------------------------------------------------
 
4648
Capturing subpattern count = 2
 
4649
No options
 
4650
No first char
 
4651
No need char
 
4652
 
 
4653
/[ab]{1}+/D
 
4654
------------------------------------------------------------------
 
4655
  0  47 Bra 0
 
4656
  3  41 Once
 
4657
  6     [ab]{1,1}
 
4658
 44  41 Ket
 
4659
 47  47 Ket
 
4660
 50     End
 
4661
------------------------------------------------------------------
 
4662
Capturing subpattern count = 0
 
4663
No options
 
4664
No first char
 
4665
No need char
 
4666
 
 
4667
/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/i
 
4668
Capturing subpattern count = 3
 
4669
Partial matching not supported
 
4670
Options: caseless
 
4671
No first char
 
4672
Need char = 'g' (caseless)
 
4673
     Baby Bjorn Active Carrier - With free SHIPPING!!
 
4674
 0: Baby Bjorn Active Carrier - With free SHIPPING!!
 
4675
 1: Baby Bjorn Active Carrier - With free SHIPPING!!
 
4676
 
 
4677
/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/iS
 
4678
Capturing subpattern count = 3
 
4679
Partial matching not supported
 
4680
Options: caseless
 
4681
No first char
 
4682
Need char = 'g' (caseless)
 
4683
Study returned NULL
 
4684
     Baby Bjorn Active Carrier - With free SHIPPING!!
 
4685
 0: Baby Bjorn Active Carrier - With free SHIPPING!!
 
4686
 1: Baby Bjorn Active Carrier - With free SHIPPING!!
 
4687
     
 
4688
/a*.*b/SD
 
4689
------------------------------------------------------------------
 
4690
  0   9 Bra 0
 
4691
  3     a*
 
4692
  5     Any*
 
4693
  7     b
 
4694
  9   9 Ket
 
4695
 12     End
 
4696
------------------------------------------------------------------
 
4697
Capturing subpattern count = 0
 
4698
Partial matching not supported
 
4699
No options
 
4700
No first char
 
4701
Need char = 'b'
 
4702
Study returned NULL
 
4703
 
 
4704
/(a|b)*.?c/SD 
 
4705
------------------------------------------------------------------
 
4706
  0  21 Bra 0
 
4707
  3     Brazero
 
4708
  4   5 Bra 1
 
4709
  7     a
 
4710
  9   5 Alt
 
4711
 12     b
 
4712
 14  10 KetRmax
 
4713
 17     Any?
 
4714
 19     c
 
4715
 21  21 Ket
 
4716
 24     End
 
4717
------------------------------------------------------------------
 
4718
Capturing subpattern count = 1
 
4719
No options
 
4720
No first char
 
4721
Need char = 'c'
 
4722
Study returned NULL
 
4723
 
 
4724
/abc(?C255)de(?C)f/D
 
4725
------------------------------------------------------------------
 
4726
  0  27 Bra 0
 
4727
  3     abc
 
4728
  9     Callout 255 10 1
 
4729
 15     de
 
4730
 19     Callout 0 16 1
 
4731
 25     f
 
4732
 27  27 Ket
 
4733
 30     End
 
4734
------------------------------------------------------------------
 
4735
Capturing subpattern count = 0
 
4736
No options
 
4737
First char = 'a'
 
4738
Need char = 'f'
 
4739
 
 
4740
/abcde/CD
 
4741
------------------------------------------------------------------
 
4742
  0  49 Bra 0
 
4743
  3     Callout 255 0 1
 
4744
  9     a
 
4745
 11     Callout 255 1 1
 
4746
 17     b
 
4747
 19     Callout 255 2 1
 
4748
 25     c
 
4749
 27     Callout 255 3 1
 
4750
 33     d
 
4751
 35     Callout 255 4 1
 
4752
 41     e
 
4753
 43     Callout 255 5 0
 
4754
 49  49 Ket
 
4755
 52     End
 
4756
------------------------------------------------------------------
 
4757
Capturing subpattern count = 0
 
4758
Options:
 
4759
First char = 'a'
 
4760
Need char = 'e'
 
4761
  abcde
 
4762
--->abcde
 
4763
 +0 ^         a
 
4764
 +1 ^^        b
 
4765
 +2 ^ ^       c
 
4766
 +3 ^  ^      d
 
4767
 +4 ^   ^     e
 
4768
 +5 ^    ^    
 
4769
 0: abcde
 
4770
  abcdfe 
 
4771
--->abcdfe
 
4772
 +0 ^          a
 
4773
 +1 ^^         b
 
4774
 +2 ^ ^        c
 
4775
 +3 ^  ^       d
 
4776
 +4 ^   ^      e
 
4777
No match
 
4778
  
 
4779
/a*b/CD
 
4780
------------------------------------------------------------------
 
4781
  0  25 Bra 0
 
4782
  3     Callout 255 0 2
 
4783
  9     a*
 
4784
 11     Callout 255 2 1
 
4785
 17     b
 
4786
 19     Callout 255 3 0
 
4787
 25  25 Ket
 
4788
 28     End
 
4789
------------------------------------------------------------------
 
4790
Capturing subpattern count = 0
 
4791
Partial matching not supported
 
4792
Options:
 
4793
No first char
 
4794
Need char = 'b'
 
4795
  ab
 
4796
--->ab
 
4797
 +0 ^      a*
 
4798
 +2 ^^     b
 
4799
 +3 ^ ^    
 
4800
 0: ab
 
4801
  aaaab
 
4802
--->aaaab
 
4803
 +0 ^         a*
 
4804
 +2 ^   ^     b
 
4805
 +3 ^    ^    
 
4806
 0: aaaab
 
4807
  aaaacb   
 
4808
--->aaaacb
 
4809
 +0 ^          a*
 
4810
 +2 ^   ^      b
 
4811
 +2 ^  ^       b
 
4812
 +2 ^ ^        b
 
4813
 +2 ^^         b
 
4814
 +2 ^          b
 
4815
 +0  ^         a*
 
4816
 +2  ^  ^      b
 
4817
 +2  ^ ^       b
 
4818
 +2  ^^        b
 
4819
 +2  ^         b
 
4820
 +0   ^        a*
 
4821
 +2   ^ ^      b
 
4822
 +2   ^^       b
 
4823
 +2   ^        b
 
4824
 +0    ^       a*
 
4825
 +2    ^^      b
 
4826
 +2    ^       b
 
4827
 +0     ^      a*
 
4828
 +2     ^      b
 
4829
 +0      ^     a*
 
4830
 +2      ^     b
 
4831
 +3      ^^    
 
4832
 0: b
 
4833
 
 
4834
/a+b/CD
 
4835
------------------------------------------------------------------
 
4836
  0  25 Bra 0
 
4837
  3     Callout 255 0 2
 
4838
  9     a+
 
4839
 11     Callout 255 2 1
 
4840
 17     b
 
4841
 19     Callout 255 3 0
 
4842
 25  25 Ket
 
4843
 28     End
 
4844
------------------------------------------------------------------
 
4845
Capturing subpattern count = 0
 
4846
Partial matching not supported
 
4847
Options:
 
4848
First char = 'a'
 
4849
Need char = 'b'
 
4850
  ab
 
4851
--->ab
 
4852
 +0 ^      a+
 
4853
 +2 ^^     b
 
4854
 +3 ^ ^    
 
4855
 0: ab
 
4856
  aaaab
 
4857
--->aaaab
 
4858
 +0 ^         a+
 
4859
 +2 ^   ^     b
 
4860
 +3 ^    ^    
 
4861
 0: aaaab
 
4862
  aaaacb   
 
4863
--->aaaacb
 
4864
 +0 ^          a+
 
4865
 +2 ^   ^      b
 
4866
 +2 ^  ^       b
 
4867
 +2 ^ ^        b
 
4868
 +2 ^^         b
 
4869
 +0  ^         a+
 
4870
 +2  ^  ^      b
 
4871
 +2  ^ ^       b
 
4872
 +2  ^^        b
 
4873
 +0   ^        a+
 
4874
 +2   ^ ^      b
 
4875
 +2   ^^       b
 
4876
 +0    ^       a+
 
4877
 +2    ^^      b
 
4878
No match
 
4879
 
 
4880
/(abc|def)x/CD
 
4881
------------------------------------------------------------------
 
4882
  0  92 Bra 0
 
4883
  3     Callout 255 0 9
 
4884
  9  33 Bra 1
 
4885
 12     Callout 255 1 1
 
4886
 18     a
 
4887
 20     Callout 255 2 1
 
4888
 26     b
 
4889
 28     Callout 255 3 1
 
4890
 34     c
 
4891
 36     Callout 255 4 0
 
4892
 42  33 Alt
 
4893
 45     Callout 255 5 1
 
4894
 51     d
 
4895
 53     Callout 255 6 1
 
4896
 59     e
 
4897
 61     Callout 255 7 1
 
4898
 67     f
 
4899
 69     Callout 255 8 0
 
4900
 75  66 Ket
 
4901
 78     Callout 255 9 1
 
4902
 84     x
 
4903
 86     Callout 255 10 0
 
4904
 92  92 Ket
 
4905
 95     End
 
4906
------------------------------------------------------------------
 
4907
Capturing subpattern count = 1
 
4908
Options:
 
4909
No first char
 
4910
Need char = 'x'
 
4911
  abcx
 
4912
--->abcx
 
4913
 +0 ^        (abc|def)
 
4914
 +1 ^        a
 
4915
 +2 ^^       b
 
4916
 +3 ^ ^      c
 
4917
 +4 ^  ^     |
 
4918
 +9 ^  ^     x
 
4919
+10 ^   ^    
 
4920
 0: abcx
 
4921
 1: abc
 
4922
  defx
 
4923
--->defx
 
4924
 +0 ^        (abc|def)
 
4925
 +1 ^        a
 
4926
 +5 ^        d
 
4927
 +6 ^^       e
 
4928
 +7 ^ ^      f
 
4929
 +8 ^  ^     )
 
4930
 +9 ^  ^     x
 
4931
+10 ^   ^    
 
4932
 0: defx
 
4933
 1: def
 
4934
  abcdefzx
 
4935
--->abcdefzx
 
4936
 +0 ^            (abc|def)
 
4937
 +1 ^            a
 
4938
 +2 ^^           b
 
4939
 +3 ^ ^          c
 
4940
 +4 ^  ^         |
 
4941
 +9 ^  ^         x
 
4942
 +5 ^            d
 
4943
 +0  ^           (abc|def)
 
4944
 +1  ^           a
 
4945
 +5  ^           d
 
4946
 +0   ^          (abc|def)
 
4947
 +1   ^          a
 
4948
 +5   ^          d
 
4949
 +0    ^         (abc|def)
 
4950
 +1    ^         a
 
4951
 +5    ^         d
 
4952
 +6    ^^        e
 
4953
 +7    ^ ^       f
 
4954
 +8    ^  ^      )
 
4955
 +9    ^  ^      x
 
4956
 +0     ^        (abc|def)
 
4957
 +1     ^        a
 
4958
 +5     ^        d
 
4959
 +0      ^       (abc|def)
 
4960
 +1      ^       a
 
4961
 +5      ^       d
 
4962
 +0       ^      (abc|def)
 
4963
 +1       ^      a
 
4964
 +5       ^      d
 
4965
 +0        ^     (abc|def)
 
4966
 +1        ^     a
 
4967
 +5        ^     d
 
4968
No match
 
4969
 
 
4970
/(ab|cd){3,4}/C
 
4971
Capturing subpattern count = 1
 
4972
Options:
 
4973
No first char
 
4974
No need char
 
4975
  ababab
 
4976
--->ababab
 
4977
 +0 ^          (ab|cd){3,4}
 
4978
 +1 ^          a
 
4979
 +2 ^^         b
 
4980
 +3 ^ ^        |
 
4981
 +1 ^ ^        a
 
4982
 +2 ^  ^       b
 
4983
 +3 ^   ^      |
 
4984
 +1 ^   ^      a
 
4985
 +2 ^    ^     b
 
4986
 +3 ^     ^    |
 
4987
 +1 ^     ^    a
 
4988
 +4 ^     ^    c
 
4989
+12 ^     ^    
 
4990
 0: ababab
 
4991
 1: ab
 
4992
  abcdabcd
 
4993
--->abcdabcd
 
4994
 +0 ^            (ab|cd){3,4}
 
4995
 +1 ^            a
 
4996
 +2 ^^           b
 
4997
 +3 ^ ^          |
 
4998
 +1 ^ ^          a
 
4999
 +4 ^ ^          c
 
5000
 +5 ^  ^         d
 
5001
 +6 ^   ^        )
 
5002
 +1 ^   ^        a
 
5003
 +2 ^    ^       b
 
5004
 +3 ^     ^      |
 
5005
 +1 ^     ^      a
 
5006
 +4 ^     ^      c
 
5007
 +5 ^      ^     d
 
5008
 +6 ^       ^    )
 
5009
+12 ^       ^    
 
5010
 0: abcdabcd
 
5011
 1: cd
 
5012
  abcdcdcdcdcd  
 
5013
--->abcdcdcdcdcd
 
5014
 +0 ^                (ab|cd){3,4}
 
5015
 +1 ^                a
 
5016
 +2 ^^               b
 
5017
 +3 ^ ^              |
 
5018
 +1 ^ ^              a
 
5019
 +4 ^ ^              c
 
5020
 +5 ^  ^             d
 
5021
 +6 ^   ^            )
 
5022
 +1 ^   ^            a
 
5023
 +4 ^   ^            c
 
5024
 +5 ^    ^           d
 
5025
 +6 ^     ^          )
 
5026
 +1 ^     ^          a
 
5027
 +4 ^     ^          c
 
5028
 +5 ^      ^         d
 
5029
 +6 ^       ^        )
 
5030
+12 ^       ^        
 
5031
 0: abcdcdcd
 
5032
 1: cd
 
5033
 
 
5034
/([ab]{,4}c|xy)/CD
 
5035
------------------------------------------------------------------
 
5036
  0 131 Bra 0
 
5037
  3     Callout 255 0 14
 
5038
  9  88 Bra 1
 
5039
 12     Callout 255 1 4
 
5040
 18     [ab]
 
5041
 51     Callout 255 5 1
 
5042
 57     {
 
5043
 59     Callout 255 6 1
 
5044
 65     ,
 
5045
 67     Callout 255 7 1
 
5046
 73     4
 
5047
 75     Callout 255 8 1
 
5048
 81     }
 
5049
 83     Callout 255 9 1
 
5050
 89     c
 
5051
 91     Callout 255 10 0
 
5052
 97  25 Alt
 
5053
100     Callout 255 11 1
 
5054
106     x
 
5055
108     Callout 255 12 1
 
5056
114     y
 
5057
116     Callout 255 13 0
 
5058
122 113 Ket
 
5059
125     Callout 255 14 0
 
5060
131 131 Ket
 
5061
134     End
 
5062
------------------------------------------------------------------
 
5063
Capturing subpattern count = 1
 
5064
Options:
 
5065
No first char
 
5066
No need char
 
5067
    Note: that { does NOT introduce a quantifier
 
5068
--->Note: that { does NOT introduce a quantifier
 
5069
 +0 ^                                                ([ab]{,4}c|xy)
 
5070
 +1 ^                                                [ab]
 
5071
+11 ^                                                x
 
5072
 +0  ^                                               ([ab]{,4}c|xy)
 
5073
 +1  ^                                               [ab]
 
5074
+11  ^                                               x
 
5075
 +0   ^                                              ([ab]{,4}c|xy)
 
5076
 +1   ^                                              [ab]
 
5077
+11   ^                                              x
 
5078
 +0    ^                                             ([ab]{,4}c|xy)
 
5079
 +1    ^                                             [ab]
 
5080
+11    ^                                             x
 
5081
 +0     ^                                            ([ab]{,4}c|xy)
 
5082
 +1     ^                                            [ab]
 
5083
+11     ^                                            x
 
5084
 +0      ^                                           ([ab]{,4}c|xy)
 
5085
 +1      ^                                           [ab]
 
5086
+11      ^                                           x
 
5087
 +0       ^                                          ([ab]{,4}c|xy)
 
5088
 +1       ^                                          [ab]
 
5089
+11       ^                                          x
 
5090
 +0        ^                                         ([ab]{,4}c|xy)
 
5091
 +1        ^                                         [ab]
 
5092
+11        ^                                         x
 
5093
 +0         ^                                        ([ab]{,4}c|xy)
 
5094
 +1         ^                                        [ab]
 
5095
 +5         ^^                                       {
 
5096
+11         ^                                        x
 
5097
 +0          ^                                       ([ab]{,4}c|xy)
 
5098
 +1          ^                                       [ab]
 
5099
+11          ^                                       x
 
5100
 +0           ^                                      ([ab]{,4}c|xy)
 
5101
 +1           ^                                      [ab]
 
5102
+11           ^                                      x
 
5103
 +0            ^                                     ([ab]{,4}c|xy)
 
5104
 +1            ^                                     [ab]
 
5105
+11            ^                                     x
 
5106
 +0             ^                                    ([ab]{,4}c|xy)
 
5107
 +1             ^                                    [ab]
 
5108
+11             ^                                    x
 
5109
 +0              ^                                   ([ab]{,4}c|xy)
 
5110
 +1              ^                                   [ab]
 
5111
+11              ^                                   x
 
5112
 +0               ^                                  ([ab]{,4}c|xy)
 
5113
 +1               ^                                  [ab]
 
5114
+11               ^                                  x
 
5115
 +0                ^                                 ([ab]{,4}c|xy)
 
5116
 +1                ^                                 [ab]
 
5117
+11                ^                                 x
 
5118
 +0                 ^                                ([ab]{,4}c|xy)
 
5119
 +1                 ^                                [ab]
 
5120
+11                 ^                                x
 
5121
 +0                  ^                               ([ab]{,4}c|xy)
 
5122
 +1                  ^                               [ab]
 
5123
+11                  ^                               x
 
5124
 +0                   ^                              ([ab]{,4}c|xy)
 
5125
 +1                   ^                              [ab]
 
5126
+11                   ^                              x
 
5127
 +0                    ^                             ([ab]{,4}c|xy)
 
5128
 +1                    ^                             [ab]
 
5129
+11                    ^                             x
 
5130
 +0                     ^                            ([ab]{,4}c|xy)
 
5131
 +1                     ^                            [ab]
 
5132
+11                     ^                            x
 
5133
 +0                      ^                           ([ab]{,4}c|xy)
 
5134
 +1                      ^                           [ab]
 
5135
+11                      ^                           x
 
5136
 +0                       ^                          ([ab]{,4}c|xy)
 
5137
 +1                       ^                          [ab]
 
5138
+11                       ^                          x
 
5139
 +0                        ^                         ([ab]{,4}c|xy)
 
5140
 +1                        ^                         [ab]
 
5141
+11                        ^                         x
 
5142
 +0                         ^                        ([ab]{,4}c|xy)
 
5143
 +1                         ^                        [ab]
 
5144
+11                         ^                        x
 
5145
 +0                          ^                       ([ab]{,4}c|xy)
 
5146
 +1                          ^                       [ab]
 
5147
+11                          ^                       x
 
5148
 +0                           ^                      ([ab]{,4}c|xy)
 
5149
 +1                           ^                      [ab]
 
5150
+11                           ^                      x
 
5151
 +0                            ^                     ([ab]{,4}c|xy)
 
5152
 +1                            ^                     [ab]
 
5153
+11                            ^                     x
 
5154
 +0                             ^                    ([ab]{,4}c|xy)
 
5155
 +1                             ^                    [ab]
 
5156
+11                             ^                    x
 
5157
 +0                              ^                   ([ab]{,4}c|xy)
 
5158
 +1                              ^                   [ab]
 
5159
+11                              ^                   x
 
5160
 +0                               ^                  ([ab]{,4}c|xy)
 
5161
 +1                               ^                  [ab]
 
5162
+11                               ^                  x
 
5163
 +0                                ^                 ([ab]{,4}c|xy)
 
5164
 +1                                ^                 [ab]
 
5165
+11                                ^                 x
 
5166
 +0                                 ^                ([ab]{,4}c|xy)
 
5167
 +1                                 ^                [ab]
 
5168
 +5                                 ^^               {
 
5169
+11                                 ^                x
 
5170
 +0                                  ^               ([ab]{,4}c|xy)
 
5171
 +1                                  ^               [ab]
 
5172
+11                                  ^               x
 
5173
 +0                                   ^              ([ab]{,4}c|xy)
 
5174
 +1                                   ^              [ab]
 
5175
+11                                   ^              x
 
5176
 +0                                    ^             ([ab]{,4}c|xy)
 
5177
 +1                                    ^             [ab]
 
5178
+11                                    ^             x
 
5179
 +0                                     ^            ([ab]{,4}c|xy)
 
5180
 +1                                     ^            [ab]
 
5181
 +5                                     ^^           {
 
5182
+11                                     ^            x
 
5183
 +0                                      ^           ([ab]{,4}c|xy)
 
5184
 +1                                      ^           [ab]
 
5185
+11                                      ^           x
 
5186
 +0                                       ^          ([ab]{,4}c|xy)
 
5187
 +1                                       ^          [ab]
 
5188
+11                                       ^          x
 
5189
 +0                                        ^         ([ab]{,4}c|xy)
 
5190
 +1                                        ^         [ab]
 
5191
+11                                        ^         x
 
5192
 +0                                         ^        ([ab]{,4}c|xy)
 
5193
 +1                                         ^        [ab]
 
5194
+11                                         ^        x
 
5195
 +0                                          ^       ([ab]{,4}c|xy)
 
5196
 +1                                          ^       [ab]
 
5197
+11                                          ^       x
 
5198
 +0                                           ^      ([ab]{,4}c|xy)
 
5199
 +1                                           ^      [ab]
 
5200
+11                                           ^      x
 
5201
 +0                                            ^     ([ab]{,4}c|xy)
 
5202
 +1                                            ^     [ab]
 
5203
+11                                            ^     x
 
5204
 +0                                             ^    ([ab]{,4}c|xy)
 
5205
 +1                                             ^    [ab]
 
5206
+11                                             ^    x
 
5207
No match
 
5208
 
 
5209
/([ab]{1,4}c|xy){4,5}?123/CD
 
5210
------------------------------------------------------------------
 
5211
  0 485 Bra 0
 
5212
  3     Callout 255 0 21
 
5213
  9  61 Bra 1
 
5214
 12     Callout 255 1 9
 
5215
 18     [ab]{1,4}
 
5216
 56     Callout 255 10 1
 
5217
 62     c
 
5218
 64     Callout 255 11 0
 
5219
 70  25 Alt
 
5220
 73     Callout 255 12 1
 
5221
 79     x
 
5222
 81     Callout 255 13 1
 
5223
 87     y
 
5224
 89     Callout 255 14 0
 
5225
 95  86 Ket
 
5226
 98  61 Bra 1
 
5227
101     Callout 255 1 9
 
5228
107     [ab]{1,4}
 
5229
145     Callout 255 10 1
 
5230
151     c
 
5231
153     Callout 255 11 0
 
5232
159  25 Alt
 
5233
162     Callout 255 12 1
 
5234
168     x
 
5235
170     Callout 255 13 1
 
5236
176     y
 
5237
178     Callout 255 14 0
 
5238
184  86 Ket
 
5239
187  61 Bra 1
 
5240
190     Callout 255 1 9
 
5241
196     [ab]{1,4}
 
5242
234     Callout 255 10 1
 
5243
240     c
 
5244
242     Callout 255 11 0
 
5245
248  25 Alt
 
5246
251     Callout 255 12 1
 
5247
257     x
 
5248
259     Callout 255 13 1
 
5249
265     y
 
5250
267     Callout 255 14 0
 
5251
273  86 Ket
 
5252
276  61 Bra 1
 
5253
279     Callout 255 1 9
 
5254
285     [ab]{1,4}
 
5255
323     Callout 255 10 1
 
5256
329     c
 
5257
331     Callout 255 11 0
 
5258
337  25 Alt
 
5259
340     Callout 255 12 1
 
5260
346     x
 
5261
348     Callout 255 13 1
 
5262
354     y
 
5263
356     Callout 255 14 0
 
5264
362  86 Ket
 
5265
365     Braminzero
 
5266
366  61 Bra 1
 
5267
369     Callout 255 1 9
 
5268
375     [ab]{1,4}
 
5269
413     Callout 255 10 1
 
5270
419     c
 
5271
421     Callout 255 11 0
 
5272
427  25 Alt
 
5273
430     Callout 255 12 1
 
5274
436     x
 
5275
438     Callout 255 13 1
 
5276
444     y
 
5277
446     Callout 255 14 0
 
5278
452  86 Ket
 
5279
455     Callout 255 21 1
 
5280
461     1
 
5281
463     Callout 255 22 1
 
5282
469     2
 
5283
471     Callout 255 23 1
 
5284
477     3
 
5285
479     Callout 255 24 0
 
5286
485 485 Ket
 
5287
488     End
 
5288
------------------------------------------------------------------
 
5289
Capturing subpattern count = 1
 
5290
Partial matching not supported
 
5291
Options:
 
5292
No first char
 
5293
Need char = '3'
 
5294
    aacaacaacaacaac123
 
5295
--->aacaacaacaacaac123
 
5296
 +0 ^                      ([ab]{1,4}c|xy){4,5}?
 
5297
 +1 ^                      [ab]{1,4}
 
5298
+10 ^ ^                    c
 
5299
+11 ^  ^                   |
 
5300
 +1 ^  ^                   [ab]{1,4}
 
5301
+10 ^    ^                 c
 
5302
+11 ^     ^                |
 
5303
 +1 ^     ^                [ab]{1,4}
 
5304
+10 ^       ^              c
 
5305
+11 ^        ^             |
 
5306
 +1 ^        ^             [ab]{1,4}
 
5307
+10 ^          ^           c
 
5308
+11 ^           ^          |
 
5309
+21 ^           ^          1
 
5310
 +1 ^           ^          [ab]{1,4}
 
5311
+10 ^             ^        c
 
5312
+11 ^              ^       |
 
5313
+21 ^              ^       1
 
5314
+22 ^               ^      2
 
5315
+23 ^                ^     3
 
5316
+24 ^                 ^    
 
5317
 0: aacaacaacaacaac123
 
5318
 1: aac
 
5319
 
 
5320
/\b.*/I
 
5321
Capturing subpattern count = 0
 
5322
Partial matching not supported
 
5323
No options
 
5324
No first char
 
5325
No need char
 
5326
  ab cd\>1
 
5327
 0:  cd
 
5328
  
 
5329
/\b.*/Is 
 
5330
Capturing subpattern count = 0
 
5331
Partial matching not supported
 
5332
Options: dotall
 
5333
No first char
 
5334
No need char
 
5335
  ab cd\>1
 
5336
 0:  cd
 
5337
  
 
5338
/(?!.bcd).*/I
 
5339
Capturing subpattern count = 0
 
5340
Partial matching not supported
 
5341
No options
 
5342
No first char
 
5343
No need char
 
5344
  Xbcd12345 
 
5345
 0: bcd12345
 
5346
 
 
5347
/abcde/
 
5348
Capturing subpattern count = 0
 
5349
No options
 
5350
First char = 'a'
 
5351
Need char = 'e'
 
5352
    ab\P
 
5353
Partial match
 
5354
    abc\P
 
5355
Partial match
 
5356
    abcd\P
 
5357
Partial match
 
5358
    abcde\P   
 
5359
 0: abcde
 
5360
    the quick brown abc\P
 
5361
Partial match
 
5362
    ** Failers\P
 
5363
No match
 
5364
    the quick brown abxyz fox\P
 
5365
No match
 
5366
    
 
5367
"^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"
 
5368
Capturing subpattern count = 3
 
5369
Options: anchored
 
5370
No first char
 
5371
Need char = '/'
 
5372
    13/05/04\P
 
5373
 0: 13/05/04
 
5374
 1: 13
 
5375
 2: 05
 
5376
    13/5/2004\P
 
5377
 0: 13/5/2004
 
5378
 1: 13
 
5379
 2: 5
 
5380
 3: 20
 
5381
    02/05/09\P 
 
5382
 0: 02/05/09
 
5383
 1: 02
 
5384
 2: 05
 
5385
    1\P
 
5386
Partial match
 
5387
    1/2\P
 
5388
Partial match
 
5389
    1/2/0\P
 
5390
Partial match
 
5391
    1/2/04\P    
 
5392
 0: 1/2/04
 
5393
 1: 1
 
5394
 2: 2
 
5395
    0\P
 
5396
Partial match
 
5397
    02/\P
 
5398
Partial match
 
5399
    02/0\P   
 
5400
Partial match
 
5401
    02/1\P
 
5402
Partial match
 
5403
    ** Failers\P
 
5404
No match
 
5405
    \P
 
5406
No match
 
5407
    123\P
 
5408
No match
 
5409
    33/4/04\P
 
5410
No match
 
5411
    3/13/04\P
 
5412
No match
 
5413
    0/1/2003\P
 
5414
No match
 
5415
    0/\P 
 
5416
No match
 
5417
    02/0/\P 
 
5418
No match
 
5419
    02/13\P  
 
5420
No match
 
5421
 
 
5422
/0{0,2}ABC/I
 
5423
Capturing subpattern count = 0
 
5424
Partial matching not supported
 
5425
No options
 
5426
No first char
 
5427
Need char = 'C'
 
5428
    
 
5429
/\d{3,}ABC/I
 
5430
Capturing subpattern count = 0
 
5431
Partial matching not supported
 
5432
No options
 
5433
No first char
 
5434
Need char = 'C'
 
5435
    
 
5436
/\d*ABC/I
 
5437
Capturing subpattern count = 0
 
5438
Partial matching not supported
 
5439
No options
 
5440
No first char
 
5441
Need char = 'C'
 
5442
 
 
5443
/[abc]+DE/I
 
5444
Capturing subpattern count = 0
 
5445
Partial matching not supported
 
5446
No options
 
5447
No first char
 
5448
Need char = 'E'
 
5449
 
 
5450
/[abc]?123/
 
5451
Capturing subpattern count = 0
 
5452
No options
 
5453
No first char
 
5454
Need char = '3'
 
5455
    123\P
 
5456
 0: 123
 
5457
    a\P
 
5458
Partial match
 
5459
    b\P
 
5460
Partial match
 
5461
    c\P
 
5462
Partial match
 
5463
    c12\P
 
5464
Partial match
 
5465
    c123\P      
 
5466
 0: c123
 
5467
 
 
5468
/^(?:\d){3,5}X/
 
5469
Capturing subpattern count = 0
 
5470
Options: anchored
 
5471
No first char
 
5472
Need char = 'X'
 
5473
    1\P
 
5474
Partial match
 
5475
    123\P
 
5476
Partial match
 
5477
    123X
 
5478
 0: 123X
 
5479
    1234\P
 
5480
Partial match
 
5481
    1234X
 
5482
 0: 1234X
 
5483
    12345\P
 
5484
Partial match
 
5485
    12345X      
 
5486
 0: 12345X
 
5487
    *** Failers 
 
5488
No match
 
5489
    1X 
 
5490
No match
 
5491
    123456\P 
 
5492
No match
 
5493
 
 
5494
/abc/>testsavedregex
 
5495
Capturing subpattern count = 0
 
5496
No options
 
5497
First char = 'a'
 
5498
Need char = 'c'
 
5499
Compiled regex written to testsavedregex
 
5500
<testsavedregex
 
5501
Compiled regex loaded from testsavedregex
 
5502
No study data
 
5503
Capturing subpattern count = 0
 
5504
No options
 
5505
First char = 'a'
 
5506
Need char = 'c'
 
5507
    abc
 
5508
 0: abc
 
5509
    ** Failers
 
5510
No match
 
5511
    bca
 
5512
No match
 
5513
    
 
5514
/abc/F>testsavedregex
 
5515
Capturing subpattern count = 0
 
5516
No options
 
5517
First char = 'a'
 
5518
Need char = 'c'
 
5519
Compiled regex written to testsavedregex
 
5520
<testsavedregex
 
5521
Compiled regex (byte-inverted) loaded from testsavedregex
 
5522
No study data
 
5523
Capturing subpattern count = 0
 
5524
No options
 
5525
First char = 'a'
 
5526
Need char = 'c'
 
5527
    abc
 
5528
 0: abc
 
5529
    ** Failers
 
5530
No match
 
5531
    bca
 
5532
No match
 
5533
 
 
5534
/(a|b)/S>testsavedregex
 
5535
Capturing subpattern count = 1
 
5536
No options
 
5537
No first char
 
5538
No need char
 
5539
Starting byte set: a b 
 
5540
Compiled regex written to testsavedregex
 
5541
Study data written to testsavedregex
 
5542
<testsavedregex
 
5543
Compiled regex loaded from testsavedregex
 
5544
Study data loaded from testsavedregex
 
5545
Capturing subpattern count = 1
 
5546
No options
 
5547
No first char
 
5548
No need char
 
5549
Starting byte set: a b 
 
5550
    abc
 
5551
 0: a
 
5552
 1: a
 
5553
    ** Failers
 
5554
 0: a
 
5555
 1: a
 
5556
    def  
 
5557
No match
 
5558
    
 
5559
/(a|b)/SF>testsavedregex
 
5560
Capturing subpattern count = 1
 
5561
No options
 
5562
No first char
 
5563
No need char
 
5564
Starting byte set: a b 
 
5565
Compiled regex written to testsavedregex
 
5566
Study data written to testsavedregex
 
5567
<testsavedregex
 
5568
Compiled regex (byte-inverted) loaded from testsavedregex
 
5569
Study data loaded from testsavedregex
 
5570
Capturing subpattern count = 1
 
5571
No options
 
5572
No first char
 
5573
No need char
 
5574
Starting byte set: a b 
 
5575
    abc
 
5576
 0: a
 
5577
 1: a
 
5578
    ** Failers
 
5579
 0: a
 
5580
 1: a
 
5581
    def  
 
5582
No match
 
5583
    
 
5584
~<(\w+)/?>(.)*</(\1)>~smg
 
5585
Capturing subpattern count = 3
 
5586
Max back reference = 1
 
5587
Partial matching not supported
 
5588
Options: multiline dotall
 
5589
First char = '<'
 
5590
Need char = '>'
 
5591
    <!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite>
 
5592
 0: <seite>\x0a<dokumenteninformation>\x0a<seitentitel>Partner der LCO</seitentitel>\x0a<sprache>de</sprache>\x0a<seitenbeschreibung>Partner der LINEAS Consulting\x0aGmbH</seitenbeschreibung>\x0a<schluesselworte>LINEAS Consulting GmbH Hamburg\x0aPartnerfirmen</schluesselworte>\x0a<revisit>30 days</revisit>\x0a<robots>index,follow</robots>\x0a<menueinformation>\x0a<aktiv>ja</aktiv>\x0a<menueposition>3</menueposition>\x0a<menuetext>Partner</menuetext>\x0a</menueinformation>\x0a<lastedited>\x0a<autor>LCO</autor>\x0a<firma>LINEAS Consulting</firma>\x0a<datum>15.10.2003</datum>\x0a</lastedited>\x0a</dokumenteninformation>\x0a<inhalt>\x0a\x0a<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\x0aGmbH</absatzueberschrift>\x0a\x0a<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\x0a<bild name="logo_ca.gif" rahmen="no"/></link> <link\x0aziel="http://www.ey.com/" zielfenster="_blank"><bild\x0aname="logo_euy.gif" rahmen="no"/></link>\x0a</absatz>\x0a\x0a<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\x0a<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\x0a\x0a<absatz><link ziel="http://www.atelion.de/"\x0azielfenster="_blank"><bild\x0aname="logo_atelion.gif" rahmen="no"/></link>\x0a</absatz>\x0a\x0a<absatz><link ziel="http://www.line-information.de/"\x0azielfenster="_blank">\x0a<bild name="logo_line_information.gif" rahmen="no"/></link>\x0a</absatz>\x0a\x0a<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\x0a\x0a<absatz><link ziel="http://www.incognis.de/"\x0azielfenster="_blank"><bild\x0aname="logo_incognis.gif" rahmen="no"/></link></absatz>\x0a\x0a<absatz><link ziel="http://www.addcraft.com/"\x0azielfenster="_blank"><bild\x0aname="logo_addcraft.gif" rahmen="no"/></link></absatz>\x0a\x0a<absatz><link ziel="http://www.comendo.com/"\x0azielfenster="_blank"><bild\x0aname="logo_comendo.gif" rahmen="no"/></link></absatz>\x0a\x0a</inhalt>\x0a</seite>
 
5593
 1: seite
 
5594
 2: \x0a
 
5595
 3: seite
 
5596
 
 
5597
/^a/IF
 
5598
Capturing subpattern count = 0
 
5599
Options: anchored
 
5600
No first char
 
5601
No need char
 
5602
 
 
5603
/ End of testinput2 /
 
5604
Capturing subpattern count = 0
 
5605
No options
 
5606
First char = ' '
 
5607
Need char = ' '