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