Annotation of embedaddon/pcre/testdata/testoutput18-32, revision 1.1.1.1
1.1 misho 1: /-- This set of tests is for UTF-16 and UTF-32 support, and is relevant only to the
2: 16- and 32-bit library. --/
3:
4: /xxx/8?DZSS
5: **Failed: invalid UTF-8 string cannot be converted to UTF-32
6:
7: /abc/8
8: ]
9: **Failed: invalid UTF-8 string cannot be used as input in UTF mode
10:
11: /X(\C{3})/8
12: X\x{11234}Y
13: No match
14: X\x{11234}YZ
15: 0: X\x{11234}YZ
16: 1: \x{11234}YZ
17:
18: /X(\C{4})/8
19: X\x{11234}YZ
20: No match
21: X\x{11234}YZW
22: 0: X\x{11234}YZW
23: 1: \x{11234}YZW
24:
25: /X\C*/8
26: XYZabcdce
27: 0: XYZabcdce
28:
29: /X\C*?/8
30: XYZabcde
31: 0: X
32:
33: /X\C{3,5}/8
34: Xabcdefg
35: 0: Xabcde
36: X\x{11234}Y
37: No match
38: X\x{11234}YZ
39: 0: X\x{11234}YZ
40: X\x{11234}\x{512}
41: No match
42: X\x{11234}\x{512}YZ
43: 0: X\x{11234}\x{512}YZ
44: X\x{11234}\x{512}\x{11234}Z
45: 0: X\x{11234}\x{512}\x{11234}Z
46:
47: /X\C{3,5}?/8
48: Xabcdefg
49: 0: Xabc
50: X\x{11234}Y
51: No match
52: X\x{11234}YZ
53: 0: X\x{11234}YZ
54: X\x{11234}\x{512}YZ
55: 0: X\x{11234}\x{512}Y
56: *** Failers
57: No match
58: X\x{11234}
59: No match
60:
61: /a\Cb/8
62: aXb
63: 0: aXb
64: a\nb
65: 0: a\x{0a}b
66:
67: /a\C\Cb/8
68: a\x{12257}b
69: No match
70: a\x{12257}\x{11234}b
71: 0: a\x{12257}\x{11234}b
72: ** Failers
73: No match
74: a\x{100}b
75: No match
76:
77: /ab\Cde/8
78: abXde
79: 0: abXde
80:
81: /-- Check maximum character size --/
82:
83: /\x{ffff}/8DZ
84: ------------------------------------------------------------------
85: Bra
86: \x{ffff}
87: Ket
88: End
89: ------------------------------------------------------------------
90: Capturing subpattern count = 0
91: Options: utf
92: First char = \x{ffff}
93: No need char
94:
95: /\x{10000}/8DZ
96: ------------------------------------------------------------------
97: Bra
98: \x{10000}
99: Ket
100: End
101: ------------------------------------------------------------------
102: Capturing subpattern count = 0
103: Options: utf
104: First char = \x{10000}
105: No need char
106:
107: /\x{100}/8DZ
108: ------------------------------------------------------------------
109: Bra
110: \x{100}
111: Ket
112: End
113: ------------------------------------------------------------------
114: Capturing subpattern count = 0
115: Options: utf
116: First char = \x{100}
117: No need char
118:
119: /\x{1000}/8DZ
120: ------------------------------------------------------------------
121: Bra
122: \x{1000}
123: Ket
124: End
125: ------------------------------------------------------------------
126: Capturing subpattern count = 0
127: Options: utf
128: First char = \x{1000}
129: No need char
130:
131: /\x{10000}/8DZ
132: ------------------------------------------------------------------
133: Bra
134: \x{10000}
135: Ket
136: End
137: ------------------------------------------------------------------
138: Capturing subpattern count = 0
139: Options: utf
140: First char = \x{10000}
141: No need char
142:
143: /\x{100000}/8DZ
144: ------------------------------------------------------------------
145: Bra
146: \x{100000}
147: Ket
148: End
149: ------------------------------------------------------------------
150: Capturing subpattern count = 0
151: Options: utf
152: First char = \x{100000}
153: No need char
154:
155: /\x{10ffff}/8DZ
156: ------------------------------------------------------------------
157: Bra
158: \x{10ffff}
159: Ket
160: End
161: ------------------------------------------------------------------
162: Capturing subpattern count = 0
163: Options: utf
164: First char = \x{10ffff}
165: No need char
166:
167: /[\x{ff}]/8DZ
168: ------------------------------------------------------------------
169: Bra
170: \x{ff}
171: Ket
172: End
173: ------------------------------------------------------------------
174: Capturing subpattern count = 0
175: Options: utf
176: First char = \x{ff}
177: No need char
178:
179: /[\x{100}]/8DZ
180: ------------------------------------------------------------------
181: Bra
182: \x{100}
183: Ket
184: End
185: ------------------------------------------------------------------
186: Capturing subpattern count = 0
187: Options: utf
188: First char = \x{100}
189: No need char
190:
191: /\x80/8DZ
192: ------------------------------------------------------------------
193: Bra
194: \x80
195: Ket
196: End
197: ------------------------------------------------------------------
198: Capturing subpattern count = 0
199: Options: utf
200: First char = \x{80}
201: No need char
202:
203: /\xff/8DZ
204: ------------------------------------------------------------------
205: Bra
206: \x{ff}
207: Ket
208: End
209: ------------------------------------------------------------------
210: Capturing subpattern count = 0
211: Options: utf
212: First char = \x{ff}
213: No need char
214:
215: /\x{D55c}\x{ad6d}\x{C5B4}/DZ8
216: ------------------------------------------------------------------
217: Bra
218: \x{d55c}\x{ad6d}\x{c5b4}
219: Ket
220: End
221: ------------------------------------------------------------------
222: Capturing subpattern count = 0
223: Options: utf
224: First char = \x{d55c}
225: Need char = \x{c5b4}
226: \x{D55c}\x{ad6d}\x{C5B4}
227: 0: \x{d55c}\x{ad6d}\x{c5b4}
228:
229: /\x{65e5}\x{672c}\x{8a9e}/DZ8
230: ------------------------------------------------------------------
231: Bra
232: \x{65e5}\x{672c}\x{8a9e}
233: Ket
234: End
235: ------------------------------------------------------------------
236: Capturing subpattern count = 0
237: Options: utf
238: First char = \x{65e5}
239: Need char = \x{8a9e}
240: \x{65e5}\x{672c}\x{8a9e}
241: 0: \x{65e5}\x{672c}\x{8a9e}
242:
243: /\x{80}/DZ8
244: ------------------------------------------------------------------
245: Bra
246: \x80
247: Ket
248: End
249: ------------------------------------------------------------------
250: Capturing subpattern count = 0
251: Options: utf
252: First char = \x{80}
253: No need char
254:
255: /\x{084}/DZ8
256: ------------------------------------------------------------------
257: Bra
258: \x{84}
259: Ket
260: End
261: ------------------------------------------------------------------
262: Capturing subpattern count = 0
263: Options: utf
264: First char = \x{84}
265: No need char
266:
267: /\x{104}/DZ8
268: ------------------------------------------------------------------
269: Bra
270: \x{104}
271: Ket
272: End
273: ------------------------------------------------------------------
274: Capturing subpattern count = 0
275: Options: utf
276: First char = \x{104}
277: No need char
278:
279: /\x{861}/DZ8
280: ------------------------------------------------------------------
281: Bra
282: \x{861}
283: Ket
284: End
285: ------------------------------------------------------------------
286: Capturing subpattern count = 0
287: Options: utf
288: First char = \x{861}
289: No need char
290:
291: /\x{212ab}/DZ8
292: ------------------------------------------------------------------
293: Bra
294: \x{212ab}
295: Ket
296: End
297: ------------------------------------------------------------------
298: Capturing subpattern count = 0
299: Options: utf
300: First char = \x{212ab}
301: No need char
302:
303: /-- This one is here not because it's different to Perl, but because the way
304: the captured single-byte is displayed. (In Perl it becomes a character, and you
305: can't tell the difference.) --/
306:
307: /X(\C)(.*)/8
308: X\x{1234}
309: 0: X\x{1234}
310: 1: \x{1234}
311: 2:
312: X\nabc
313: 0: X\x{0a}abc
314: 1: \x{0a}
315: 2: abc
316:
317: /-- This one is here because Perl gives out a grumbly error message (quite
318: correctly, but that messes up comparisons). --/
319:
320: /a\Cb/8
321: *** Failers
322: No match
323: a\x{100}b
324: 0: a\x{100}b
325:
326: /[^ab\xC0-\xF0]/8SDZ
327: ------------------------------------------------------------------
328: Bra
329: [\x00-`c-\xbf\xf1-\xff] (neg)
330: Ket
331: End
332: ------------------------------------------------------------------
333: Capturing subpattern count = 0
334: Options: utf
335: No first char
336: No need char
337: Subject length lower bound = 1
338: Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
339: \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
340: \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
341: 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
342: 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
343: \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e
344: \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d
345: \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac
346: \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb
347: \xbc \xbd \xbe \xbf \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
348: \xfc \xfd \xfe \xff
349: \x{f1}
350: 0: \x{f1}
351: \x{bf}
352: 0: \x{bf}
353: \x{100}
354: 0: \x{100}
355: \x{1000}
356: 0: \x{1000}
357: *** Failers
358: 0: *
359: \x{c0}
360: No match
361: \x{f0}
362: No match
363:
364: /Ā{3,4}/8SDZ
365: ------------------------------------------------------------------
366: Bra
367: \x{100}{3}
368: \x{100}?
369: Ket
370: End
371: ------------------------------------------------------------------
372: Capturing subpattern count = 0
373: Options: utf
374: First char = \x{100}
375: Need char = \x{100}
376: Subject length lower bound = 3
377: No set of starting bytes
378: \x{100}\x{100}\x{100}\x{100\x{100}
379: 0: \x{100}\x{100}\x{100}
380:
381: /(\x{100}+|x)/8SDZ
382: ------------------------------------------------------------------
383: Bra
384: CBra 1
385: \x{100}+
386: Alt
387: x
388: Ket
389: Ket
390: End
391: ------------------------------------------------------------------
392: Capturing subpattern count = 1
393: Options: utf
394: No first char
395: No need char
396: Subject length lower bound = 1
397: Starting byte set: x \xff
398:
399: /(\x{100}*a|x)/8SDZ
400: ------------------------------------------------------------------
401: Bra
402: CBra 1
403: \x{100}*+
404: a
405: Alt
406: x
407: Ket
408: Ket
409: End
410: ------------------------------------------------------------------
411: Capturing subpattern count = 1
412: Options: utf
413: No first char
414: No need char
415: Subject length lower bound = 1
416: Starting byte set: a x \xff
417:
418: /(\x{100}{0,2}a|x)/8SDZ
419: ------------------------------------------------------------------
420: Bra
421: CBra 1
422: \x{100}{0,2}
423: a
424: Alt
425: x
426: Ket
427: Ket
428: End
429: ------------------------------------------------------------------
430: Capturing subpattern count = 1
431: Options: utf
432: No first char
433: No need char
434: Subject length lower bound = 1
435: Starting byte set: a x \xff
436:
437: /(\x{100}{1,2}a|x)/8SDZ
438: ------------------------------------------------------------------
439: Bra
440: CBra 1
441: \x{100}
442: \x{100}{0,1}
443: a
444: Alt
445: x
446: Ket
447: Ket
448: End
449: ------------------------------------------------------------------
450: Capturing subpattern count = 1
451: Options: utf
452: No first char
453: No need char
454: Subject length lower bound = 1
455: Starting byte set: x \xff
456:
457: /\x{100}/8DZ
458: ------------------------------------------------------------------
459: Bra
460: \x{100}
461: Ket
462: End
463: ------------------------------------------------------------------
464: Capturing subpattern count = 0
465: Options: utf
466: First char = \x{100}
467: No need char
468:
469: /a\x{100}\x{101}*/8DZ
470: ------------------------------------------------------------------
471: Bra
472: a\x{100}
473: \x{101}*
474: Ket
475: End
476: ------------------------------------------------------------------
477: Capturing subpattern count = 0
478: Options: utf
479: First char = 'a'
480: Need char = \x{100}
481:
482: /a\x{100}\x{101}+/8DZ
483: ------------------------------------------------------------------
484: Bra
485: a\x{100}
486: \x{101}+
487: Ket
488: End
489: ------------------------------------------------------------------
490: Capturing subpattern count = 0
491: Options: utf
492: First char = 'a'
493: Need char = \x{101}
494:
495: /[^\x{c4}]/DZ
496: ------------------------------------------------------------------
497: Bra
498: [^\x{c4}]
499: Ket
500: End
501: ------------------------------------------------------------------
502: Capturing subpattern count = 0
503: No options
504: No first char
505: No need char
506:
507: /[\x{100}]/8DZ
508: ------------------------------------------------------------------
509: Bra
510: \x{100}
511: Ket
512: End
513: ------------------------------------------------------------------
514: Capturing subpattern count = 0
515: Options: utf
516: First char = \x{100}
517: No need char
518: \x{100}
519: 0: \x{100}
520: Z\x{100}
521: 0: \x{100}
522: \x{100}Z
523: 0: \x{100}
524: *** Failers
525: No match
526:
527: /[\xff]/DZ8
528: ------------------------------------------------------------------
529: Bra
530: \x{ff}
531: Ket
532: End
533: ------------------------------------------------------------------
534: Capturing subpattern count = 0
535: Options: utf
536: First char = \x{ff}
537: No need char
538: >\x{ff}<
539: 0: \x{ff}
540:
541: /[^\xff]/8DZ
542: ------------------------------------------------------------------
543: Bra
544: [^\x{ff}]
545: Ket
546: End
547: ------------------------------------------------------------------
548: Capturing subpattern count = 0
549: Options: utf
550: No first char
551: No need char
552:
553: /\x{100}abc(xyz(?1))/8DZ
554: ------------------------------------------------------------------
555: Bra
556: \x{100}abc
557: CBra 1
558: xyz
559: Recurse
560: Ket
561: Ket
562: End
563: ------------------------------------------------------------------
564: Capturing subpattern count = 1
565: Options: utf
566: First char = \x{100}
567: Need char = 'z'
568:
569: /\777/8I
570: Capturing subpattern count = 0
571: Options: utf
572: First char = \x{1ff}
573: No need char
574: \x{1ff}
575: 0: \x{1ff}
576: \777
577: 0: \x{1ff}
578:
579: /\x{100}+\x{200}/8DZ
580: ------------------------------------------------------------------
581: Bra
582: \x{100}++
583: \x{200}
584: Ket
585: End
586: ------------------------------------------------------------------
587: Capturing subpattern count = 0
588: Options: utf
589: First char = \x{100}
590: Need char = \x{200}
591:
592: /\x{100}+X/8DZ
593: ------------------------------------------------------------------
594: Bra
595: \x{100}++
596: X
597: Ket
598: End
599: ------------------------------------------------------------------
600: Capturing subpattern count = 0
601: Options: utf
602: First char = \x{100}
603: Need char = 'X'
604:
605: /^[\QĀ\E-\QŐ\E/BZ8
606: Failed: missing terminating ] for character class at offset 13
607:
608: /X/8
609: \x{d800}
610: Error -10 (bad UTF-32 string) offset=0 reason=1
611: \x{d800}\?
612: No match
613: \x{da00}
614: Error -10 (bad UTF-32 string) offset=0 reason=1
615: \x{da00}\?
616: No match
617: \x{dc00}
618: Error -10 (bad UTF-32 string) offset=0 reason=1
619: \x{dc00}\?
620: No match
621: \x{de00}
622: Error -10 (bad UTF-32 string) offset=0 reason=1
623: \x{de00}\?
624: No match
625: \x{dfff}
626: Error -10 (bad UTF-32 string) offset=0 reason=1
627: \x{dfff}\?
628: No match
629: \x{110000}
630: Error -10 (bad UTF-32 string) offset=0 reason=3
631: \x{d800}\x{1234}
632: Error -10 (bad UTF-32 string) offset=0 reason=1
633:
634: /(*UTF16)\x{11234}/
635: Failed: (*VERB) not recognized or malformed at offset 5
636:
637: /(*UTF)\x{11234}/I
638: Capturing subpattern count = 0
639: Options: utf
640: First char = \x{11234}
641: No need char
642: abcd\x{11234}pqr
643: 0: \x{11234}
644:
645: /(*UTF-32)\x{11234}/
646: Failed: (*VERB) not recognized or malformed at offset 5
647:
648: /(*CRLF)(*UTF16)(*BSR_UNICODE)a\Rb/I
649: Failed: (*VERB) not recognized or malformed at offset 12
650:
651: /(*CRLF)(*UTF32)(*BSR_UNICODE)a\Rb/I
652: Capturing subpattern count = 0
653: Options: bsr_unicode utf
654: Forced newline sequence: CRLF
655: First char = 'a'
656: Need char = 'b'
657:
658: /\h/SI8
659: Capturing subpattern count = 0
660: Options: utf
661: No first char
662: No need char
663: Subject length lower bound = 1
664: Starting byte set: \x09 \x20 \xa0 \xff
665: ABC\x{09}
666: 0: \x{09}
667: ABC\x{20}
668: 0:
669: ABC\x{a0}
670: 0: \x{a0}
671: ABC\x{1680}
672: 0: \x{1680}
673: ABC\x{180e}
674: 0: \x{180e}
675: ABC\x{2000}
676: 0: \x{2000}
677: ABC\x{202f}
678: 0: \x{202f}
679: ABC\x{205f}
680: 0: \x{205f}
681: ABC\x{3000}
682: 0: \x{3000}
683:
684: /\v/SI8
685: Capturing subpattern count = 0
686: Options: utf
687: No first char
688: No need char
689: Subject length lower bound = 1
690: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff
691: ABC\x{0a}
692: 0: \x{0a}
693: ABC\x{0b}
694: 0: \x{0b}
695: ABC\x{0c}
696: 0: \x{0c}
697: ABC\x{0d}
698: 0: \x{0d}
699: ABC\x{85}
700: 0: \x{85}
701: ABC\x{2028}
702: 0: \x{2028}
703:
704: /\h*A/SI8
705: Capturing subpattern count = 0
706: Options: utf
707: No first char
708: Need char = 'A'
709: Subject length lower bound = 1
710: Starting byte set: \x09 \x20 A \xa0 \xff
711: CDBABC
712: 0: A
713: \x{2000}ABC
714: 0: \x{2000}A
715:
716: /\R*A/SI8
717: Capturing subpattern count = 0
718: Options: utf
719: No first char
720: Need char = 'A'
721: Subject length lower bound = 1
722: Starting byte set: \x0a \x0b \x0c \x0d A \x85 \xff
723: CDBABC
724: 0: A
725: \x{2028}A
726: 0: \x{2028}A
727:
728: /\v+A/SI8
729: Capturing subpattern count = 0
730: Options: utf
731: No first char
732: Need char = 'A'
733: Subject length lower bound = 2
734: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff
735:
736: /\s?xxx\s/8SI
737: Capturing subpattern count = 0
738: Options: utf
739: No first char
740: Need char = 'x'
741: Subject length lower bound = 4
742: Starting byte set: \x09 \x0a \x0c \x0d \x20 x
743:
744: /\sxxx\s/I8ST1
745: Capturing subpattern count = 0
746: Options: utf
747: No first char
748: Need char = 'x'
749: Subject length lower bound = 5
750: Starting byte set: \x09 \x0a \x0c \x0d \x20 \x85 \xa0
751: AB\x{85}xxx\x{a0}XYZ
752: 0: \x{85}xxx\x{a0}
753: AB\x{a0}xxx\x{85}XYZ
754: 0: \x{a0}xxx\x{85}
755:
756: /\S \S/I8ST1
757: Capturing subpattern count = 0
758: Options: utf
759: No first char
760: Need char = ' '
761: Subject length lower bound = 3
762: Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e
763: \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d
764: \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @
765: 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
766: f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83
767: \x84 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93
768: \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa1 \xa2 \xa3
769: \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2
770: \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1
771: \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0
772: \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf
773: \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee
774: \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd
775: \xfe \xff
776: \x{a2} \x{84}
777: 0: \x{a2} \x{84}
778: A Z
779: 0: A Z
780:
781: /a+/8
782: a\x{123}aa\>1
783: 0: aa
784: a\x{123}aa\>2
785: 0: aa
786: a\x{123}aa\>3
787: 0: a
788: a\x{123}aa\>4
789: No match
790: a\x{123}aa\>5
791: Error -24 (bad offset value)
792: a\x{123}aa\>6
793: Error -24 (bad offset value)
794:
795: /\x{1234}+/iS8I
796: Capturing subpattern count = 0
797: Options: caseless utf
798: First char = \x{1234}
799: No need char
800: Subject length lower bound = 1
801: No set of starting bytes
802:
803: /\x{1234}+?/iS8I
804: Capturing subpattern count = 0
805: Options: caseless utf
806: First char = \x{1234}
807: No need char
808: Subject length lower bound = 1
809: No set of starting bytes
810:
811: /\x{1234}++/iS8I
812: Capturing subpattern count = 0
813: Options: caseless utf
814: First char = \x{1234}
815: No need char
816: Subject length lower bound = 1
817: No set of starting bytes
818:
819: /\x{1234}{2}/iS8I
820: Capturing subpattern count = 0
821: Options: caseless utf
822: First char = \x{1234}
823: Need char = \x{1234}
824: Subject length lower bound = 2
825: No set of starting bytes
826:
827: /[^\x{c4}]/8DZ
828: ------------------------------------------------------------------
829: Bra
830: [^\x{c4}]
831: Ket
832: End
833: ------------------------------------------------------------------
834: Capturing subpattern count = 0
835: Options: utf
836: No first char
837: No need char
838:
839: /X+\x{200}/8DZ
840: ------------------------------------------------------------------
841: Bra
842: X++
843: \x{200}
844: Ket
845: End
846: ------------------------------------------------------------------
847: Capturing subpattern count = 0
848: Options: utf
849: First char = 'X'
850: Need char = \x{200}
851:
852: /\R/SI8
853: Capturing subpattern count = 0
854: Options: utf
855: No first char
856: No need char
857: Subject length lower bound = 1
858: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff
859:
860: /-- Check bad offset --/
861:
862: /a/8
863: \x{10000}\>1
864: No match
865: \x{10000}ab\>1
866: 0: a
867: \x{10000}ab\>2
868: No match
869: \x{10000}ab\>3
870: No match
871: \x{10000}ab\>4
872: Error -24 (bad offset value)
873: \x{10000}ab\>5
874: Error -24 (bad offset value)
875:
876: //8
877: **Failed: character value is ill-formed UTF-32
878:
879: /\w+\x{C4}/8BZ
880: ------------------------------------------------------------------
881: Bra
882: \w++
883: \x{c4}
884: Ket
885: End
886: ------------------------------------------------------------------
887: a\x{C4}\x{C4}
888: 0: a\x{c4}
889:
890: /\w+\x{C4}/8BZT1
891: ------------------------------------------------------------------
892: Bra
893: \w+
894: \x{c4}
895: Ket
896: End
897: ------------------------------------------------------------------
898: a\x{C4}\x{C4}
899: 0: a\x{c4}\x{c4}
900:
901: /\W+\x{C4}/8BZ
902: ------------------------------------------------------------------
903: Bra
904: \W+
905: \x{c4}
906: Ket
907: End
908: ------------------------------------------------------------------
909: !\x{C4}
910: 0: !\x{c4}
911:
912: /\W+\x{C4}/8BZT1
913: ------------------------------------------------------------------
914: Bra
915: \W++
916: \x{c4}
917: Ket
918: End
919: ------------------------------------------------------------------
920: !\x{C4}
921: 0: !\x{c4}
922:
923: /\W+\x{A1}/8BZ
924: ------------------------------------------------------------------
925: Bra
926: \W+
927: \x{a1}
928: Ket
929: End
930: ------------------------------------------------------------------
931: !\x{A1}
932: 0: !\x{a1}
933:
934: /\W+\x{A1}/8BZT1
935: ------------------------------------------------------------------
936: Bra
937: \W+
938: \x{a1}
939: Ket
940: End
941: ------------------------------------------------------------------
942: !\x{A1}
943: 0: !\x{a1}
944:
945: /X\s+\x{A0}/8BZ
946: ------------------------------------------------------------------
947: Bra
948: X
949: \s++
950: \x{a0}
951: Ket
952: End
953: ------------------------------------------------------------------
954: X\x20\x{A0}\x{A0}
955: 0: X \x{a0}
956:
957: /X\s+\x{A0}/8BZT1
958: ------------------------------------------------------------------
959: Bra
960: X
961: \s+
962: \x{a0}
963: Ket
964: End
965: ------------------------------------------------------------------
966: X\x20\x{A0}\x{A0}
967: 0: X \x{a0}\x{a0}
968:
969: /\S+\x{A0}/8BZ
970: ------------------------------------------------------------------
971: Bra
972: \S+
973: \x{a0}
974: Ket
975: End
976: ------------------------------------------------------------------
977: X\x{A0}\x{A0}
978: 0: X\x{a0}\x{a0}
979:
980: /\S+\x{A0}/8BZT1
981: ------------------------------------------------------------------
982: Bra
983: \S++
984: \x{a0}
985: Ket
986: End
987: ------------------------------------------------------------------
988: X\x{A0}\x{A0}
989: 0: X\x{a0}
990:
991: /\x{a0}+\s!/8BZ
992: ------------------------------------------------------------------
993: Bra
994: \x{a0}++
995: \s
996: !
997: Ket
998: End
999: ------------------------------------------------------------------
1000: \x{a0}\x20!
1001: 0: \x{a0} !
1002:
1003: /\x{a0}+\s!/8BZT1
1004: ------------------------------------------------------------------
1005: Bra
1006: \x{a0}+
1007: \s
1008: !
1009: Ket
1010: End
1011: ------------------------------------------------------------------
1012: \x{a0}\x20!
1013: 0: \x{a0} !
1014:
1015: /(*UTF)abc/9
1016: Failed: setting UTF is disabled by the application at offset 0
1017:
1018: /abc/89
1019: Failed: setting UTF is disabled by the application at offset 0
1020:
1021: /-- End of testinput18 --/
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>