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

Diff of /code/trunk/testdata/testoutput5

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

revision 190 by ph10, Thu Jul 19 10:38:20 2007 UTC revision 574 by ph10, Sat Nov 20 17:47:27 2010 UTC
# Line 1  Line 1 
1    /-- This set of tests checks the API, internals, and non-Perl stuff for UTF-8
2        support, excluding Unicode properties. --/
3    
4  /\x{100}/8DZ  /\x{100}/8DZ
5  ------------------------------------------------------------------  ------------------------------------------------------------------
6          Bra 0          Bra
7          \x{100}          \x{100}
8          Ket          Ket
9          End          End
# Line 12  Need char = 128 Line 15  Need char = 128
15    
16  /\x{1000}/8DZ  /\x{1000}/8DZ
17  ------------------------------------------------------------------  ------------------------------------------------------------------
18          Bra 0          Bra
19          \x{1000}          \x{1000}
20          Ket          Ket
21          End          End
# Line 24  Need char = 128 Line 27  Need char = 128
27    
28  /\x{10000}/8DZ  /\x{10000}/8DZ
29  ------------------------------------------------------------------  ------------------------------------------------------------------
30          Bra 0          Bra
31          \x{10000}          \x{10000}
32          Ket          Ket
33          End          End
# Line 36  Need char = 128 Line 39  Need char = 128
39    
40  /\x{100000}/8DZ  /\x{100000}/8DZ
41  ------------------------------------------------------------------  ------------------------------------------------------------------
42          Bra 0          Bra
43          \x{100000}          \x{100000}
44          Ket          Ket
45          End          End
# Line 48  Need char = 128 Line 51  Need char = 128
51    
52  /\x{1000000}/8DZ  /\x{1000000}/8DZ
53  ------------------------------------------------------------------  ------------------------------------------------------------------
54          Bra 0          Bra
55          \x{1000000}          \x{1000000}
56          Ket          Ket
57          End          End
# Line 60  Need char = 128 Line 63  Need char = 128
63    
64  /\x{4000000}/8DZ  /\x{4000000}/8DZ
65  ------------------------------------------------------------------  ------------------------------------------------------------------
66          Bra 0          Bra
67          \x{4000000}          \x{4000000}
68          Ket          Ket
69          End          End
# Line 72  Need char = 128 Line 75  Need char = 128
75    
76  /\x{7fffFFFF}/8DZ  /\x{7fffFFFF}/8DZ
77  ------------------------------------------------------------------  ------------------------------------------------------------------
78          Bra 0          Bra
79          \x{7fffffff}          \x{7fffffff}
80          Ket          Ket
81          End          End
# Line 84  Need char = 191 Line 87  Need char = 191
87    
88  /[\x{ff}]/8DZ  /[\x{ff}]/8DZ
89  ------------------------------------------------------------------  ------------------------------------------------------------------
90          Bra 0          Bra
91          \x{ff}          \x{ff}
92          Ket          Ket
93          End          End
# Line 96  Need char = 191 Line 99  Need char = 191
99    
100  /[\x{100}]/8DZ  /[\x{100}]/8DZ
101  ------------------------------------------------------------------  ------------------------------------------------------------------
102          Bra 0          Bra
103          [\x{100}]          [\x{100}]
104          Ket          Ket
105          End          End
# Line 118  Failed: character value in \x{...} seque Line 121  Failed: character value in \x{...} seque
121    
122  /\x80/8DZ  /\x80/8DZ
123  ------------------------------------------------------------------  ------------------------------------------------------------------
124          Bra 0          Bra
125          \x{80}          \x{80}
126          Ket          Ket
127          End          End
# Line 130  Need char = 128 Line 133  Need char = 128
133    
134  /\xff/8DZ  /\xff/8DZ
135  ------------------------------------------------------------------  ------------------------------------------------------------------
136          Bra 0          Bra
137          \x{ff}          \x{ff}
138          Ket          Ket
139          End          End
# Line 142  Need char = 191 Line 145  Need char = 191
145    
146  /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8  /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
147  ------------------------------------------------------------------  ------------------------------------------------------------------
148          Bra 0          Bra
149          A\x{2262}\x{391}.          A\x{2262}\x{391}.
150          Ket          Ket
151          End          End
# Line 156  Need char = '.' Line 159  Need char = '.'
159    
160  /\x{D55c}\x{ad6d}\x{C5B4}/DZ8  /\x{D55c}\x{ad6d}\x{C5B4}/DZ8
161  ------------------------------------------------------------------  ------------------------------------------------------------------
162          Bra 0          Bra
163          \x{d55c}\x{ad6d}\x{c5b4}          \x{d55c}\x{ad6d}\x{c5b4}
164          Ket          Ket
165          End          End
# Line 170  Need char = 180 Line 173  Need char = 180
173    
174  /\x{65e5}\x{672c}\x{8a9e}/DZ8  /\x{65e5}\x{672c}\x{8a9e}/DZ8
175  ------------------------------------------------------------------  ------------------------------------------------------------------
176          Bra 0          Bra
177          \x{65e5}\x{672c}\x{8a9e}          \x{65e5}\x{672c}\x{8a9e}
178          Ket          Ket
179          End          End
# Line 184  Need char = 158 Line 187  Need char = 158
187    
188  /\x{80}/DZ8  /\x{80}/DZ8
189  ------------------------------------------------------------------  ------------------------------------------------------------------
190          Bra 0          Bra
191          \x{80}          \x{80}
192          Ket          Ket
193          End          End
# Line 196  Need char = 128 Line 199  Need char = 128
199    
200  /\x{084}/DZ8  /\x{084}/DZ8
201  ------------------------------------------------------------------  ------------------------------------------------------------------
202          Bra 0          Bra
203          \x{84}          \x{84}
204          Ket          Ket
205          End          End
# Line 208  Need char = 132 Line 211  Need char = 132
211    
212  /\x{104}/DZ8  /\x{104}/DZ8
213  ------------------------------------------------------------------  ------------------------------------------------------------------
214          Bra 0          Bra
215          \x{104}          \x{104}
216          Ket          Ket
217          End          End
# Line 220  Need char = 132 Line 223  Need char = 132
223    
224  /\x{861}/DZ8  /\x{861}/DZ8
225  ------------------------------------------------------------------  ------------------------------------------------------------------
226          Bra 0          Bra
227          \x{861}          \x{861}
228          Ket          Ket
229          End          End
# Line 232  Need char = 161 Line 235  Need char = 161
235    
236  /\x{212ab}/DZ8  /\x{212ab}/DZ8
237  ------------------------------------------------------------------  ------------------------------------------------------------------
238          Bra 0          Bra
239          \x{212ab}          \x{212ab}
240          Ket          Ket
241          End          End
# Line 244  Need char = 171 Line 247  Need char = 171
247    
248  /.{3,5}X/DZ8  /.{3,5}X/DZ8
249  ------------------------------------------------------------------  ------------------------------------------------------------------
250          Bra 0          Bra
251          Any{3}          Any{3}
252          Any{0,2}          Any{0,2}
253          X          X
# Line 252  Need char = 171 Line 255  Need char = 171
255          End          End
256  ------------------------------------------------------------------  ------------------------------------------------------------------
257  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
258  Options: utf8  Options: utf8
259  No first char  No first char
260  Need char = 'X'  Need char = 'X'
# Line 262  Need char = 'X' Line 264  Need char = 'X'
264    
265  /.{3,5}?/DZ8  /.{3,5}?/DZ8
266  ------------------------------------------------------------------  ------------------------------------------------------------------
267          Bra 0          Bra
268          Any{3}          Any{3}
269          Any{0,2}?          Any{0,2}?
270          Ket          Ket
271          End          End
272  ------------------------------------------------------------------  ------------------------------------------------------------------
273  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
274  Options: utf8  Options: utf8
275  No first char  No first char
276  No need char  No need char
277      \x{212ab}\x{212ab}\x{212ab}\x{861}      \x{212ab}\x{212ab}\x{212ab}\x{861}
278   0: \x{212ab}\x{212ab}\x{212ab}   0: \x{212ab}\x{212ab}\x{212ab}
279    
 /-- These tests are here rather than in testinput4 because Perl 5.6 has some  
 problems with UTF-8 support, in the area of \x{..} where the value is < 255.  
 It grumbles about invalid UTF-8 strings. --/  
   
 /^[a\x{c0}]b/8  
     \x{c0}b  
  0: \x{c0}b  
   
 /^([a\x{c0}]*?)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aa  
  1: a\x{c0}  
   
 /^([a\x{c0}]*?)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aa  
  1: a\x{c0}  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}aa  
  1: a\x{c0}a\x{c0}  
   
 /^([a\x{c0}]*)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aaaa  
  1: a\x{c0}aa  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}aaa  
  1: a\x{c0}a\x{c0}a  
   
 /^([a\x{c0}]*)a\x{c0}/8  
     a\x{c0}aaaa/  
  0: a\x{c0}  
  1:  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}  
  1: a\x{c0}  
   
 /-- --/  
   
280  /(?<=\C)X/8  /(?<=\C)X/8
281  Failed: \C not allowed in lookbehind assertion at offset 6  Failed: \C not allowed in lookbehind assertion at offset 6
282    
# Line 331  can't tell the difference.) --/ Line 293  can't tell the difference.) --/
293   0: X\x{0a}abc   0: X\x{0a}abc
294   1: \x{0a}   1: \x{0a}
295   2: abc   2: abc
296    
297    /-- This one is here because Perl gives out a grumbly error message (quite
298    correctly, but that messes up comparisons). --/
299    
300    /a\Cb/8
301        *** Failers
302    No match
303        a\x{100}b
304    No match
305    
306  /^[ab]/8DZ  /^[ab]/8DZ
307  ------------------------------------------------------------------  ------------------------------------------------------------------
308          Bra 0          Bra
309          ^          ^
310          [ab]          [ab]
311          Ket          Ket
# Line 357  No match Line 328  No match
328    
329  /^[^ab]/8DZ  /^[^ab]/8DZ
330  ------------------------------------------------------------------  ------------------------------------------------------------------
331          Bra 0          Bra
332          ^          ^
333          [\x00-`c-\xff] (neg)          [\x00-`c-\xff] (neg)
334          Ket          Ket
# Line 380  No match Line 351  No match
351    
352  /[^ab\xC0-\xF0]/8SDZ  /[^ab\xC0-\xF0]/8SDZ
353  ------------------------------------------------------------------  ------------------------------------------------------------------
354          Bra 0          Bra
355          [\x00-`c-\xbf\xf1-\xff] (neg)          [\x00-`c-\xbf\xf1-\xff] (neg)
356          Ket          Ket
357          End          End
# Line 389  Capturing subpattern count = 0 Line 360  Capturing subpattern count = 0
360  Options: utf8  Options: utf8
361  No first char  No first char
362  No need char  No need char
363    Subject length lower bound = 1
364  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
365    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
366    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
# Line 416  No match Line 388  No match
388    
389  /Ā{3,4}/8SDZ  /Ā{3,4}/8SDZ
390  ------------------------------------------------------------------  ------------------------------------------------------------------
391          Bra 0          Bra
392          \x{100}{3}          \x{100}{3}
393          \x{100}?          \x{100}?
394          Ket          Ket
395          End          End
396  ------------------------------------------------------------------  ------------------------------------------------------------------
397  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
398  Options: utf8  Options: utf8
399  First char = 196  First char = 196
400  Need char = 128  Need char = 128
401  Study returned NULL  Subject length lower bound = 3
402    No set of starting bytes
403    \x{100}\x{100}\x{100}\x{100\x{100}    \x{100}\x{100}\x{100}\x{100\x{100}
404   0: \x{100}\x{100}\x{100}   0: \x{100}\x{100}\x{100}
405    
406  /(\x{100}+|x)/8SDZ  /(\x{100}+|x)/8SDZ
407  ------------------------------------------------------------------  ------------------------------------------------------------------
408          Bra 0          Bra
409          Bra 1          CBra 1
410          \x{100}+          \x{100}+
411          Alt          Alt
412          x          x
# Line 443  Study returned NULL Line 415  Study returned NULL
415          End          End
416  ------------------------------------------------------------------  ------------------------------------------------------------------
417  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
418  Options: utf8  Options: utf8
419  No first char  No first char
420  No need char  No need char
421    Subject length lower bound = 1
422  Starting byte set: x \xc4  Starting byte set: x \xc4
423    
424  /(\x{100}*a|x)/8SDZ  /(\x{100}*a|x)/8SDZ
425  ------------------------------------------------------------------  ------------------------------------------------------------------
426          Bra 0          Bra
427          Bra 1          CBra 1
428          \x{100}*+          \x{100}*+
429          a          a
430          Alt          Alt
# Line 462  Starting byte set: x \xc4 Line 434  Starting byte set: x \xc4
434          End          End
435  ------------------------------------------------------------------  ------------------------------------------------------------------
436  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
437  Options: utf8  Options: utf8
438  No first char  No first char
439  No need char  No need char
440    Subject length lower bound = 1
441  Starting byte set: a x \xc4  Starting byte set: a x \xc4
442    
443  /(\x{100}{0,2}a|x)/8SDZ  /(\x{100}{0,2}a|x)/8SDZ
444  ------------------------------------------------------------------  ------------------------------------------------------------------
445          Bra 0          Bra
446          Bra 1          CBra 1
447          \x{100}{0,2}          \x{100}{0,2}
448          a          a
449          Alt          Alt
# Line 481  Starting byte set: a x \xc4 Line 453  Starting byte set: a x \xc4
453          End          End
454  ------------------------------------------------------------------  ------------------------------------------------------------------
455  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
456  Options: utf8  Options: utf8
457  No first char  No first char
458  No need char  No need char
459    Subject length lower bound = 1
460  Starting byte set: a x \xc4  Starting byte set: a x \xc4
461    
462  /(\x{100}{1,2}a|x)/8SDZ  /(\x{100}{1,2}a|x)/8SDZ
463  ------------------------------------------------------------------  ------------------------------------------------------------------
464          Bra 0          Bra
465          Bra 1          CBra 1
466          \x{100}          \x{100}
467          \x{100}{0,1}          \x{100}{0,1}
468          a          a
# Line 501  Starting byte set: a x \xc4 Line 473  Starting byte set: a x \xc4
473          End          End
474  ------------------------------------------------------------------  ------------------------------------------------------------------
475  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
476  Options: utf8  Options: utf8
477  No first char  No first char
478  No need char  No need char
479    Subject length lower bound = 1
480  Starting byte set: x \xc4  Starting byte set: x \xc4
481    
482  /\x{100}*(\d+|"(?1)")/8  /\x{100}*(\d+|"(?1)")/8
# Line 533  No match Line 505  No match
505    
506  /\x{100}/8DZ  /\x{100}/8DZ
507  ------------------------------------------------------------------  ------------------------------------------------------------------
508          Bra 0          Bra
509          \x{100}          \x{100}
510          Ket          Ket
511          End          End
# Line 545  Need char = 128 Line 517  Need char = 128
517    
518  /\x{100}*/8DZ  /\x{100}*/8DZ
519  ------------------------------------------------------------------  ------------------------------------------------------------------
520          Bra 0          Bra
521          \x{100}*          \x{100}*
522          Ket          Ket
523          End          End
524  ------------------------------------------------------------------  ------------------------------------------------------------------
525  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
526  Options: utf8  Options: utf8
527  No first char  No first char
528  No need char  No need char
529    
530  /a\x{100}*/8DZ  /a\x{100}*/8DZ
531  ------------------------------------------------------------------  ------------------------------------------------------------------
532          Bra 0          Bra
533          a          a
534          \x{100}*          \x{100}*
535          Ket          Ket
536          End          End
537  ------------------------------------------------------------------  ------------------------------------------------------------------
538  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
539  Options: utf8  Options: utf8
540  First char = 'a'  First char = 'a'
541  No need char  No need char
542    
543  /ab\x{100}*/8DZ  /ab\x{100}*/8DZ
544  ------------------------------------------------------------------  ------------------------------------------------------------------
545          Bra 0          Bra
546          ab          ab
547          \x{100}*          \x{100}*
548          Ket          Ket
549          End          End
550  ------------------------------------------------------------------  ------------------------------------------------------------------
551  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
552  Options: utf8  Options: utf8
553  First char = 'a'  First char = 'a'
554  Need char = 'b'  Need char = 'b'
555    
556  /a\x{100}\x{101}*/8DZ  /a\x{100}\x{101}*/8DZ
557  ------------------------------------------------------------------  ------------------------------------------------------------------
558          Bra 0          Bra
559          a\x{100}          a\x{100}
560          \x{101}*          \x{101}*
561          Ket          Ket
562          End          End
563  ------------------------------------------------------------------  ------------------------------------------------------------------
564  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
565  Options: utf8  Options: utf8
566  First char = 'a'  First char = 'a'
567  Need char = 128  Need char = 128
568    
569  /a\x{100}\x{101}+/8DZ  /a\x{100}\x{101}+/8DZ
570  ------------------------------------------------------------------  ------------------------------------------------------------------
571          Bra 0          Bra
572          a\x{100}          a\x{100}
573          \x{101}+          \x{101}+
574          Ket          Ket
575          End          End
576  ------------------------------------------------------------------  ------------------------------------------------------------------
577  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
578  Options: utf8  Options: utf8
579  First char = 'a'  First char = 'a'
580  Need char = 129  Need char = 129
581    
582  /\x{100}*A/8DZ  /\x{100}*A/8DZ
583  ------------------------------------------------------------------  ------------------------------------------------------------------
584          Bra 0          Bra
585          \x{100}*+          \x{100}*+
586          A          A
587          Ket          Ket
588          End          End
589  ------------------------------------------------------------------  ------------------------------------------------------------------
590  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
591  Options: utf8  Options: utf8
592  No first char  No first char
593  Need char = 'A'  Need char = 'A'
# Line 630  Need char = 'A' Line 596  Need char = 'A'
596    
597  /\x{100}*\d(?R)/8DZ  /\x{100}*\d(?R)/8DZ
598  ------------------------------------------------------------------  ------------------------------------------------------------------
599          Bra 0          Bra
600          \x{100}*+          \x{100}*+
601          \d          \d
602          Once          Once
# Line 640  Need char = 'A' Line 606  Need char = 'A'
606          End          End
607  ------------------------------------------------------------------  ------------------------------------------------------------------
608  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
609  Options: utf8  Options: utf8
610  No first char  No first char
611  No need char  No need char
612    
613  /[^\x{c4}]/DZ  /[^\x{c4}]/DZ
614  ------------------------------------------------------------------  ------------------------------------------------------------------
615          Bra 0          Bra
616          [^\xc4]          [^\xc4]
617          Ket          Ket
618          End          End
# Line 659  No need char Line 624  No need char
624    
625  /[^\x{c4}]/8DZ  /[^\x{c4}]/8DZ
626  ------------------------------------------------------------------  ------------------------------------------------------------------
627          Bra 0          Bra
628          [\x00-\xc3\xc5-\xff] (neg)          [\x00-\xc3\xc5-\xff] (neg)
629          Ket          Ket
630          End          End
# Line 671  No need char Line 636  No need char
636    
637  /[\x{100}]/8DZ  /[\x{100}]/8DZ
638  ------------------------------------------------------------------  ------------------------------------------------------------------
639          Bra 0          Bra
640          [\x{100}]          [\x{100}]
641          Ket          Ket
642          End          End
# Line 691  No match Line 656  No match
656    
657  /[Z\x{100}]/8DZ  /[Z\x{100}]/8DZ
658  ------------------------------------------------------------------  ------------------------------------------------------------------
659          Bra 0          Bra
660          [Z\x{100}]          [Z\x{100}]
661          Ket          Ket
662          End          End
# Line 726  No match Line 691  No match
691    
692  /[z-\x{100}]/8DZ  /[z-\x{100}]/8DZ
693  ------------------------------------------------------------------  ------------------------------------------------------------------
694          Bra 0          Bra
695          [z-\x{100}]          [z-\x{100}]
696          Ket          Ket
697          End          End
# Line 738  No need char Line 703  No need char
703    
704  /[z\Qa-d]Ā\E]/8DZ  /[z\Qa-d]Ā\E]/8DZ
705  ------------------------------------------------------------------  ------------------------------------------------------------------
706          Bra 0          Bra
707          [\-\]adz\x{100}]          [\-\]adz\x{100}]
708          Ket          Ket
709          End          End
# Line 754  No need char Line 719  No need char
719    
720  /[\xFF]/DZ  /[\xFF]/DZ
721  ------------------------------------------------------------------  ------------------------------------------------------------------
722          Bra 0          Bra
723          \xff          \xff
724          Ket          Ket
725          End          End
# Line 768  No need char Line 733  No need char
733    
734  /[\xff]/DZ8  /[\xff]/DZ8
735  ------------------------------------------------------------------  ------------------------------------------------------------------
736          Bra 0          Bra
737          \x{ff}          \x{ff}
738          Ket          Ket
739          End          End
# Line 782  Need char = 191 Line 747  Need char = 191
747    
748  /[^\xFF]/DZ  /[^\xFF]/DZ
749  ------------------------------------------------------------------  ------------------------------------------------------------------
750          Bra 0          Bra
751          [^\xff]          [^\xff]
752          Ket          Ket
753          End          End
# Line 794  No need char Line 759  No need char
759    
760  /[^\xff]/8DZ  /[^\xff]/8DZ
761  ------------------------------------------------------------------  ------------------------------------------------------------------
762          Bra 0          Bra
763          [\x00-\xfe] (neg)          [\x00-\xfe] (neg)
764          Ket          Ket
765          End          End
# Line 832  No need char Line 797  No need char
797  Failed: invalid UTF-8 string at offset 2  Failed: invalid UTF-8 string at offset 2
798    
799  //8  //8
800  Failed: invalid UTF-8 string at offset 0  Failed: invalid UTF-8 string at offset 1
801    
802  /xxx/8  /xxx/8
803  Failed: invalid UTF-8 string at offset 1  Failed: invalid UTF-8 string at offset 1
804    
805  /xxx/8?DZ  /xxx/8?DZ
806  ------------------------------------------------------------------  ------------------------------------------------------------------
807          Bra 0          Bra
808          \X{c0}\X{c0}\X{c0}xxx          \X{c0}\X{c0}\X{c0}xxx
809          Ket          Ket
810          End          End
# Line 858  Error -10 Line 823  Error -10
823  Error -10  Error -10
824      \?      \?
825  No match  No match
826        \xe1\x88
827    Error -10
828        \P\xe1\x88
829    Error -10
830        \P\P\xe1\x88
831    Error -25
832    
833  /anything/8  /anything/8
834      \xc0\x80      \xc0\x80
# Line 887  No match Line 858  No match
858      \xf1\x8f\x80\x80      \xf1\x8f\x80\x80
859  No match  No match
860      \xf8\x88\x80\x80\x80      \xf8\x88\x80\x80\x80
861  No match  Error -10
862      \xf9\x87\x80\x80\x80      \xf9\x87\x80\x80\x80
863  No match  Error -10
864      \xfc\x84\x80\x80\x80\x80      \xfc\x84\x80\x80\x80\x80
865  No match  Error -10
866      \xfd\x83\x80\x80\x80\x80      \xfd\x83\x80\x80\x80\x80
867    Error -10
868        \?\xf8\x88\x80\x80\x80
869    No match
870        \?\xf9\x87\x80\x80\x80
871    No match
872        \?\xfc\x84\x80\x80\x80\x80
873    No match
874        \?\xfd\x83\x80\x80\x80\x80
875  No match  No match
876    
877  /\x{100}abc(xyz(?1))/8DZ  /\x{100}abc(xyz(?1))/8DZ
878  ------------------------------------------------------------------  ------------------------------------------------------------------
879          Bra 0          Bra
880          \x{100}abc          \x{100}abc
881          Bra 1          CBra 1
882          xyz          xyz
883          Once          Once
884          Recurse          Recurse
# Line 915  Need char = 'z' Line 894  Need char = 'z'
894    
895  /[^\x{100}]abc(xyz(?1))/8DZ  /[^\x{100}]abc(xyz(?1))/8DZ
896  ------------------------------------------------------------------  ------------------------------------------------------------------
897          Bra 0          Bra
898          [^\x{100}]          [^\x{100}]
899          abc          abc
900          Bra 1          CBra 1
901          xyz          xyz
902          Once          Once
903          Recurse          Recurse
# Line 934  Need char = 'z' Line 913  Need char = 'z'
913    
914  /[ab\x{100}]abc(xyz(?1))/8DZ  /[ab\x{100}]abc(xyz(?1))/8DZ
915  ------------------------------------------------------------------  ------------------------------------------------------------------
916          Bra 0          Bra
917          [ab\x{100}]          [ab\x{100}]
918          abc          abc
919          Bra 1          CBra 1
920          xyz          xyz
921          Once          Once
922          Recurse          Recurse
# Line 953  Need char = 'z' Line 932  Need char = 'z'
932    
933  /(\x{100}(b(?2)c))?/DZ8  /(\x{100}(b(?2)c))?/DZ8
934  ------------------------------------------------------------------  ------------------------------------------------------------------
935          Bra 0          Bra
936          Brazero          Brazero
937          Bra 1          CBra 1
938          \x{100}          \x{100}
939          Bra 2          CBra 2
940          b          b
941          Once          Once
942          Recurse          Recurse
# Line 975  No need char Line 954  No need char
954    
955  /(\x{100}(b(?2)c)){0,2}/DZ8  /(\x{100}(b(?2)c)){0,2}/DZ8
956  ------------------------------------------------------------------  ------------------------------------------------------------------
957          Bra 0          Bra
958          Brazero          Brazero
959          Bra 0          Bra
960          Bra 1          CBra 1
961          \x{100}          \x{100}
962          Bra 2          CBra 2
963          b          b
964          Once          Once
965          Recurse          Recurse
# Line 989  No need char Line 968  No need char
968          Ket          Ket
969          Ket          Ket
970          Brazero          Brazero
971          Bra 1          CBra 1
972          \x{100}          \x{100}
973          Bra 2          CBra 2
974          b          b
975          Once          Once
976          Recurse          Recurse
# Line 1010  No need char Line 989  No need char
989    
990  /(\x{100}(b(?1)c))?/DZ8  /(\x{100}(b(?1)c))?/DZ8
991  ------------------------------------------------------------------  ------------------------------------------------------------------
992          Bra 0          Bra
993          Brazero          Brazero
994          Bra 1          CBra 1
995          \x{100}          \x{100}
996          Bra 2          CBra 2
997          b          b
998          Once          Once
999          Recurse          Recurse
# Line 1032  No need char Line 1011  No need char
1011    
1012  /(\x{100}(b(?1)c)){0,2}/DZ8  /(\x{100}(b(?1)c)){0,2}/DZ8
1013  ------------------------------------------------------------------  ------------------------------------------------------------------
1014          Bra 0          Bra
1015          Brazero          Brazero
1016          Bra 0          Bra
1017          Bra 1          CBra 1
1018          \x{100}          \x{100}
1019          Bra 2          CBra 2
1020          b          b
1021          Once          Once
1022          Recurse          Recurse
# Line 1046  No need char Line 1025  No need char
1025          Ket          Ket
1026          Ket          Ket
1027          Brazero          Brazero
1028          Bra 1          CBra 1
1029          \x{100}          \x{100}
1030          Bra 2          CBra 2
1031          b          b
1032          Once          Once
1033          Recurse          Recurse
# Line 1081  No need char Line 1060  No need char
1060    
1061  /^\ሴ/8DZ  /^\ሴ/8DZ
1062  ------------------------------------------------------------------  ------------------------------------------------------------------
1063          Bra 0          Bra
1064          ^          ^
1065          \x{1234}          \x{1234}
1066          Ket          Ket
# Line 1107  Need char = 191 Line 1086  Need char = 191
1086    
1087  /\x{100}*\d/8DZ  /\x{100}*\d/8DZ
1088  ------------------------------------------------------------------  ------------------------------------------------------------------
1089          Bra 0          Bra
1090          \x{100}*+          \x{100}*+
1091          \d          \d
1092          Ket          Ket
1093          End          End
1094  ------------------------------------------------------------------  ------------------------------------------------------------------
1095  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1096  Options: utf8  Options: utf8
1097  No first char  No first char
1098  No need char  No need char
1099    
1100  /\x{100}*\s/8DZ  /\x{100}*\s/8DZ
1101  ------------------------------------------------------------------  ------------------------------------------------------------------
1102          Bra 0          Bra
1103          \x{100}*+          \x{100}*+
1104          \s          \s
1105          Ket          Ket
1106          End          End
1107  ------------------------------------------------------------------  ------------------------------------------------------------------
1108  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1109  Options: utf8  Options: utf8
1110  No first char  No first char
1111  No need char  No need char
1112    
1113  /\x{100}*\w/8DZ  /\x{100}*\w/8DZ
1114  ------------------------------------------------------------------  ------------------------------------------------------------------
1115          Bra 0          Bra
1116          \x{100}*+          \x{100}*+
1117          \w          \w
1118          Ket          Ket
1119          End          End
1120  ------------------------------------------------------------------  ------------------------------------------------------------------
1121  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1122  Options: utf8  Options: utf8
1123  No first char  No first char
1124  No need char  No need char
1125    
1126  /\x{100}*\D/8DZ  /\x{100}*\D/8DZ
1127  ------------------------------------------------------------------  ------------------------------------------------------------------
1128          Bra 0          Bra
1129          \x{100}*          \x{100}*
1130          \D          \D
1131          Ket          Ket
1132          End          End
1133  ------------------------------------------------------------------  ------------------------------------------------------------------
1134  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1135  Options: utf8  Options: utf8
1136  No first char  No first char
1137  No need char  No need char
1138    
1139  /\x{100}*\S/8DZ  /\x{100}*\S/8DZ
1140  ------------------------------------------------------------------  ------------------------------------------------------------------
1141          Bra 0          Bra
1142          \x{100}*          \x{100}*
1143          \S          \S
1144          Ket          Ket
1145          End          End
1146  ------------------------------------------------------------------  ------------------------------------------------------------------
1147  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1148  Options: utf8  Options: utf8
1149  No first char  No first char
1150  No need char  No need char
1151    
1152  /\x{100}*\W/8DZ  /\x{100}*\W/8DZ
1153  ------------------------------------------------------------------  ------------------------------------------------------------------
1154          Bra 0          Bra
1155          \x{100}*          \x{100}*
1156          \W          \W
1157          Ket          Ket
1158          End          End
1159  ------------------------------------------------------------------  ------------------------------------------------------------------
1160  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1161  Options: utf8  Options: utf8
1162  No first char  No first char
1163  No need char  No need char
1164    
1165  /\x{100}+\x{200}/8DZ  /\x{100}+\x{200}/8DZ
1166  ------------------------------------------------------------------  ------------------------------------------------------------------
1167          Bra 0          Bra
1168          \x{100}++          \x{100}++
1169          \x{200}          \x{200}
1170          Ket          Ket
1171          End          End
1172  ------------------------------------------------------------------  ------------------------------------------------------------------
1173  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1174  Options: utf8  Options: utf8
1175  First char = 196  First char = 196
1176  Need char = 128  Need char = 128
1177    
1178  /\x{100}+X/8DZ  /\x{100}+X/8DZ
1179  ------------------------------------------------------------------  ------------------------------------------------------------------
1180          Bra 0          Bra
1181          \x{100}++          \x{100}++
1182          X          X
1183          Ket          Ket
1184          End          End
1185  ------------------------------------------------------------------  ------------------------------------------------------------------
1186  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1187  Options: utf8  Options: utf8
1188  First char = 196  First char = 196
1189  Need char = 'X'  Need char = 'X'
1190    
1191  /X+\x{200}/8DZ  /X+\x{200}/8DZ
1192  ------------------------------------------------------------------  ------------------------------------------------------------------
1193          Bra 0          Bra
1194          X++          X++
1195          \x{200}          \x{200}
1196          Ket          Ket
1197          End          End
1198  ------------------------------------------------------------------  ------------------------------------------------------------------
1199  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1200  Options: utf8  Options: utf8
1201  First char = 'X'  First char = 'X'
1202  Need char = 128  Need char = 128
# Line 1256  Matched, but too many substrings Line 1226  Matched, but too many substrings
1226    
1227  /^[\x{100}\E-\Q\E\x{150}]/BZ8  /^[\x{100}\E-\Q\E\x{150}]/BZ8
1228  ------------------------------------------------------------------  ------------------------------------------------------------------
1229          Bra 0          Bra
1230          ^          ^
1231          [\x{100}-\x{150}]          [\x{100}-\x{150}]
1232          Ket          Ket
# Line 1265  Matched, but too many substrings Line 1235  Matched, but too many substrings
1235    
1236  /^[\QĀ\E-\QŐ\E]/BZ8  /^[\QĀ\E-\QŐ\E]/BZ8
1237  ------------------------------------------------------------------  ------------------------------------------------------------------
1238          Bra 0          Bra
1239          ^          ^
1240          [\x{100}-\x{150}]          [\x{100}-\x{150}]
1241          Ket          Ket
# Line 1299  Failed: missing terminating ] for charac Line 1269  Failed: missing terminating ] for charac
1269   0: abc8   0: abc8
1270   0: abc9   0: abc9
1271    
1272  /^a\Rb/8  /^a\Rb/8<bsr_unicode>
1273      a\nb      a\nb
1274   0: a\x{0a}b   0: a\x{0a}b
1275      a\rb      a\rb
# Line 1321  No match Line 1291  No match
1291      a\n\rb      a\n\rb
1292  No match  No match
1293    
1294  /^a\R*b/8  /^a\R*b/8<bsr_unicode>
1295      ab      ab
1296   0: ab   0: ab
1297      a\nb      a\nb
# Line 1341  No match Line 1311  No match
1311      a\n\r\x{85}\x0cb      a\n\r\x{85}\x0cb
1312   0: a\x{0a}\x{0d}\x{85}\x{0c}b   0: a\x{0a}\x{0d}\x{85}\x{0c}b
1313    
1314  /^a\R+b/8  /^a\R+b/8<bsr_unicode>
1315      a\nb      a\nb
1316   0: a\x{0a}b   0: a\x{0a}b
1317      a\rb      a\rb
# Line 1363  No match Line 1333  No match
1333      ab      ab
1334  No match  No match
1335    
1336  /^a\R{1,3}b/8  /^a\R{1,3}b/8<bsr_unicode>
1337      a\nb      a\nb
1338   0: a\x{0a}b   0: a\x{0a}b
1339      a\n\rb      a\n\rb
# Line 1431  No match Line 1401  No match
1401    
1402  /[\h]/8BZ  /[\h]/8BZ
1403  ------------------------------------------------------------------  ------------------------------------------------------------------
1404          Bra 0          Bra
1405          [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]          [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
1406          Ket          Ket
1407          End          End
# Line 1441  No match Line 1411  No match
1411    
1412  /[\h]{3,}/8BZ  /[\h]{3,}/8BZ
1413  ------------------------------------------------------------------  ------------------------------------------------------------------
1414          Bra 0          Bra
1415          [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}          [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}
1416          Ket          Ket
1417          End          End
# Line 1451  No match Line 1421  No match
1421    
1422  /[\v]/8BZ  /[\v]/8BZ
1423  ------------------------------------------------------------------  ------------------------------------------------------------------
1424          Bra 0          Bra
1425          [\x0a-\x0d\x85\x{2028}-\x{2029}]          [\x0a-\x0d\x85\x{2028}-\x{2029}]
1426          Ket          Ket
1427          End          End
# Line 1459  No match Line 1429  No match
1429    
1430  /[\H]/8BZ  /[\H]/8BZ
1431  ------------------------------------------------------------------  ------------------------------------------------------------------
1432          Bra 0          Bra
1433          [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{7fffffff}]          [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{7fffffff}]
1434          Ket          Ket
1435          End          End
# Line 1467  No match Line 1437  No match
1437    
1438  /[\V]/8BZ  /[\V]/8BZ
1439  ------------------------------------------------------------------  ------------------------------------------------------------------
1440          Bra 0          Bra
1441          [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{2029}-\x{7fffffff}]          [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{2029}-\x{7fffffff}]
1442          Ket          Ket
1443          End          End
# Line 1476  No match Line 1446  No match
1446  /.*$/8<any>  /.*$/8<any>
1447      \x{1ec5}      \x{1ec5}
1448   0: \x{1ec5}   0: \x{1ec5}
1449    
1450    /-- This tests the stricter UTF-8 check according to RFC 3629. --/
1451    
1452    /X/8
1453        \x{0}\x{d7ff}\x{e000}\x{10ffff}
1454    No match
1455        \x{d800}
1456    Error -10
1457        \x{d800}\?
1458    No match
1459        \x{da00}
1460    Error -10
1461        \x{da00}\?
1462    No match
1463        \x{dfff}
1464    Error -10
1465        \x{dfff}\?
1466    No match
1467        \x{110000}
1468    Error -10
1469        \x{110000}\?
1470    No match
1471        \x{2000000}
1472    Error -10
1473        \x{2000000}\?
1474    No match
1475        \x{7fffffff}
1476    Error -10
1477        \x{7fffffff}\?
1478    No match
1479    
1480    /a\Rb/I8<bsr_anycrlf>
1481    Capturing subpattern count = 0
1482    Options: bsr_anycrlf utf8
1483    First char = 'a'
1484    Need char = 'b'
1485        a\rb
1486     0: a\x{0d}b
1487        a\nb
1488     0: a\x{0a}b
1489        a\r\nb
1490     0: a\x{0d}\x{0a}b
1491        ** Failers
1492    No match
1493        a\x{85}b
1494    No match
1495        a\x0bb
1496    No match
1497    
1498    /a\Rb/I8<bsr_unicode>
1499    Capturing subpattern count = 0
1500    Options: bsr_unicode utf8
1501    First char = 'a'
1502    Need char = 'b'
1503        a\rb
1504     0: a\x{0d}b
1505        a\nb
1506     0: a\x{0a}b
1507        a\r\nb
1508     0: a\x{0d}\x{0a}b
1509        a\x{85}b
1510     0: a\x{85}b
1511        a\x0bb
1512     0: a\x{0b}b
1513        ** Failers
1514    No match
1515        a\x{85}b\<bsr_anycrlf>
1516    No match
1517        a\x0bb\<bsr_anycrlf>
1518    No match
1519    
1520    /a\R?b/I8<bsr_anycrlf>
1521    Capturing subpattern count = 0
1522    Options: bsr_anycrlf utf8
1523    First char = 'a'
1524    Need char = 'b'
1525        a\rb
1526     0: a\x{0d}b
1527        a\nb
1528     0: a\x{0a}b
1529        a\r\nb
1530     0: a\x{0d}\x{0a}b
1531        ** Failers
1532    No match
1533        a\x{85}b
1534    No match
1535        a\x0bb
1536    No match
1537    
1538    /a\R?b/I8<bsr_unicode>
1539    Capturing subpattern count = 0
1540    Options: bsr_unicode utf8
1541    First char = 'a'
1542    Need char = 'b'
1543        a\rb
1544     0: a\x{0d}b
1545        a\nb
1546     0: a\x{0a}b
1547        a\r\nb
1548     0: a\x{0d}\x{0a}b
1549        a\x{85}b
1550     0: a\x{85}b
1551        a\x0bb
1552     0: a\x{0b}b
1553        ** Failers
1554    No match
1555        a\x{85}b\<bsr_anycrlf>
1556    No match
1557        a\x0bb\<bsr_anycrlf>
1558    No match
1559    
1560    /.*a.*=.b.*/8<ANY>
1561        QQQ\x{2029}ABCaXYZ=!bPQR
1562     0: ABCaXYZ=!bPQR
1563        ** Failers
1564    No match
1565        a\x{2029}b
1566    No match
1567        \x61\xe2\x80\xa9\x62
1568    No match
1569    
1570    /[[:a\x{100}b:]]/8
1571    Failed: unknown POSIX class name at offset 3
1572    
1573    /a[^]b/<JS>8
1574        a\x{1234}b
1575     0: a\x{1234}b
1576        a\nb
1577     0: a\x{0a}b
1578        ** Failers
1579    No match
1580        ab
1581    No match
1582    
1583    /a[^]+b/<JS>8
1584        aXb
1585     0: aXb
1586        a\nX\nX\x{1234}b
1587     0: a\x{0a}X\x{0a}X\x{1234}b
1588        ** Failers
1589    No match
1590        ab
1591    No match
1592    
1593    /(\x{de})\1/
1594        \x{de}\x{de}
1595     0: \xde\xde
1596     1: \xde
1597        \x{123}
1598    ** Character \x{123} is greater than 255 and UTF-8 mode is not enabled.
1599    ** Truncation will probably give the wrong result.
1600    No match
1601    
1602    /X/8f<any>
1603        A\x{1ec5}ABCXYZ
1604     0: X
1605    
1606    /(*UTF8)\x{1234}/
1607      abcd\x{1234}pqr
1608     0: \x{1234}
1609    
1610    /(*CRLF)(*UTF8)(*BSR_UNICODE)a\Rb/I
1611    Capturing subpattern count = 0
1612    Options: bsr_unicode utf8
1613    Forced newline sequence: CRLF
1614    First char = 'a'
1615    Need char = 'b'
1616    
1617    /Xa{2,4}b/8
1618        X\P
1619    Partial match: X
1620        Xa\P
1621    Partial match: Xa
1622        Xaa\P
1623    Partial match: Xaa
1624        Xaaa\P
1625    Partial match: Xaaa
1626        Xaaaa\P
1627    Partial match: Xaaaa
1628    
1629    /Xa{2,4}?b/8
1630        X\P
1631    Partial match: X
1632        Xa\P
1633    Partial match: Xa
1634        Xaa\P
1635    Partial match: Xaa
1636        Xaaa\P
1637    Partial match: Xaaa
1638        Xaaaa\P
1639    Partial match: Xaaaa
1640    
1641    /Xa{2,4}+b/8
1642        X\P
1643    Partial match: X
1644        Xa\P
1645    Partial match: Xa
1646        Xaa\P
1647    Partial match: Xaa
1648        Xaaa\P
1649    Partial match: Xaaa
1650        Xaaaa\P
1651    Partial match: Xaaaa
1652    
1653    /X\x{123}{2,4}b/8
1654        X\P
1655    Partial match: X
1656        X\x{123}\P
1657    Partial match: X\x{123}
1658        X\x{123}\x{123}\P
1659    Partial match: X\x{123}\x{123}
1660        X\x{123}\x{123}\x{123}\P
1661    Partial match: X\x{123}\x{123}\x{123}
1662        X\x{123}\x{123}\x{123}\x{123}\P
1663    Partial match: X\x{123}\x{123}\x{123}\x{123}
1664    
1665    /X\x{123}{2,4}?b/8
1666        X\P
1667    Partial match: X
1668        X\x{123}\P
1669    Partial match: X\x{123}
1670        X\x{123}\x{123}\P
1671    Partial match: X\x{123}\x{123}
1672        X\x{123}\x{123}\x{123}\P
1673    Partial match: X\x{123}\x{123}\x{123}
1674        X\x{123}\x{123}\x{123}\x{123}\P
1675    Partial match: X\x{123}\x{123}\x{123}\x{123}
1676    
1677    /X\x{123}{2,4}+b/8
1678        X\P
1679    Partial match: X
1680        X\x{123}\P
1681    Partial match: X\x{123}
1682        X\x{123}\x{123}\P
1683    Partial match: X\x{123}\x{123}
1684        X\x{123}\x{123}\x{123}\P
1685    Partial match: X\x{123}\x{123}\x{123}
1686        X\x{123}\x{123}\x{123}\x{123}\P
1687    Partial match: X\x{123}\x{123}\x{123}\x{123}
1688    
1689    /X\x{123}{2,4}b/8
1690        Xx\P
1691    No match
1692        X\x{123}x\P
1693    No match
1694        X\x{123}\x{123}x\P
1695    No match
1696        X\x{123}\x{123}\x{123}x\P
1697    No match
1698        X\x{123}\x{123}\x{123}\x{123}x\P
1699    No match
1700    
1701    /X\x{123}{2,4}?b/8
1702        Xx\P
1703    No match
1704        X\x{123}x\P
1705    No match
1706        X\x{123}\x{123}x\P
1707    No match
1708        X\x{123}\x{123}\x{123}x\P
1709    No match
1710        X\x{123}\x{123}\x{123}\x{123}x\P
1711    No match
1712    
1713    /X\x{123}{2,4}+b/8
1714        Xx\P
1715    No match
1716        X\x{123}x\P
1717    No match
1718        X\x{123}\x{123}x\P
1719    No match
1720        X\x{123}\x{123}\x{123}x\P
1721    No match
1722        X\x{123}\x{123}\x{123}\x{123}x\P
1723    No match
1724    
1725    /X\d{2,4}b/8
1726        X\P
1727    Partial match: X
1728        X3\P
1729    Partial match: X3
1730        X33\P
1731    Partial match: X33
1732        X333\P
1733    Partial match: X333
1734        X3333\P
1735    Partial match: X3333
1736    
1737    /X\d{2,4}?b/8
1738        X\P
1739    Partial match: X
1740        X3\P
1741    Partial match: X3
1742        X33\P
1743    Partial match: X33
1744        X333\P
1745    Partial match: X333
1746        X3333\P
1747    Partial match: X3333
1748    
1749    /X\d{2,4}+b/8
1750        X\P
1751    Partial match: X
1752        X3\P
1753    Partial match: X3
1754        X33\P
1755    Partial match: X33
1756        X333\P
1757    Partial match: X333
1758        X3333\P
1759    Partial match: X3333
1760    
1761    /X\D{2,4}b/8
1762        X\P
1763    Partial match: X
1764        Xa\P
1765    Partial match: Xa
1766        Xaa\P
1767    Partial match: Xaa
1768        Xaaa\P
1769    Partial match: Xaaa
1770        Xaaaa\P
1771    Partial match: Xaaaa
1772    
1773    /X\D{2,4}?b/8
1774        X\P
1775    Partial match: X
1776        Xa\P
1777    Partial match: Xa
1778        Xaa\P
1779    Partial match: Xaa
1780        Xaaa\P
1781    Partial match: Xaaa
1782        Xaaaa\P
1783    Partial match: Xaaaa
1784    
1785    /X\D{2,4}+b/8
1786        X\P
1787    Partial match: X
1788        Xa\P
1789    Partial match: Xa
1790        Xaa\P
1791    Partial match: Xaa
1792        Xaaa\P
1793    Partial match: Xaaa
1794        Xaaaa\P
1795    Partial match: Xaaaa
1796    
1797    /X\D{2,4}b/8
1798        X\P
1799    Partial match: X
1800        X\x{123}\P
1801    Partial match: X\x{123}
1802        X\x{123}\x{123}\P
1803    Partial match: X\x{123}\x{123}
1804        X\x{123}\x{123}\x{123}\P
1805    Partial match: X\x{123}\x{123}\x{123}
1806        X\x{123}\x{123}\x{123}\x{123}\P
1807    Partial match: X\x{123}\x{123}\x{123}\x{123}
1808    
1809    /X\D{2,4}?b/8
1810        X\P
1811    Partial match: X
1812        X\x{123}\P
1813    Partial match: X\x{123}
1814        X\x{123}\x{123}\P
1815    Partial match: X\x{123}\x{123}
1816        X\x{123}\x{123}\x{123}\P
1817    Partial match: X\x{123}\x{123}\x{123}
1818        X\x{123}\x{123}\x{123}\x{123}\P
1819    Partial match: X\x{123}\x{123}\x{123}\x{123}
1820    
1821    /X\D{2,4}+b/8
1822        X\P
1823    Partial match: X
1824        X\x{123}\P
1825    Partial match: X\x{123}
1826        X\x{123}\x{123}\P
1827    Partial match: X\x{123}\x{123}
1828        X\x{123}\x{123}\x{123}\P
1829    Partial match: X\x{123}\x{123}\x{123}
1830        X\x{123}\x{123}\x{123}\x{123}\P
1831    Partial match: X\x{123}\x{123}\x{123}\x{123}
1832    
1833    /X[abc]{2,4}b/8
1834        X\P
1835    Partial match: X
1836        Xa\P
1837    Partial match: Xa
1838        Xaa\P
1839    Partial match: Xaa
1840        Xaaa\P
1841    Partial match: Xaaa
1842        Xaaaa\P
1843    Partial match: Xaaaa
1844    
1845    /X[abc]{2,4}?b/8
1846        X\P
1847    Partial match: X
1848        Xa\P
1849    Partial match: Xa
1850        Xaa\P
1851    Partial match: Xaa
1852        Xaaa\P
1853    Partial match: Xaaa
1854        Xaaaa\P
1855    Partial match: Xaaaa
1856    
1857    /X[abc]{2,4}+b/8
1858        X\P
1859    Partial match: X
1860        Xa\P
1861    Partial match: Xa
1862        Xaa\P
1863    Partial match: Xaa
1864        Xaaa\P
1865    Partial match: Xaaa
1866        Xaaaa\P
1867    Partial match: Xaaaa
1868    
1869    /X[abc\x{123}]{2,4}b/8
1870        X\P
1871    Partial match: X
1872        X\x{123}\P
1873    Partial match: X\x{123}
1874        X\x{123}\x{123}\P
1875    Partial match: X\x{123}\x{123}
1876        X\x{123}\x{123}\x{123}\P
1877    Partial match: X\x{123}\x{123}\x{123}
1878        X\x{123}\x{123}\x{123}\x{123}\P
1879    Partial match: X\x{123}\x{123}\x{123}\x{123}
1880    
1881    /X[abc\x{123}]{2,4}?b/8
1882        X\P
1883    Partial match: X
1884        X\x{123}\P
1885    Partial match: X\x{123}
1886        X\x{123}\x{123}\P
1887    Partial match: X\x{123}\x{123}
1888        X\x{123}\x{123}\x{123}\P
1889    Partial match: X\x{123}\x{123}\x{123}
1890        X\x{123}\x{123}\x{123}\x{123}\P
1891    Partial match: X\x{123}\x{123}\x{123}\x{123}
1892    
1893    /X[abc\x{123}]{2,4}+b/8
1894        X\P
1895    Partial match: X
1896        X\x{123}\P
1897    Partial match: X\x{123}
1898        X\x{123}\x{123}\P
1899    Partial match: X\x{123}\x{123}
1900        X\x{123}\x{123}\x{123}\P
1901    Partial match: X\x{123}\x{123}\x{123}
1902        X\x{123}\x{123}\x{123}\x{123}\P
1903    Partial match: X\x{123}\x{123}\x{123}\x{123}
1904    
1905    /X[^a]{2,4}b/8
1906        X\P
1907    Partial match: X
1908        Xz\P
1909    Partial match: Xz
1910        Xzz\P
1911    Partial match: Xzz
1912        Xzzz\P
1913    Partial match: Xzzz
1914        Xzzzz\P
1915    Partial match: Xzzzz
1916    
1917    /X[^a]{2,4}?b/8
1918        X\P
1919    Partial match: X
1920        Xz\P
1921    Partial match: Xz
1922        Xzz\P
1923    Partial match: Xzz
1924        Xzzz\P
1925    Partial match: Xzzz
1926        Xzzzz\P
1927    Partial match: Xzzzz
1928    
1929    /X[^a]{2,4}+b/8
1930        X\P
1931    Partial match: X
1932        Xz\P
1933    Partial match: Xz
1934        Xzz\P
1935    Partial match: Xzz
1936        Xzzz\P
1937    Partial match: Xzzz
1938        Xzzzz\P
1939    Partial match: Xzzzz
1940    
1941    /X[^a]{2,4}b/8
1942        X\P
1943    Partial match: X
1944        X\x{123}\P
1945    Partial match: X\x{123}
1946        X\x{123}\x{123}\P
1947    Partial match: X\x{123}\x{123}
1948        X\x{123}\x{123}\x{123}\P
1949    Partial match: X\x{123}\x{123}\x{123}
1950        X\x{123}\x{123}\x{123}\x{123}\P
1951    Partial match: X\x{123}\x{123}\x{123}\x{123}
1952    
1953    /X[^a]{2,4}?b/8
1954        X\P
1955    Partial match: X
1956        X\x{123}\P
1957    Partial match: X\x{123}
1958        X\x{123}\x{123}\P
1959    Partial match: X\x{123}\x{123}
1960        X\x{123}\x{123}\x{123}\P
1961    Partial match: X\x{123}\x{123}\x{123}
1962        X\x{123}\x{123}\x{123}\x{123}\P
1963    Partial match: X\x{123}\x{123}\x{123}\x{123}
1964    
1965    /X[^a]{2,4}+b/8
1966        X\P
1967    Partial match: X
1968        X\x{123}\P
1969    Partial match: X\x{123}
1970        X\x{123}\x{123}\P
1971    Partial match: X\x{123}\x{123}
1972        X\x{123}\x{123}\x{123}\P
1973    Partial match: X\x{123}\x{123}\x{123}
1974        X\x{123}\x{123}\x{123}\x{123}\P
1975    Partial match: X\x{123}\x{123}\x{123}\x{123}
1976    
1977    /(Y)X\1{2,4}b/8
1978        YX\P
1979    Partial match: YX
1980        YXY\P
1981    Partial match: YXY
1982        YXYY\P
1983    Partial match: YXYY
1984        YXYYY\P
1985    Partial match: YXYYY
1986        YXYYYY\P
1987    Partial match: YXYYYY
1988    
1989    /(Y)X\1{2,4}?b/8
1990        YX\P
1991    Partial match: YX
1992        YXY\P
1993    Partial match: YXY
1994        YXYY\P
1995    Partial match: YXYY
1996        YXYYY\P
1997    Partial match: YXYYY
1998        YXYYYY\P
1999    Partial match: YXYYYY
2000    
2001    /(Y)X\1{2,4}+b/8
2002        YX\P
2003    Partial match: YX
2004        YXY\P
2005    Partial match: YXY
2006        YXYY\P
2007    Partial match: YXYY
2008        YXYYY\P
2009    Partial match: YXYYY
2010        YXYYYY\P
2011    Partial match: YXYYYY
2012    
2013    /(\x{123})X\1{2,4}b/8
2014        \x{123}X\P
2015    Partial match: \x{123}X
2016        \x{123}X\x{123}\P
2017    Partial match: \x{123}X\x{123}
2018        \x{123}X\x{123}\x{123}\P
2019    Partial match: \x{123}X\x{123}\x{123}
2020        \x{123}X\x{123}\x{123}\x{123}\P
2021    Partial match: \x{123}X\x{123}\x{123}\x{123}
2022        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
2023    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
2024    
2025    /(\x{123})X\1{2,4}?b/8
2026        \x{123}X\P
2027    Partial match: \x{123}X
2028        \x{123}X\x{123}\P
2029    Partial match: \x{123}X\x{123}
2030        \x{123}X\x{123}\x{123}\P
2031    Partial match: \x{123}X\x{123}\x{123}
2032        \x{123}X\x{123}\x{123}\x{123}\P
2033    Partial match: \x{123}X\x{123}\x{123}\x{123}
2034        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
2035    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
2036    
2037    /(\x{123})X\1{2,4}+b/8
2038        \x{123}X\P
2039    Partial match: \x{123}X
2040        \x{123}X\x{123}\P
2041    Partial match: \x{123}X\x{123}
2042        \x{123}X\x{123}\x{123}\P
2043    Partial match: \x{123}X\x{123}\x{123}
2044        \x{123}X\x{123}\x{123}\x{123}\P
2045    Partial match: \x{123}X\x{123}\x{123}\x{123}
2046        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
2047    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
2048    
2049    /\bthe cat\b/8
2050        the cat\P
2051     0: the cat
2052        the cat\P\P
2053    Partial match: the cat
2054    
2055    /abcd*/8
2056        xxxxabcd\P
2057     0: abcd
2058        xxxxabcd\P\P
2059    Partial match: abcd
2060    
2061    /abcd*/i8
2062        xxxxabcd\P
2063     0: abcd
2064        xxxxabcd\P\P
2065    Partial match: abcd
2066        XXXXABCD\P
2067     0: ABCD
2068        XXXXABCD\P\P
2069    Partial match: ABCD
2070    
2071    /abc\d*/8
2072        xxxxabc1\P
2073     0: abc1
2074        xxxxabc1\P\P
2075    Partial match: abc1
2076    
2077    /(a)bc\1*/8
2078        xxxxabca\P
2079     0: abca
2080     1: a
2081        xxxxabca\P\P
2082    Partial match: abca
2083    
2084    /abc[de]*/8
2085        xxxxabcde\P
2086     0: abcde
2087        xxxxabcde\P\P
2088    Partial match: abcde
2089    
2090    /X\W{3}X/8
2091        \PX
2092    Partial match: X
2093    
2094    /\h/SI
2095    Capturing subpattern count = 0
2096    No options
2097    No first char
2098    No need char
2099    Subject length lower bound = 1
2100    Starting byte set: \x09 \x20 \xa0
2101    
2102    /\h/SI8
2103    Capturing subpattern count = 0
2104    Options: utf8
2105    No first char
2106    No need char
2107    Subject length lower bound = 1
2108    Starting byte set: \x09 \x20 \xc2 \xe1 \xe2 \xe3
2109        ABC\x{09}
2110     0: \x{09}
2111        ABC\x{20}
2112     0:
2113        ABC\x{a0}
2114     0: \x{a0}
2115        ABC\x{1680}
2116     0: \x{1680}
2117        ABC\x{180e}
2118     0: \x{180e}
2119        ABC\x{2000}
2120     0: \x{2000}
2121        ABC\x{202f}
2122     0: \x{202f}
2123        ABC\x{205f}
2124     0: \x{205f}
2125        ABC\x{3000}
2126     0: \x{3000}
2127    
2128    /\v/SI
2129    Capturing subpattern count = 0
2130    No options
2131    No first char
2132    No need char
2133    Subject length lower bound = 1
2134    Starting byte set: \x0a \x0b \x0c \x0d \x85
2135    
2136    /\v/SI8
2137    Capturing subpattern count = 0
2138    Options: utf8
2139    No first char
2140    No need char
2141    Subject length lower bound = 1
2142    Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2
2143        ABC\x{0a}
2144     0: \x{0a}
2145        ABC\x{0b}
2146     0: \x{0b}
2147        ABC\x{0c}
2148     0: \x{0c}
2149        ABC\x{0d}
2150     0: \x{0d}
2151        ABC\x{85}
2152     0: \x{85}
2153        ABC\x{2028}
2154     0: \x{2028}
2155    
2156    /\R/SI
2157    Capturing subpattern count = 0
2158    No options
2159    No first char
2160    No need char
2161    Subject length lower bound = 2
2162    Starting byte set: \x0a \x0b \x0c \x0d \x85
2163    
2164    /\R/SI8
2165    Capturing subpattern count = 0
2166    Options: utf8
2167    No first char
2168    No need char
2169    Subject length lower bound = 2
2170    Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2
2171    
2172    /\h*A/SI8
2173    Capturing subpattern count = 0
2174    Options: utf8
2175    No first char
2176    Need char = 'A'
2177    Subject length lower bound = 1
2178    Starting byte set: \x09 \x20 A \xc2 \xe1 \xe2 \xe3
2179        CDBABC
2180     0: A
2181    
2182    /\v+A/SI8
2183    Capturing subpattern count = 0
2184    Options: utf8
2185    No first char
2186    Need char = 'A'
2187    Subject length lower bound = 2
2188    Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2
2189    
2190    /\s?xxx\s/8SI
2191    Capturing subpattern count = 0
2192    Options: utf8
2193    No first char
2194    Need char = 'x'
2195    Subject length lower bound = 4
2196    Starting byte set: \x09 \x0a \x0c \x0d \x20 x
2197    
2198    /\sxxx\s/8T1
2199        AB\x{85}xxx\x{a0}XYZ
2200     0: \x{85}xxx\x{a0}
2201        AB\x{a0}xxx\x{85}XYZ
2202     0: \x{a0}xxx\x{85}
2203    
2204    /\sxxx\s/I8ST1
2205    Capturing subpattern count = 0
2206    Options: utf8
2207    No first char
2208    Need char = 'x'
2209    Subject length lower bound = 5
2210    Starting byte set: \x09 \x0a \x0c \x0d \x20 \xc2
2211        AB\x{85}xxx\x{a0}XYZ
2212     0: \x{85}xxx\x{a0}
2213        AB\x{a0}xxx\x{85}XYZ
2214     0: \x{a0}xxx\x{85}
2215    
2216    /\S \S/8T1
2217        \x{a2} \x{84}
2218     0: \x{a2} \x{84}
2219    
2220    /\S \S/I8ST1
2221    Capturing subpattern count = 0
2222    Options: utf8
2223    No first char
2224    Need char = ' '
2225    Subject length lower bound = 3
2226    Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e
2227      \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d
2228      \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @
2229      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 Z [ \ ] ^ _ ` a b c d e
2230      f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \xc0 \xc1 \xc2 \xc3
2231      \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2
2232      \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1
2233      \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0
2234      \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
2235        \x{a2} \x{84}
2236     0: \x{a2} \x{84}
2237        A Z
2238     0: A Z
2239    
2240    'A#хц'8x<any>BZ
2241    ------------------------------------------------------------------
2242            Bra
2243            A
2244            Ket
2245            End
2246    ------------------------------------------------------------------
2247    
2248    'A#хц
2249      PQ'8x<any>BZ
2250    ------------------------------------------------------------------
2251            Bra
2252            APQ
2253            Ket
2254            End
2255    ------------------------------------------------------------------
2256    
2257    /a+#хaa
2258      z#XX?/8x<any>BZ
2259    ------------------------------------------------------------------
2260            Bra
2261            a++
2262            z
2263            Ket
2264            End
2265    ------------------------------------------------------------------
2266    
2267    /a+#хaa
2268      z#х?/8x<any>BZ
2269    ------------------------------------------------------------------
2270            Bra
2271            a++
2272            z
2273            Ket
2274            End
2275    ------------------------------------------------------------------
2276    
2277    /\g{A}xxx#bXX(?'A'123) (?'A'456)/8x<any>BZ
2278    ------------------------------------------------------------------
2279            Bra
2280            \1
2281            xxx
2282            CBra 1
2283            456
2284            Ket
2285            Ket
2286            End
2287    ------------------------------------------------------------------
2288    
2289    /\g{A}xxx#bх(?'A'123) (?'A'456)/8x<any>BZ
2290    ------------------------------------------------------------------
2291            Bra
2292            \1
2293            xxx
2294            CBra 1
2295            456
2296            Ket
2297            Ket
2298            End
2299    ------------------------------------------------------------------
2300    
2301    /a+/8
2302        a\x{123}aa\>1
2303     0: aa
2304        a\x{123}aa\>2
2305    Error -11
2306        a\x{123}aa\>3
2307     0: aa
2308        a\x{123}aa\>4
2309     0: a
2310        a\x{123}aa\>5
2311    No match
2312        a\x{123}aa\>6
2313    Error -24
2314    
2315    /^\cģ/8
2316    Failed: \c must be followed by an ASCII character at offset 3
2317    
2318  / End of testinput5 /  /-- End of testinput5 --/

Legend:
Removed from v.190  
changed lines
  Added in v.574

  ViewVC Help
Powered by ViewVC 1.1.5