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