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

Contents of /code/trunk/testdata/testoutput5

Parent Directory Parent Directory | Revision Log Revision Log


Revision 226 - (hide annotations) (download)
Tue Aug 21 11:46:08 2007 UTC (7 years, 4 months ago) by ph10
File size: 31892 byte(s)
Don't advance by 2 if explicit \r or \n in the pattern. Add 
PCRE_INFO_HASCRORLF.

1 ph10 162 /\x{100}/8DZ
2 nigel 75 ------------------------------------------------------------------
3 ph10 192 Bra
4 ph10 161 \x{100}
5     Ket
6     End
7 nigel 75 ------------------------------------------------------------------
8     Capturing subpattern count = 0
9     Options: utf8
10     First char = 196
11     Need char = 128
12    
13 ph10 162 /\x{1000}/8DZ
14 nigel 63 ------------------------------------------------------------------
15 ph10 192 Bra
16 ph10 161 \x{1000}
17     Ket
18     End
19 nigel 63 ------------------------------------------------------------------
20     Capturing subpattern count = 0
21     Options: utf8
22 nigel 75 First char = 225
23 nigel 63 Need char = 128
24 nigel 49
25 ph10 162 /\x{10000}/8DZ
26 nigel 63 ------------------------------------------------------------------
27 ph10 192 Bra
28 ph10 161 \x{10000}
29     Ket
30     End
31 nigel 63 ------------------------------------------------------------------
32     Capturing subpattern count = 0
33     Options: utf8
34 nigel 75 First char = 240
35 nigel 63 Need char = 128
36 nigel 49
37 ph10 162 /\x{100000}/8DZ
38 nigel 63 ------------------------------------------------------------------
39 ph10 192 Bra
40 ph10 161 \x{100000}
41     Ket
42     End
43 nigel 63 ------------------------------------------------------------------
44     Capturing subpattern count = 0
45     Options: utf8
46 nigel 75 First char = 244
47 nigel 63 Need char = 128
48 nigel 49
49 ph10 162 /\x{1000000}/8DZ
50 nigel 63 ------------------------------------------------------------------
51 ph10 192 Bra
52 ph10 161 \x{1000000}
53     Ket
54     End
55 nigel 63 ------------------------------------------------------------------
56     Capturing subpattern count = 0
57     Options: utf8
58 nigel 75 First char = 249
59 nigel 63 Need char = 128
60 nigel 49
61 ph10 162 /\x{4000000}/8DZ
62 nigel 63 ------------------------------------------------------------------
63 ph10 192 Bra
64 ph10 161 \x{4000000}
65     Ket
66     End
67 nigel 63 ------------------------------------------------------------------
68     Capturing subpattern count = 0
69     Options: utf8
70     First char = 252
71     Need char = 128
72 nigel 49
73 ph10 162 /\x{7fffFFFF}/8DZ
74 nigel 63 ------------------------------------------------------------------
75 ph10 192 Bra
76 ph10 161 \x{7fffffff}
77     Ket
78     End
79 nigel 63 ------------------------------------------------------------------
80     Capturing subpattern count = 0
81     Options: utf8
82     First char = 253
83     Need char = 191
84 nigel 49
85 ph10 162 /[\x{ff}]/8DZ
86 nigel 63 ------------------------------------------------------------------
87 ph10 192 Bra
88 ph10 161 \x{ff}
89     Ket
90     End
91 nigel 63 ------------------------------------------------------------------
92     Capturing subpattern count = 0
93     Options: utf8
94 nigel 75 First char = 195
95     Need char = 191
96 nigel 49
97 ph10 162 /[\x{100}]/8DZ
98 nigel 63 ------------------------------------------------------------------
99 ph10 192 Bra
100 ph10 161 [\x{100}]
101     Ket
102     End
103 nigel 63 ------------------------------------------------------------------
104     Capturing subpattern count = 0
105     Options: utf8
106     No first char
107     No need char
108 nigel 49
109 nigel 63 /\x{ffffffff}/8
110     Failed: character value in \x{...} sequence is too large at offset 11
111 nigel 49
112 nigel 63 /\x{100000000}/8
113     Failed: character value in \x{...} sequence is too large at offset 12
114 nigel 49
115 nigel 63 /^\x{100}a\x{1234}/8
116     \x{100}a\x{1234}bcd
117     0: \x{100}a\x{1234}
118 nigel 49
119 ph10 161 /\x80/8DZ
120 nigel 63 ------------------------------------------------------------------
121 ph10 192 Bra
122 ph10 161 \x{80}
123     Ket
124     End
125 nigel 63 ------------------------------------------------------------------
126     Capturing subpattern count = 0
127     Options: utf8
128     First char = 194
129     Need char = 128
130    
131 ph10 161 /\xff/8DZ
132 nigel 63 ------------------------------------------------------------------
133 ph10 192 Bra
134 ph10 161 \x{ff}
135     Ket
136     End
137 nigel 63 ------------------------------------------------------------------
138     Capturing subpattern count = 0
139     Options: utf8
140     First char = 195
141     Need char = 191
142    
143 ph10 161 /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
144 nigel 63 ------------------------------------------------------------------
145 ph10 192 Bra
146 ph10 161 A\x{2262}\x{391}.
147     Ket
148     End
149 nigel 63 ------------------------------------------------------------------
150     Capturing subpattern count = 0
151     Options: utf8
152     First char = 'A'
153     Need char = '.'
154     \x{0041}\x{2262}\x{0391}\x{002e}
155     0: A\x{2262}\x{391}.
156    
157 ph10 161 /\x{D55c}\x{ad6d}\x{C5B4}/DZ8
158 nigel 63 ------------------------------------------------------------------
159 ph10 192 Bra
160 ph10 161 \x{d55c}\x{ad6d}\x{c5b4}
161     Ket
162     End
163 nigel 63 ------------------------------------------------------------------
164     Capturing subpattern count = 0
165     Options: utf8
166     First char = 237
167     Need char = 180
168     \x{D55c}\x{ad6d}\x{C5B4}
169     0: \x{d55c}\x{ad6d}\x{c5b4}
170    
171 ph10 161 /\x{65e5}\x{672c}\x{8a9e}/DZ8
172 nigel 63 ------------------------------------------------------------------
173 ph10 192 Bra
174 ph10 161 \x{65e5}\x{672c}\x{8a9e}
175     Ket
176     End
177 nigel 63 ------------------------------------------------------------------
178     Capturing subpattern count = 0
179     Options: utf8
180     First char = 230
181     Need char = 158
182     \x{65e5}\x{672c}\x{8a9e}
183     0: \x{65e5}\x{672c}\x{8a9e}
184    
185 ph10 161 /\x{80}/DZ8
186 nigel 63 ------------------------------------------------------------------
187 ph10 192 Bra
188 ph10 161 \x{80}
189     Ket
190     End
191 nigel 63 ------------------------------------------------------------------
192     Capturing subpattern count = 0
193     Options: utf8
194     First char = 194
195     Need char = 128
196    
197 ph10 161 /\x{084}/DZ8
198 nigel 63 ------------------------------------------------------------------
199 ph10 192 Bra
200 ph10 161 \x{84}
201     Ket
202     End
203 nigel 63 ------------------------------------------------------------------
204     Capturing subpattern count = 0
205     Options: utf8
206     First char = 194
207     Need char = 132
208    
209 ph10 161 /\x{104}/DZ8
210 nigel 63 ------------------------------------------------------------------
211 ph10 192 Bra
212 ph10 161 \x{104}
213     Ket
214     End
215 nigel 63 ------------------------------------------------------------------
216     Capturing subpattern count = 0
217     Options: utf8
218     First char = 196
219     Need char = 132
220    
221 ph10 161 /\x{861}/DZ8
222 nigel 63 ------------------------------------------------------------------
223 ph10 192 Bra
224 ph10 161 \x{861}
225     Ket
226     End
227 nigel 63 ------------------------------------------------------------------
228     Capturing subpattern count = 0
229     Options: utf8
230     First char = 224
231     Need char = 161
232    
233 ph10 161 /\x{212ab}/DZ8
234 nigel 63 ------------------------------------------------------------------
235 ph10 192 Bra
236 ph10 161 \x{212ab}
237     Ket
238     End
239 nigel 63 ------------------------------------------------------------------
240     Capturing subpattern count = 0
241     Options: utf8
242     First char = 240
243     Need char = 171
244    
245 ph10 161 /.{3,5}X/DZ8
246 nigel 63 ------------------------------------------------------------------
247 ph10 192 Bra
248 ph10 161 Any{3}
249     Any{0,2}
250     X
251     Ket
252     End
253 nigel 63 ------------------------------------------------------------------
254     Capturing subpattern count = 0
255 nigel 75 Partial matching not supported
256 nigel 63 Options: utf8
257     No first char
258     Need char = 'X'
259     \x{212ab}\x{212ab}\x{212ab}\x{861}X
260     0: \x{212ab}\x{212ab}\x{212ab}\x{861}X
261    
262    
263 ph10 161 /.{3,5}?/DZ8
264 nigel 63 ------------------------------------------------------------------
265 ph10 192 Bra
266 ph10 161 Any{3}
267     Any{0,2}?
268     Ket
269     End
270 nigel 63 ------------------------------------------------------------------
271     Capturing subpattern count = 0
272 nigel 75 Partial matching not supported
273 nigel 63 Options: utf8
274     No first char
275     No need char
276     \x{212ab}\x{212ab}\x{212ab}\x{861}
277     0: \x{212ab}\x{212ab}\x{212ab}
278    
279 ph10 161 /-- These tests are here rather than in testinput4 because Perl 5.6 has some
280     problems with UTF-8 support, in the area of \x{..} where the value is < 255.
281     It grumbles about invalid UTF-8 strings. --/
282 nigel 63
283     /^[a\x{c0}]b/8
284     \x{c0}b
285     0: \x{c0}b
286    
287     /^([a\x{c0}]*?)aa/8
288     a\x{c0}aaaa/
289     0: a\x{c0}aa
290     1: a\x{c0}
291    
292     /^([a\x{c0}]*?)aa/8
293     a\x{c0}aaaa/
294     0: a\x{c0}aa
295     1: a\x{c0}
296     a\x{c0}a\x{c0}aaa/
297     0: a\x{c0}a\x{c0}aa
298     1: a\x{c0}a\x{c0}
299    
300     /^([a\x{c0}]*)aa/8
301     a\x{c0}aaaa/
302     0: a\x{c0}aaaa
303     1: a\x{c0}aa
304     a\x{c0}a\x{c0}aaa/
305     0: a\x{c0}a\x{c0}aaa
306     1: a\x{c0}a\x{c0}a
307    
308     /^([a\x{c0}]*)a\x{c0}/8
309     a\x{c0}aaaa/
310     0: a\x{c0}
311 nigel 49 1:
312 nigel 63 a\x{c0}a\x{c0}aaa/
313     0: a\x{c0}a\x{c0}
314     1: a\x{c0}
315    
316     /-- --/
317    
318     /(?<=\C)X/8
319     Failed: \C not allowed in lookbehind assertion at offset 6
320 nigel 49
321 ph10 161 /-- This one is here not because it's different to Perl, but because the way
322     the captured single-byte is displayed. (In Perl it becomes a character, and you
323     can't tell the difference.) --/
324 nigel 63
325     /X(\C)(.*)/8
326     X\x{1234}
327     0: X\x{1234}
328     1: \xe1
329     2: \x88\xb4
330     X\nabc
331     0: X\x{0a}abc
332     1: \x{0a}
333     2: abc
334    
335 ph10 161 /^[ab]/8DZ
336 nigel 63 ------------------------------------------------------------------
337 ph10 192 Bra
338 ph10 161 ^
339     [ab]
340     Ket
341     End
342 nigel 63 ------------------------------------------------------------------
343     Capturing subpattern count = 0
344     Options: anchored utf8
345     No first char
346     No need char
347     bar
348     0: b
349 nigel 49 *** Failers
350     No match
351 nigel 63 c
352 nigel 49 No match
353 nigel 63 \x{ff}
354 nigel 49 No match
355 nigel 63 \x{100}
356     No match
357 nigel 49
358 ph10 161 /^[^ab]/8DZ
359 nigel 63 ------------------------------------------------------------------
360 ph10 192 Bra
361 ph10 161 ^
362     [\x00-`c-\xff] (neg)
363     Ket
364     End
365 nigel 63 ------------------------------------------------------------------
366     Capturing subpattern count = 0
367 ph10 226 Contains explicit CR or LF match
368 nigel 63 Options: anchored utf8
369     No first char
370     No need char
371     c
372     0: c
373     \x{ff}
374     0: \x{ff}
375     \x{100}
376     0: \x{100}
377     *** Failers
378     0: *
379     aaa
380     No match
381    
382 ph10 161 /[^ab\xC0-\xF0]/8SDZ
383 nigel 63 ------------------------------------------------------------------
384 ph10 192 Bra
385 ph10 161 [\x00-`c-\xbf\xf1-\xff] (neg)
386     Ket
387     End
388 nigel 63 ------------------------------------------------------------------
389     Capturing subpattern count = 0
390 ph10 226 Contains explicit CR or LF match
391 nigel 63 Options: utf8
392     No first char
393     No need char
394 nigel 75 Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
395 nigel 63 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
396     \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
397     5 6 7 8 9 : ; < = > ? @ 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
398     Z [ \ ] ^ _ ` c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f
399 nigel 71 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0
400     \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf
401     \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee
402     \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd
403     \xfe \xff
404 nigel 63 \x{f1}
405     0: \x{f1}
406     \x{bf}
407     0: \x{bf}
408     \x{100}
409     0: \x{100}
410     \x{1000}
411     0: \x{1000}
412 nigel 49 *** Failers
413 nigel 63 0: *
414     \x{c0}
415 nigel 49 No match
416 nigel 63 \x{f0}
417 nigel 49 No match
418    
419 ph10 161 /Ā{3,4}/8SDZ
420 nigel 63 ------------------------------------------------------------------
421 ph10 192 Bra
422 ph10 161 \x{100}{3}
423     \x{100}?
424     Ket
425     End
426 nigel 63 ------------------------------------------------------------------
427     Capturing subpattern count = 0
428 nigel 75 Partial matching not supported
429 nigel 63 Options: utf8
430     First char = 196
431     Need char = 128
432     Study returned NULL
433     \x{100}\x{100}\x{100}\x{100\x{100}
434     0: \x{100}\x{100}\x{100}
435    
436 ph10 161 /(\x{100}+|x)/8SDZ
437 nigel 63 ------------------------------------------------------------------
438 ph10 192 Bra
439     CBra 1
440 ph10 161 \x{100}+
441     Alt
442     x
443     Ket
444     Ket
445     End
446 nigel 63 ------------------------------------------------------------------
447     Capturing subpattern count = 1
448 nigel 75 Partial matching not supported
449 nigel 63 Options: utf8
450     No first char
451     No need char
452 nigel 93 Starting byte set: x \xc4
453 nigel 63
454 ph10 161 /(\x{100}*a|x)/8SDZ
455 nigel 63 ------------------------------------------------------------------
456 ph10 192 Bra
457     CBra 1
458 ph10 161 \x{100}*+
459     a
460     Alt
461     x
462     Ket
463     Ket
464     End
465 nigel 63 ------------------------------------------------------------------
466     Capturing subpattern count = 1
467 nigel 75 Partial matching not supported
468 nigel 63 Options: utf8
469     No first char
470     No need char
471 nigel 75 Starting byte set: a x \xc4
472 nigel 63
473 ph10 161 /(\x{100}{0,2}a|x)/8SDZ
474 nigel 93 ------------------------------------------------------------------
475 ph10 192 Bra
476     CBra 1
477 ph10 161 \x{100}{0,2}
478     a
479     Alt
480     x
481     Ket
482     Ket
483     End
484 nigel 93 ------------------------------------------------------------------
485     Capturing subpattern count = 1
486     Partial matching not supported
487     Options: utf8
488     No first char
489     No need char
490     Starting byte set: a x \xc4
491    
492 ph10 161 /(\x{100}{1,2}a|x)/8SDZ
493 nigel 63 ------------------------------------------------------------------
494 ph10 192 Bra
495     CBra 1
496 ph10 161 \x{100}
497     \x{100}{0,1}
498     a
499     Alt
500     x
501     Ket
502     Ket
503     End
504 nigel 63 ------------------------------------------------------------------
505     Capturing subpattern count = 1
506 nigel 75 Partial matching not supported
507 nigel 63 Options: utf8
508     No first char
509     No need char
510 nigel 75 Starting byte set: x \xc4
511 nigel 63
512     /\x{100}*(\d+|"(?1)")/8
513     1234
514     0: 1234
515     1: 1234
516     "1234"
517     0: "1234"
518     1: "1234"
519     \x{100}1234
520     0: \x{100}1234
521     1: 1234
522     "\x{100}1234"
523     0: \x{100}1234
524     1: 1234
525     \x{100}\x{100}12ab
526     0: \x{100}\x{100}12
527     1: 12
528     \x{100}\x{100}"12"
529     0: \x{100}\x{100}"12"
530     1: "12"
531     *** Failers
532 nigel 49 No match
533 nigel 63 \x{100}\x{100}abcd
534 nigel 49 No match
535    
536 ph10 161 /\x{100}/8DZ
537 nigel 63 ------------------------------------------------------------------
538 ph10 192 Bra
539 ph10 161 \x{100}
540     Ket
541     End
542 nigel 63 ------------------------------------------------------------------
543     Capturing subpattern count = 0
544     Options: utf8
545     First char = 196
546     Need char = 128
547    
548 ph10 161 /\x{100}*/8DZ
549 nigel 63 ------------------------------------------------------------------
550 ph10 192 Bra
551 ph10 161 \x{100}*
552     Ket
553     End
554 nigel 63 ------------------------------------------------------------------
555     Capturing subpattern count = 0
556 nigel 75 Partial matching not supported
557 nigel 63 Options: utf8
558     No first char
559     No need char
560    
561 ph10 161 /a\x{100}*/8DZ
562 nigel 63 ------------------------------------------------------------------
563 ph10 192 Bra
564 ph10 161 a
565     \x{100}*
566     Ket
567     End
568 nigel 63 ------------------------------------------------------------------
569     Capturing subpattern count = 0
570 nigel 75 Partial matching not supported
571 nigel 63 Options: utf8
572     First char = 'a'
573     No need char
574    
575 ph10 161 /ab\x{100}*/8DZ
576 nigel 63 ------------------------------------------------------------------
577 ph10 192 Bra
578 ph10 161 ab
579     \x{100}*
580     Ket
581     End
582 nigel 63 ------------------------------------------------------------------
583     Capturing subpattern count = 0
584 nigel 75 Partial matching not supported
585 nigel 63 Options: utf8
586     First char = 'a'
587     Need char = 'b'
588    
589 ph10 161 /a\x{100}\x{101}*/8DZ
590 nigel 63 ------------------------------------------------------------------
591 ph10 192 Bra
592 ph10 161 a\x{100}
593     \x{101}*
594     Ket
595     End
596 nigel 63 ------------------------------------------------------------------
597     Capturing subpattern count = 0
598 nigel 75 Partial matching not supported
599 nigel 63 Options: utf8
600     First char = 'a'
601     Need char = 128
602    
603 ph10 161 /a\x{100}\x{101}+/8DZ
604 nigel 63 ------------------------------------------------------------------
605 ph10 192 Bra
606 ph10 161 a\x{100}
607     \x{101}+
608     Ket
609     End
610 nigel 63 ------------------------------------------------------------------
611     Capturing subpattern count = 0
612 nigel 75 Partial matching not supported
613 nigel 63 Options: utf8
614     First char = 'a'
615     Need char = 129
616    
617 ph10 161 /\x{100}*A/8DZ
618 nigel 63 ------------------------------------------------------------------
619 ph10 192 Bra
620 ph10 161 \x{100}*+
621     A
622     Ket
623     End
624 nigel 63 ------------------------------------------------------------------
625     Capturing subpattern count = 0
626 nigel 75 Partial matching not supported
627 nigel 63 Options: utf8
628     No first char
629     Need char = 'A'
630     A
631     0: A
632    
633 ph10 161 /\x{100}*\d(?R)/8DZ
634 nigel 63 ------------------------------------------------------------------
635 ph10 192 Bra
636 ph10 161 \x{100}*+
637     \d
638     Once
639     Recurse
640     Ket
641     Ket
642     End
643 nigel 63 ------------------------------------------------------------------
644     Capturing subpattern count = 0
645 nigel 75 Partial matching not supported
646 nigel 63 Options: utf8
647     No first char
648     No need char
649    
650 ph10 161 /[^\x{c4}]/DZ
651 nigel 63 ------------------------------------------------------------------
652 ph10 192 Bra
653 ph10 161 [^\xc4]
654     Ket
655     End
656 nigel 63 ------------------------------------------------------------------
657     Capturing subpattern count = 0
658 ph10 226 Contains explicit CR or LF match
659 nigel 63 No options
660     No first char
661     No need char
662    
663 ph10 161 /[^\x{c4}]/8DZ
664 nigel 63 ------------------------------------------------------------------
665 ph10 192 Bra
666 ph10 161 [\x00-\xc3\xc5-\xff] (neg)
667     Ket
668     End
669 nigel 63 ------------------------------------------------------------------
670     Capturing subpattern count = 0
671 ph10 226 Contains explicit CR or LF match
672 nigel 63 Options: utf8
673     No first char
674     No need char
675    
676 ph10 162 /[\x{100}]/8DZ
677 nigel 63 ------------------------------------------------------------------
678 ph10 192 Bra
679 ph10 161 [\x{100}]
680     Ket
681     End
682 nigel 63 ------------------------------------------------------------------
683     Capturing subpattern count = 0
684     Options: utf8
685     No first char
686     No need char
687     \x{100}
688     0: \x{100}
689     Z\x{100}
690     0: \x{100}
691     \x{100}Z
692     0: \x{100}
693     *** Failers
694 nigel 49 No match
695 nigel 63
696 ph10 162 /[Z\x{100}]/8DZ
697 nigel 63 ------------------------------------------------------------------
698 ph10 192 Bra
699 ph10 161 [Z\x{100}]
700     Ket
701     End
702 nigel 63 ------------------------------------------------------------------
703     Capturing subpattern count = 0
704     Options: utf8
705     No first char
706     No need char
707     Z\x{100}
708     0: Z
709     \x{100}
710     0: \x{100}
711     \x{100}Z
712     0: \x{100}
713     *** Failers
714 nigel 49 No match
715    
716 nigel 63 /[\x{200}-\x{100}]/8
717     Failed: range out of order in character class at offset 15
718    
719     /[Ā-Ą]/8
720     \x{100}
721     0: \x{100}
722     \x{104}
723     0: \x{104}
724 nigel 49 *** Failers
725     No match
726 nigel 63 \x{105}
727 nigel 49 No match
728 nigel 63 \x{ff}
729 nigel 49 No match
730    
731 ph10 161 /[z-\x{100}]/8DZ
732 nigel 63 ------------------------------------------------------------------
733 ph10 192 Bra
734 ph10 161 [z-\x{100}]
735     Ket
736     End
737 nigel 63 ------------------------------------------------------------------
738     Capturing subpattern count = 0
739     Options: utf8
740     No first char
741     No need char
742 nigel 49
743 ph10 161 /[z\Qa-d]Ā\E]/8DZ
744 nigel 63 ------------------------------------------------------------------
745 ph10 192 Bra
746 ph10 161 [\-\]adz\x{100}]
747     Ket
748     End
749 nigel 63 ------------------------------------------------------------------
750     Capturing subpattern count = 0
751     Options: utf8
752     No first char
753     No need char
754     \x{100}
755     0: \x{100}
756     Ā
757     0: \x{100}
758 nigel 49
759 ph10 161 /[\xFF]/DZ
760 nigel 67 ------------------------------------------------------------------
761 ph10 192 Bra
762 ph10 161 \xff
763     Ket
764     End
765 nigel 67 ------------------------------------------------------------------
766     Capturing subpattern count = 0
767     No options
768     First char = 255
769     No need char
770     >\xff<
771     0: \xff
772    
773 ph10 161 /[\xff]/DZ8
774 nigel 67 ------------------------------------------------------------------
775 ph10 192 Bra
776 ph10 161 \x{ff}
777     Ket
778     End
779 nigel 67 ------------------------------------------------------------------
780     Capturing subpattern count = 0
781     Options: utf8
782 nigel 75 First char = 195
783     Need char = 191
784 nigel 67 >\x{ff}<
785     0: \x{ff}
786    
787 ph10 161 /[^\xFF]/DZ
788 nigel 67 ------------------------------------------------------------------
789 ph10 192 Bra
790 ph10 161 [^\xff]
791     Ket
792     End
793 nigel 67 ------------------------------------------------------------------
794     Capturing subpattern count = 0
795 ph10 226 Contains explicit CR or LF match
796 nigel 67 No options
797     No first char
798     No need char
799    
800 ph10 161 /[^\xff]/8DZ
801 nigel 67 ------------------------------------------------------------------
802 ph10 192 Bra
803 ph10 161 [\x00-\xfe] (neg)
804     Ket
805     End
806 nigel 67 ------------------------------------------------------------------
807     Capturing subpattern count = 0
808 ph10 226 Contains explicit CR or LF match
809 nigel 67 Options: utf8
810     No first char
811     No need char
812    
813 nigel 71 /[Ä-Ü]/8
814     Ö # Matches without Study
815     0: \x{d6}
816     \x{d6}
817     0: \x{d6}
818    
819     /[Ä-Ü]/8S
820     Ö <-- Same with Study
821     0: \x{d6}
822     \x{d6}
823     0: \x{d6}
824    
825     /[\x{c4}-\x{dc}]/8
826     Ö # Matches without Study
827     0: \x{d6}
828     \x{d6}
829     0: \x{d6}
830    
831     /[\x{c4}-\x{dc}]/8S
832     Ö <-- Same with Study
833     0: \x{d6}
834     \x{d6}
835     0: \x{d6}
836    
837     /[]/8
838     Failed: invalid UTF-8 string at offset 2
839    
840     //8
841     Failed: invalid UTF-8 string at offset 0
842    
843     /xxx/8
844     Failed: invalid UTF-8 string at offset 1
845    
846 ph10 161 /xxx/8?DZ
847 nigel 71 ------------------------------------------------------------------
848 ph10 192 Bra
849 ph10 161 \X{c0}\X{c0}\X{c0}xxx
850     Ket
851     End
852 nigel 71 ------------------------------------------------------------------
853     Capturing subpattern count = 0
854     Options: utf8 no_utf8_check
855     First char = 195
856     Need char = 'x'
857    
858     /abc/8
859 nigel 73 ]
860 nigel 71 Error -10
861 nigel 73
862 nigel 71 Error -10
863 nigel 73
864 nigel 71 Error -10
865 nigel 73 \?
866 nigel 71 No match
867    
868 nigel 73 /anything/8
869     \xc0\x80
870     Error -10
871     \xc1\x8f
872     Error -10
873     \xe0\x9f\x80
874     Error -10
875     \xf0\x8f\x80\x80
876     Error -10
877     \xf8\x87\x80\x80\x80
878     Error -10
879     \xfc\x83\x80\x80\x80\x80
880     Error -10
881     \xfe\x80\x80\x80\x80\x80
882     Error -10
883     \xff\x80\x80\x80\x80\x80
884     Error -10
885     \xc3\x8f
886     No match
887     \xe0\xaf\x80
888     No match
889     \xe1\x80\x80
890     No match
891     \xf0\x9f\x80\x80
892     No match
893     \xf1\x8f\x80\x80
894     No match
895     \xf8\x88\x80\x80\x80
896 ph10 211 Error -10
897 nigel 73 \xf9\x87\x80\x80\x80
898 ph10 211 Error -10
899 nigel 73 \xfc\x84\x80\x80\x80\x80
900 ph10 211 Error -10
901 nigel 73 \xfd\x83\x80\x80\x80\x80
902 ph10 211 Error -10
903     \?\xf8\x88\x80\x80\x80
904 nigel 73 No match
905 ph10 211 \?\xf9\x87\x80\x80\x80
906     No match
907     \?\xfc\x84\x80\x80\x80\x80
908     No match
909     \?\xfd\x83\x80\x80\x80\x80
910     No match
911 nigel 73
912 ph10 161 /\x{100}abc(xyz(?1))/8DZ
913 nigel 73 ------------------------------------------------------------------
914 ph10 192 Bra
915 ph10 161 \x{100}abc
916 ph10 192 CBra 1
917 ph10 161 xyz
918     Once
919     Recurse
920     Ket
921     Ket
922     Ket
923     End
924 nigel 73 ------------------------------------------------------------------
925     Capturing subpattern count = 1
926     Options: utf8
927     First char = 196
928     Need char = 'z'
929    
930 ph10 161 /[^\x{100}]abc(xyz(?1))/8DZ
931 nigel 73 ------------------------------------------------------------------
932 ph10 192 Bra
933 ph10 161 [^\x{100}]
934     abc
935 ph10 192 CBra 1
936 ph10 161 xyz
937     Once
938     Recurse
939     Ket
940     Ket
941     Ket
942     End
943 nigel 73 ------------------------------------------------------------------
944     Capturing subpattern count = 1
945 ph10 226 Contains explicit CR or LF match
946 nigel 73 Options: utf8
947     No first char
948     Need char = 'z'
949    
950 ph10 161 /[ab\x{100}]abc(xyz(?1))/8DZ
951 nigel 73 ------------------------------------------------------------------
952 ph10 192 Bra
953 ph10 161 [ab\x{100}]
954     abc
955 ph10 192 CBra 1
956 ph10 161 xyz
957     Once
958     Recurse
959     Ket
960     Ket
961     Ket
962     End
963 nigel 73 ------------------------------------------------------------------
964     Capturing subpattern count = 1
965     Options: utf8
966     No first char
967     Need char = 'z'
968    
969 ph10 161 /(\x{100}(b(?2)c))?/DZ8
970 nigel 73 ------------------------------------------------------------------
971 ph10 192 Bra
972 ph10 161 Brazero
973 ph10 192 CBra 1
974 ph10 161 \x{100}
975 ph10 192 CBra 2
976 ph10 161 b
977     Once
978     Recurse
979     Ket
980     c
981     Ket
982     Ket
983     Ket
984     End
985 nigel 73 ------------------------------------------------------------------
986     Capturing subpattern count = 2
987     Options: utf8
988     No first char
989     No need char
990    
991 ph10 161 /(\x{100}(b(?2)c)){0,2}/DZ8
992 nigel 73 ------------------------------------------------------------------
993 ph10 192 Bra
994 ph10 161 Brazero
995 ph10 192 Bra
996     CBra 1
997 ph10 161 \x{100}
998 ph10 192 CBra 2
999 ph10 161 b
1000     Once
1001     Recurse
1002     Ket
1003     c
1004     Ket
1005     Ket
1006     Brazero
1007 ph10 192 CBra 1
1008 ph10 161 \x{100}
1009 ph10 192 CBra 2
1010 ph10 161 b
1011     Once
1012     Recurse
1013     Ket
1014     c
1015     Ket
1016     Ket
1017     Ket
1018     Ket
1019     End
1020 nigel 73 ------------------------------------------------------------------
1021     Capturing subpattern count = 2
1022     Options: utf8
1023     No first char
1024     No need char
1025    
1026 ph10 161 /(\x{100}(b(?1)c))?/DZ8
1027 nigel 73 ------------------------------------------------------------------
1028 ph10 192 Bra
1029 ph10 161 Brazero
1030 ph10 192 CBra 1
1031 ph10 161 \x{100}
1032 ph10 192 CBra 2
1033 ph10 161 b
1034     Once
1035     Recurse
1036     Ket
1037     c
1038     Ket
1039     Ket
1040     Ket
1041     End
1042 nigel 73 ------------------------------------------------------------------
1043     Capturing subpattern count = 2
1044     Options: utf8
1045     No first char
1046     No need char
1047    
1048 ph10 161 /(\x{100}(b(?1)c)){0,2}/DZ8
1049 nigel 73 ------------------------------------------------------------------
1050 ph10 192 Bra
1051 ph10 161 Brazero
1052 ph10 192 Bra
1053     CBra 1
1054 ph10 161 \x{100}
1055 ph10 192 CBra 2
1056 ph10 161 b
1057     Once
1058     Recurse
1059     Ket
1060     c
1061     Ket
1062     Ket
1063     Brazero
1064 ph10 192 CBra 1
1065 ph10 161 \x{100}
1066 ph10 192 CBra 2
1067 ph10 161 b
1068     Once
1069     Recurse
1070     Ket
1071     c
1072     Ket
1073     Ket
1074     Ket
1075     Ket
1076     End
1077 nigel 73 ------------------------------------------------------------------
1078     Capturing subpattern count = 2
1079     Options: utf8
1080     No first char
1081     No need char
1082    
1083 nigel 75 /\W/8
1084     A.B
1085     0: .
1086     A\x{100}B
1087     0: \x{100}
1088    
1089     /\w/8
1090     \x{100}X
1091     0: X
1092    
1093 nigel 87 /a\x{1234}b/P8
1094     a\x{1234}b
1095     0: a\x{1234}b
1096    
1097 ph10 161 /^\ሴ/8DZ
1098 nigel 87 ------------------------------------------------------------------
1099 ph10 192 Bra
1100 ph10 161 ^
1101     \x{1234}
1102     Ket
1103     End
1104 nigel 87 ------------------------------------------------------------------
1105     Capturing subpattern count = 0
1106     Options: anchored utf8
1107     No first char
1108     No need char
1109    
1110 nigel 91 /\777/I
1111     Failed: octal value is greater than \377 (not in UTF-8 mode) at offset 3
1112    
1113     /\777/8I
1114     Capturing subpattern count = 0
1115     Options: utf8
1116     First char = 199
1117     Need char = 191
1118     \x{1ff}
1119     0: \x{1ff}
1120     \777
1121     0: \x{1ff}
1122 nigel 93
1123 ph10 161 /\x{100}*\d/8DZ
1124 nigel 93 ------------------------------------------------------------------
1125 ph10 192 Bra
1126 ph10 161 \x{100}*+
1127     \d
1128     Ket
1129     End
1130 nigel 93 ------------------------------------------------------------------
1131     Capturing subpattern count = 0
1132     Partial matching not supported
1133     Options: utf8
1134     No first char
1135     No need char
1136 nigel 91
1137 ph10 161 /\x{100}*\s/8DZ
1138 nigel 93 ------------------------------------------------------------------
1139 ph10 192 Bra
1140 ph10 161 \x{100}*+
1141     \s
1142     Ket
1143     End
1144 nigel 93 ------------------------------------------------------------------
1145     Capturing subpattern count = 0
1146     Partial matching not supported
1147     Options: utf8
1148     No first char
1149     No need char
1150    
1151 ph10 161 /\x{100}*\w/8DZ
1152 nigel 93 ------------------------------------------------------------------
1153 ph10 192 Bra
1154 ph10 161 \x{100}*+
1155     \w
1156     Ket
1157     End
1158 nigel 93 ------------------------------------------------------------------
1159     Capturing subpattern count = 0
1160     Partial matching not supported
1161     Options: utf8
1162     No first char
1163     No need char
1164    
1165 ph10 161 /\x{100}*\D/8DZ
1166 nigel 93 ------------------------------------------------------------------
1167 ph10 192 Bra
1168 ph10 161 \x{100}*
1169     \D
1170     Ket
1171     End
1172 nigel 93 ------------------------------------------------------------------
1173     Capturing subpattern count = 0
1174     Partial matching not supported
1175     Options: utf8
1176     No first char
1177     No need char
1178    
1179 ph10 161 /\x{100}*\S/8DZ
1180 nigel 93 ------------------------------------------------------------------
1181 ph10 192 Bra
1182 ph10 161 \x{100}*
1183     \S
1184     Ket
1185     End
1186 nigel 93 ------------------------------------------------------------------
1187     Capturing subpattern count = 0
1188     Partial matching not supported
1189     Options: utf8
1190     No first char
1191     No need char
1192    
1193 ph10 161 /\x{100}*\W/8DZ
1194 nigel 93 ------------------------------------------------------------------
1195 ph10 192 Bra
1196 ph10 161 \x{100}*
1197     \W
1198     Ket
1199     End
1200 nigel 93 ------------------------------------------------------------------
1201     Capturing subpattern count = 0
1202     Partial matching not supported
1203     Options: utf8
1204     No first char
1205     No need char
1206    
1207 ph10 161 /\x{100}+\x{200}/8DZ
1208 nigel 93 ------------------------------------------------------------------
1209 ph10 192 Bra
1210 ph10 161 \x{100}++
1211     \x{200}
1212     Ket
1213     End
1214 nigel 93 ------------------------------------------------------------------
1215     Capturing subpattern count = 0
1216     Partial matching not supported
1217     Options: utf8
1218     First char = 196
1219     Need char = 128
1220    
1221 ph10 161 /\x{100}+X/8DZ
1222 nigel 93 ------------------------------------------------------------------
1223 ph10 192 Bra
1224 ph10 161 \x{100}++
1225     X
1226     Ket
1227     End
1228 nigel 93 ------------------------------------------------------------------
1229     Capturing subpattern count = 0
1230     Partial matching not supported
1231     Options: utf8
1232     First char = 196
1233     Need char = 'X'
1234    
1235 ph10 161 /X+\x{200}/8DZ
1236 nigel 93 ------------------------------------------------------------------
1237 ph10 192 Bra
1238 ph10 161 X++
1239     \x{200}
1240     Ket
1241     End
1242 nigel 93 ------------------------------------------------------------------
1243     Capturing subpattern count = 0
1244     Partial matching not supported
1245     Options: utf8
1246     First char = 'X'
1247     Need char = 128
1248    
1249     /()()()()()()()()()()
1250     ()()()()()()()()()()
1251     ()()()()()()()()()()
1252     ()()()()()()()()()()
1253     A (x) (?41) B/8x
1254     AxxB
1255     Matched, but too many substrings
1256     0: AxxB
1257     1:
1258     2:
1259     3:
1260     4:
1261     5:
1262     6:
1263     7:
1264     8:
1265     9:
1266     10:
1267     11:
1268     12:
1269     13:
1270     14:
1271    
1272 ph10 162 /^[\x{100}\E-\Q\E\x{150}]/BZ8
1273 nigel 93 ------------------------------------------------------------------
1274 ph10 192 Bra
1275 ph10 162 ^
1276     [\x{100}-\x{150}]
1277     Ket
1278     End
1279 nigel 93 ------------------------------------------------------------------
1280    
1281 ph10 162 /^[\QĀ\E-\QŐ\E]/BZ8
1282 nigel 93 ------------------------------------------------------------------
1283 ph10 192 Bra
1284 ph10 162 ^
1285     [\x{100}-\x{150}]
1286     Ket
1287     End
1288 nigel 93 ------------------------------------------------------------------
1289    
1290 ph10 162 /^[\QĀ\E-\QŐ\E/BZ8
1291 nigel 93 Failed: missing terminating ] for character class at offset 15
1292    
1293     /^abc./mgx8<any>
1294     abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK
1295     0: abc1
1296     0: abc2
1297     0: abc3
1298     0: abc4
1299     0: abc5
1300     0: abc6
1301     0: abc7
1302     0: abc8
1303     0: abc9
1304    
1305     /abc.$/mgx8<any>
1306     abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9
1307     0: abc1
1308     0: abc2
1309     0: abc3
1310     0: abc4
1311     0: abc5
1312     0: abc6
1313     0: abc7
1314     0: abc8
1315     0: abc9
1316    
1317     /^a\Rb/8
1318     a\nb
1319     0: a\x{0a}b
1320     a\rb
1321     0: a\x{0d}b
1322     a\r\nb
1323     0: a\x{0d}\x{0a}b
1324     a\x0bb
1325     0: a\x{0b}b
1326     a\x0cb
1327     0: a\x{0c}b
1328     a\x{85}b
1329     0: a\x{85}b
1330     a\x{2028}b
1331     0: a\x{2028}b
1332     a\x{2029}b
1333     0: a\x{2029}b
1334     ** Failers
1335     No match
1336     a\n\rb
1337     No match
1338    
1339     /^a\R*b/8
1340     ab
1341     0: ab
1342     a\nb
1343     0: a\x{0a}b
1344     a\rb
1345     0: a\x{0d}b
1346     a\r\nb
1347     0: a\x{0d}\x{0a}b
1348     a\x0bb
1349     0: a\x{0b}b
1350     a\x0c\x{2028}\x{2029}b
1351     0: a\x{0c}\x{2028}\x{2029}b
1352     a\x{85}b
1353     0: a\x{85}b
1354     a\n\rb
1355     0: a\x{0a}\x{0d}b
1356     a\n\r\x{85}\x0cb
1357     0: a\x{0a}\x{0d}\x{85}\x{0c}b
1358    
1359     /^a\R+b/8
1360     a\nb
1361     0: a\x{0a}b
1362     a\rb
1363     0: a\x{0d}b
1364     a\r\nb
1365     0: a\x{0d}\x{0a}b
1366     a\x0bb
1367     0: a\x{0b}b
1368     a\x0c\x{2028}\x{2029}b
1369     0: a\x{0c}\x{2028}\x{2029}b
1370     a\x{85}b
1371     0: a\x{85}b
1372     a\n\rb
1373     0: a\x{0a}\x{0d}b
1374     a\n\r\x{85}\x0cb
1375     0: a\x{0a}\x{0d}\x{85}\x{0c}b
1376     ** Failers
1377     No match
1378     ab
1379     No match
1380    
1381     /^a\R{1,3}b/8
1382     a\nb
1383     0: a\x{0a}b
1384     a\n\rb
1385     0: a\x{0a}\x{0d}b
1386     a\n\r\x{85}b
1387     0: a\x{0a}\x{0d}\x{85}b
1388     a\r\n\r\nb
1389     0: a\x{0d}\x{0a}\x{0d}\x{0a}b
1390     a\r\n\r\n\r\nb
1391     0: a\x{0d}\x{0a}\x{0d}\x{0a}\x{0d}\x{0a}b
1392     a\n\r\n\rb
1393     0: a\x{0a}\x{0d}\x{0a}\x{0d}b
1394     a\n\n\r\nb
1395     0: a\x{0a}\x{0a}\x{0d}\x{0a}b
1396     ** Failers
1397     No match
1398     a\n\n\n\rb
1399     No match
1400     a\r
1401     No match
1402    
1403 ph10 178 /\H\h\V\v/8
1404     X X\x0a
1405     0: X X\x{0a}
1406     X\x09X\x0b
1407     0: X\x{09}X\x{0b}
1408     ** Failers
1409     No match
1410     \x{a0} X\x0a
1411     No match
1412    
1413     /\H*\h+\V?\v{3,4}/8
1414     \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a
1415     0: \x{09} \x{a0}X\x{0a}\x{0b}\x{0c}\x{0d}
1416     \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a
1417     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}\x{0d}
1418     \x09\x20\x{a0}\x0a\x0b\x0c
1419     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}
1420     ** Failers
1421     No match
1422     \x09\x20\x{a0}\x0a\x0b
1423     No match
1424    
1425     /\H\h\V\v/8
1426     \x{3001}\x{3000}\x{2030}\x{2028}
1427     0: \x{3001}\x{3000}\x{2030}\x{2028}
1428     X\x{180e}X\x{85}
1429     0: X\x{180e}X\x{85}
1430     ** Failers
1431     No match
1432     \x{2009} X\x0a
1433     No match
1434    
1435     /\H*\h+\V?\v{3,4}/8
1436     \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a
1437     0: \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x{0c}\x{0d}
1438     \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a
1439     0: \x{09}\x{205f}\x{a0}\x{0a}\x{2029}\x{0c}\x{2028}
1440     \x09\x20\x{202f}\x0a\x0b\x0c
1441     0: \x{09} \x{202f}\x{0a}\x{0b}\x{0c}
1442     ** Failers
1443     No match
1444     \x09\x{200a}\x{a0}\x{2028}\x0b
1445     No match
1446    
1447     /[\h]/8BZ
1448     ------------------------------------------------------------------
1449 ph10 192 Bra
1450 ph10 178 [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
1451     Ket
1452     End
1453     ------------------------------------------------------------------
1454     >\x{1680}
1455     0: \x{1680}
1456    
1457     /[\h]{3,}/8BZ
1458     ------------------------------------------------------------------
1459 ph10 192 Bra
1460 ph10 178 [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}
1461     Ket
1462     End
1463     ------------------------------------------------------------------
1464     >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}<
1465     0: \x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}
1466    
1467     /[\v]/8BZ
1468     ------------------------------------------------------------------
1469 ph10 192 Bra
1470 ph10 178 [\x0a-\x0d\x85\x{2028}-\x{2029}]
1471     Ket
1472     End
1473     ------------------------------------------------------------------
1474    
1475     /[\H]/8BZ
1476     ------------------------------------------------------------------
1477 ph10 192 Bra
1478 ph10 178 [\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}]
1479     Ket
1480     End
1481     ------------------------------------------------------------------
1482    
1483     /[\V]/8BZ
1484     ------------------------------------------------------------------
1485 ph10 192 Bra
1486 ph10 178 [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{2029}-\x{7fffffff}]
1487     Ket
1488     End
1489     ------------------------------------------------------------------
1490    
1491 ph10 190 /.*$/8<any>
1492     \x{1ec5}
1493     0: \x{1ec5}
1494 ph10 211
1495     /-- This tests the stricter UTF-8 check according to RFC 3629. --/
1496    
1497     /X/8
1498     \x{0}\x{d7ff}\x{e000}\x{10ffff}
1499     No match
1500     \x{d800}
1501     Error -10
1502     \x{d800}\?
1503     No match
1504     \x{da00}
1505     Error -10
1506     \x{da00}\?
1507     No match
1508     \x{dfff}
1509     Error -10
1510     \x{dfff}\?
1511     No match
1512     \x{110000}
1513     Error -10
1514     \x{110000}\?
1515     No match
1516     \x{2000000}
1517     Error -10
1518     \x{2000000}\?
1519     No match
1520     \x{7fffffff}
1521     Error -10
1522     \x{7fffffff}\?
1523     No match
1524 ph10 190
1525 nigel 49 / End of testinput5 /

Properties

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

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12