Tristan Matthews | 0461646 | 2013-11-14 16:09:34 -0500 | [diff] [blame] | 1 | /-- This set of tests checks the API, internals, and non-Perl stuff for UTF-8 |
| 2 | support, excluding Unicode properties. --/ |
| 3 | |
| 4 | /\x{100}/8DZ |
| 5 | |
| 6 | /\x{1000}/8DZ |
| 7 | |
| 8 | /\x{10000}/8DZ |
| 9 | |
| 10 | /\x{100000}/8DZ |
| 11 | |
| 12 | /\x{1000000}/8DZ |
| 13 | |
| 14 | /\x{4000000}/8DZ |
| 15 | |
| 16 | /\x{7fffFFFF}/8DZ |
| 17 | |
| 18 | /[\x{ff}]/8DZ |
| 19 | |
| 20 | /[\x{100}]/8DZ |
| 21 | |
| 22 | /\x{ffffffff}/8 |
| 23 | |
| 24 | /\x{100000000}/8 |
| 25 | |
| 26 | /^\x{100}a\x{1234}/8 |
| 27 | \x{100}a\x{1234}bcd |
| 28 | |
| 29 | /\x80/8DZ |
| 30 | |
| 31 | /\xff/8DZ |
| 32 | |
| 33 | /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8 |
| 34 | \x{0041}\x{2262}\x{0391}\x{002e} |
| 35 | |
| 36 | /\x{D55c}\x{ad6d}\x{C5B4}/DZ8 |
| 37 | \x{D55c}\x{ad6d}\x{C5B4} |
| 38 | |
| 39 | /\x{65e5}\x{672c}\x{8a9e}/DZ8 |
| 40 | \x{65e5}\x{672c}\x{8a9e} |
| 41 | |
| 42 | /\x{80}/DZ8 |
| 43 | |
| 44 | /\x{084}/DZ8 |
| 45 | |
| 46 | /\x{104}/DZ8 |
| 47 | |
| 48 | /\x{861}/DZ8 |
| 49 | |
| 50 | /\x{212ab}/DZ8 |
| 51 | |
| 52 | /.{3,5}X/DZ8 |
| 53 | \x{212ab}\x{212ab}\x{212ab}\x{861}X |
| 54 | |
| 55 | |
| 56 | /.{3,5}?/DZ8 |
| 57 | \x{212ab}\x{212ab}\x{212ab}\x{861} |
| 58 | |
| 59 | /(?<=\C)X/8 |
| 60 | Should produce an error diagnostic |
| 61 | |
| 62 | /-- This one is here not because it's different to Perl, but because the way |
| 63 | the captured single-byte is displayed. (In Perl it becomes a character, and you |
| 64 | can't tell the difference.) --/ |
| 65 | |
| 66 | /X(\C)(.*)/8 |
| 67 | X\x{1234} |
| 68 | X\nabc |
| 69 | |
| 70 | /-- This one is here because Perl gives out a grumbly error message (quite |
| 71 | correctly, but that messes up comparisons). --/ |
| 72 | |
| 73 | /a\Cb/8 |
| 74 | *** Failers |
| 75 | a\x{100}b |
| 76 | |
| 77 | /^[ab]/8DZ |
| 78 | bar |
| 79 | *** Failers |
| 80 | c |
| 81 | \x{ff} |
| 82 | \x{100} |
| 83 | |
| 84 | /^[^ab]/8DZ |
| 85 | c |
| 86 | \x{ff} |
| 87 | \x{100} |
| 88 | *** Failers |
| 89 | aaa |
| 90 | |
| 91 | /[^ab\xC0-\xF0]/8SDZ |
| 92 | \x{f1} |
| 93 | \x{bf} |
| 94 | \x{100} |
| 95 | \x{1000} |
| 96 | *** Failers |
| 97 | \x{c0} |
| 98 | \x{f0} |
| 99 | |
| 100 | /Ä{3,4}/8SDZ |
| 101 | \x{100}\x{100}\x{100}\x{100\x{100} |
| 102 | |
| 103 | /(\x{100}+|x)/8SDZ |
| 104 | |
| 105 | /(\x{100}*a|x)/8SDZ |
| 106 | |
| 107 | /(\x{100}{0,2}a|x)/8SDZ |
| 108 | |
| 109 | /(\x{100}{1,2}a|x)/8SDZ |
| 110 | |
| 111 | /\x{100}*(\d+|"(?1)")/8 |
| 112 | 1234 |
| 113 | "1234" |
| 114 | \x{100}1234 |
| 115 | "\x{100}1234" |
| 116 | \x{100}\x{100}12ab |
| 117 | \x{100}\x{100}"12" |
| 118 | *** Failers |
| 119 | \x{100}\x{100}abcd |
| 120 | |
| 121 | /\x{100}/8DZ |
| 122 | |
| 123 | /\x{100}*/8DZ |
| 124 | |
| 125 | /a\x{100}*/8DZ |
| 126 | |
| 127 | /ab\x{100}*/8DZ |
| 128 | |
| 129 | /a\x{100}\x{101}*/8DZ |
| 130 | |
| 131 | /a\x{100}\x{101}+/8DZ |
| 132 | |
| 133 | /\x{100}*A/8DZ |
| 134 | A |
| 135 | |
| 136 | /\x{100}*\d(?R)/8DZ |
| 137 | |
| 138 | /[^\x{c4}]/DZ |
| 139 | |
| 140 | /[^\x{c4}]/8DZ |
| 141 | |
| 142 | /[\x{100}]/8DZ |
| 143 | \x{100} |
| 144 | Z\x{100} |
| 145 | \x{100}Z |
| 146 | *** Failers |
| 147 | |
| 148 | /[Z\x{100}]/8DZ |
| 149 | Z\x{100} |
| 150 | \x{100} |
| 151 | \x{100}Z |
| 152 | *** Failers |
| 153 | |
| 154 | /[\x{200}-\x{100}]/8 |
| 155 | |
| 156 | /[Ä-Ä]/8 |
| 157 | \x{100} |
| 158 | \x{104} |
| 159 | *** Failers |
| 160 | \x{105} |
| 161 | \x{ff} |
| 162 | |
| 163 | /[z-\x{100}]/8DZ |
| 164 | |
| 165 | /[z\Qa-d]Ä\E]/8DZ |
| 166 | \x{100} |
| 167 | Ä |
| 168 | |
| 169 | /[\xFF]/DZ |
| 170 | >\xff< |
| 171 | |
| 172 | /[\xff]/DZ8 |
| 173 | >\x{ff}< |
| 174 | |
| 175 | /[^\xFF]/DZ |
| 176 | |
| 177 | /[^\xff]/8DZ |
| 178 | |
| 179 | /[Ã-Ã]/8 |
| 180 | Ã # Matches without Study |
| 181 | \x{d6} |
| 182 | |
| 183 | /[Ã-Ã]/8S |
| 184 | Ã <-- Same with Study |
| 185 | \x{d6} |
| 186 | |
| 187 | /[\x{c4}-\x{dc}]/8 |
| 188 | Ã # Matches without Study |
| 189 | \x{d6} |
| 190 | |
| 191 | /[\x{c4}-\x{dc}]/8S |
| 192 | Ã <-- Same with Study |
| 193 | \x{d6} |
| 194 | |
| 195 | /[Ã]/8 |
| 196 | |
| 197 | /Ã/8 |
| 198 | |
| 199 | /ÃÃÃxxx/8 |
| 200 | |
| 201 | /ÃÃÃxxx/8?DZSS |
| 202 | |
| 203 | /abc/8 |
| 204 | Ã] |
| 205 | Ã |
| 206 | ÃÃÃ |
| 207 | ÃÃÃ\? |
| 208 | \xe1\x88 |
| 209 | \P\xe1\x88 |
| 210 | \P\P\xe1\x88 |
| 211 | XX\xea |
| 212 | \O0XX\xea |
| 213 | \O1XX\xea |
| 214 | \O2XX\xea |
| 215 | XX\xf1 |
| 216 | XX\xf8 |
| 217 | XX\xfc |
| 218 | ZZ\xea\xaf\x20YY |
| 219 | ZZ\xfd\xbf\xbf\x2f\xbf\xbfYY |
| 220 | ZZ\xfd\xbf\xbf\xbf\x2f\xbfYY |
| 221 | ZZ\xfd\xbf\xbf\xbf\xbf\x2fYY |
| 222 | ZZ\xffYY |
| 223 | ZZ\xfeYY |
| 224 | |
| 225 | /anything/8 |
| 226 | \xc0\x80 |
| 227 | \xc1\x8f |
| 228 | \xe0\x9f\x80 |
| 229 | \xf0\x8f\x80\x80 |
| 230 | \xf8\x87\x80\x80\x80 |
| 231 | \xfc\x83\x80\x80\x80\x80 |
| 232 | \xfe\x80\x80\x80\x80\x80 |
| 233 | \xff\x80\x80\x80\x80\x80 |
| 234 | \xc3\x8f |
| 235 | \xe0\xaf\x80 |
| 236 | \xe1\x80\x80 |
| 237 | \xf0\x9f\x80\x80 |
| 238 | \xf1\x8f\x80\x80 |
| 239 | \xf8\x88\x80\x80\x80 |
| 240 | \xf9\x87\x80\x80\x80 |
| 241 | \xfc\x84\x80\x80\x80\x80 |
| 242 | \xfd\x83\x80\x80\x80\x80 |
| 243 | \?\xf8\x88\x80\x80\x80 |
| 244 | \?\xf9\x87\x80\x80\x80 |
| 245 | \?\xfc\x84\x80\x80\x80\x80 |
| 246 | \?\xfd\x83\x80\x80\x80\x80 |
| 247 | |
| 248 | /\x{100}abc(xyz(?1))/8DZ |
| 249 | |
| 250 | /[^\x{100}]abc(xyz(?1))/8DZ |
| 251 | |
| 252 | /[ab\x{100}]abc(xyz(?1))/8DZ |
| 253 | |
| 254 | /(\x{100}(b(?2)c))?/DZ8 |
| 255 | |
| 256 | /(\x{100}(b(?2)c)){0,2}/DZ8 |
| 257 | |
| 258 | /(\x{100}(b(?1)c))?/DZ8 |
| 259 | |
| 260 | /(\x{100}(b(?1)c)){0,2}/DZ8 |
| 261 | |
| 262 | /\W/8 |
| 263 | A.B |
| 264 | A\x{100}B |
| 265 | |
| 266 | /\w/8 |
| 267 | \x{100}X |
| 268 | |
| 269 | /a\x{1234}b/P8 |
| 270 | a\x{1234}b |
| 271 | |
| 272 | /^\á´/8DZ |
| 273 | |
| 274 | /\777/I |
| 275 | |
| 276 | /\777/8I |
| 277 | \x{1ff} |
| 278 | \777 |
| 279 | |
| 280 | /\x{100}*\d/8DZ |
| 281 | |
| 282 | /\x{100}*\s/8DZ |
| 283 | |
| 284 | /\x{100}*\w/8DZ |
| 285 | |
| 286 | /\x{100}*\D/8DZ |
| 287 | |
| 288 | /\x{100}*\S/8DZ |
| 289 | |
| 290 | /\x{100}*\W/8DZ |
| 291 | |
| 292 | /\x{100}+\x{200}/8DZ |
| 293 | |
| 294 | /\x{100}+X/8DZ |
| 295 | |
| 296 | /X+\x{200}/8DZ |
| 297 | |
| 298 | /()()()()()()()()()() |
| 299 | ()()()()()()()()()() |
| 300 | ()()()()()()()()()() |
| 301 | ()()()()()()()()()() |
| 302 | A (x) (?41) B/8x |
| 303 | AxxB |
| 304 | |
| 305 | /^[\x{100}\E-\Q\E\x{150}]/BZ8 |
| 306 | |
| 307 | /^[\QÄ\E-\QÅ\E]/BZ8 |
| 308 | |
| 309 | /^[\QÄ\E-\QÅ\E/BZ8 |
| 310 | |
| 311 | /^abc./mgx8<any> |
| 312 | abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK |
| 313 | |
| 314 | /abc.$/mgx8<any> |
| 315 | abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9 |
| 316 | |
| 317 | /^a\Rb/8<bsr_unicode> |
| 318 | a\nb |
| 319 | a\rb |
| 320 | a\r\nb |
| 321 | a\x0bb |
| 322 | a\x0cb |
| 323 | a\x{85}b |
| 324 | a\x{2028}b |
| 325 | a\x{2029}b |
| 326 | ** Failers |
| 327 | a\n\rb |
| 328 | |
| 329 | /^a\R*b/8<bsr_unicode> |
| 330 | ab |
| 331 | a\nb |
| 332 | a\rb |
| 333 | a\r\nb |
| 334 | a\x0bb |
| 335 | a\x0c\x{2028}\x{2029}b |
| 336 | a\x{85}b |
| 337 | a\n\rb |
| 338 | a\n\r\x{85}\x0cb |
| 339 | |
| 340 | /^a\R+b/8<bsr_unicode> |
| 341 | a\nb |
| 342 | a\rb |
| 343 | a\r\nb |
| 344 | a\x0bb |
| 345 | a\x0c\x{2028}\x{2029}b |
| 346 | a\x{85}b |
| 347 | a\n\rb |
| 348 | a\n\r\x{85}\x0cb |
| 349 | ** Failers |
| 350 | ab |
| 351 | |
| 352 | /^a\R{1,3}b/8<bsr_unicode> |
| 353 | a\nb |
| 354 | a\n\rb |
| 355 | a\n\r\x{85}b |
| 356 | a\r\n\r\nb |
| 357 | a\r\n\r\n\r\nb |
| 358 | a\n\r\n\rb |
| 359 | a\n\n\r\nb |
| 360 | ** Failers |
| 361 | a\n\n\n\rb |
| 362 | a\r |
| 363 | |
| 364 | /\H\h\V\v/8 |
| 365 | X X\x0a |
| 366 | X\x09X\x0b |
| 367 | ** Failers |
| 368 | \x{a0} X\x0a |
| 369 | |
| 370 | /\H*\h+\V?\v{3,4}/8 |
| 371 | \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a |
| 372 | \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a |
| 373 | \x09\x20\x{a0}\x0a\x0b\x0c |
| 374 | ** Failers |
| 375 | \x09\x20\x{a0}\x0a\x0b |
| 376 | |
| 377 | /\H\h\V\v/8 |
| 378 | \x{3001}\x{3000}\x{2030}\x{2028} |
| 379 | X\x{180e}X\x{85} |
| 380 | ** Failers |
| 381 | \x{2009} X\x0a |
| 382 | |
| 383 | /\H*\h+\V?\v{3,4}/8 |
| 384 | \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a |
| 385 | \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a |
| 386 | \x09\x20\x{202f}\x0a\x0b\x0c |
| 387 | ** Failers |
| 388 | \x09\x{200a}\x{a0}\x{2028}\x0b |
| 389 | |
| 390 | /[\h]/8BZ |
| 391 | >\x{1680} |
| 392 | |
| 393 | /[\h]{3,}/8BZ |
| 394 | >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}< |
| 395 | |
| 396 | /[\v]/8BZ |
| 397 | |
| 398 | /[\H]/8BZ |
| 399 | |
| 400 | /[\V]/8BZ |
| 401 | |
| 402 | /.*$/8<any> |
| 403 | \x{1ec5} |
| 404 | |
| 405 | /-- This tests the stricter UTF-8 check according to RFC 3629. --/ |
| 406 | |
| 407 | /X/8 |
| 408 | \x{0}\x{d7ff}\x{e000}\x{10ffff} |
| 409 | \x{d800} |
| 410 | \x{d800}\? |
| 411 | \x{da00} |
| 412 | \x{da00}\? |
| 413 | \x{dfff} |
| 414 | \x{dfff}\? |
| 415 | \x{110000} |
| 416 | \x{110000}\? |
| 417 | \x{2000000} |
| 418 | \x{2000000}\? |
| 419 | \x{7fffffff} |
| 420 | \x{7fffffff}\? |
| 421 | |
| 422 | /a\Rb/I8<bsr_anycrlf> |
| 423 | a\rb |
| 424 | a\nb |
| 425 | a\r\nb |
| 426 | ** Failers |
| 427 | a\x{85}b |
| 428 | a\x0bb |
| 429 | |
| 430 | /a\Rb/I8<bsr_unicode> |
| 431 | a\rb |
| 432 | a\nb |
| 433 | a\r\nb |
| 434 | a\x{85}b |
| 435 | a\x0bb |
| 436 | ** Failers |
| 437 | a\x{85}b\<bsr_anycrlf> |
| 438 | a\x0bb\<bsr_anycrlf> |
| 439 | |
| 440 | /a\R?b/I8<bsr_anycrlf> |
| 441 | a\rb |
| 442 | a\nb |
| 443 | a\r\nb |
| 444 | ** Failers |
| 445 | a\x{85}b |
| 446 | a\x0bb |
| 447 | |
| 448 | /a\R?b/I8<bsr_unicode> |
| 449 | a\rb |
| 450 | a\nb |
| 451 | a\r\nb |
| 452 | a\x{85}b |
| 453 | a\x0bb |
| 454 | ** Failers |
| 455 | a\x{85}b\<bsr_anycrlf> |
| 456 | a\x0bb\<bsr_anycrlf> |
| 457 | |
| 458 | /.*a.*=.b.*/8<ANY> |
| 459 | QQQ\x{2029}ABCaXYZ=!bPQR |
| 460 | ** Failers |
| 461 | a\x{2029}b |
| 462 | \x61\xe2\x80\xa9\x62 |
| 463 | |
| 464 | /[[:a\x{100}b:]]/8 |
| 465 | |
| 466 | /a[^]b/<JS>8 |
| 467 | a\x{1234}b |
| 468 | a\nb |
| 469 | ** Failers |
| 470 | ab |
| 471 | |
| 472 | /a[^]+b/<JS>8 |
| 473 | aXb |
| 474 | a\nX\nX\x{1234}b |
| 475 | ** Failers |
| 476 | ab |
| 477 | |
| 478 | /(\x{de})\1/ |
| 479 | \x{de}\x{de} |
| 480 | \x{123} |
| 481 | |
| 482 | /X/8f<any> |
| 483 | A\x{1ec5}ABCXYZ |
| 484 | |
| 485 | /(*UTF8)\x{1234}/ |
| 486 | abcd\x{1234}pqr |
| 487 | |
| 488 | /(*CRLF)(*UTF8)(*BSR_UNICODE)a\Rb/I |
| 489 | |
| 490 | /Xa{2,4}b/8 |
| 491 | X\P |
| 492 | Xa\P |
| 493 | Xaa\P |
| 494 | Xaaa\P |
| 495 | Xaaaa\P |
| 496 | |
| 497 | /Xa{2,4}?b/8 |
| 498 | X\P |
| 499 | Xa\P |
| 500 | Xaa\P |
| 501 | Xaaa\P |
| 502 | Xaaaa\P |
| 503 | |
| 504 | /Xa{2,4}+b/8 |
| 505 | X\P |
| 506 | Xa\P |
| 507 | Xaa\P |
| 508 | Xaaa\P |
| 509 | Xaaaa\P |
| 510 | |
| 511 | /X\x{123}{2,4}b/8 |
| 512 | X\P |
| 513 | X\x{123}\P |
| 514 | X\x{123}\x{123}\P |
| 515 | X\x{123}\x{123}\x{123}\P |
| 516 | X\x{123}\x{123}\x{123}\x{123}\P |
| 517 | |
| 518 | /X\x{123}{2,4}?b/8 |
| 519 | X\P |
| 520 | X\x{123}\P |
| 521 | X\x{123}\x{123}\P |
| 522 | X\x{123}\x{123}\x{123}\P |
| 523 | X\x{123}\x{123}\x{123}\x{123}\P |
| 524 | |
| 525 | /X\x{123}{2,4}+b/8 |
| 526 | X\P |
| 527 | X\x{123}\P |
| 528 | X\x{123}\x{123}\P |
| 529 | X\x{123}\x{123}\x{123}\P |
| 530 | X\x{123}\x{123}\x{123}\x{123}\P |
| 531 | |
| 532 | /X\x{123}{2,4}b/8 |
| 533 | Xx\P |
| 534 | X\x{123}x\P |
| 535 | X\x{123}\x{123}x\P |
| 536 | X\x{123}\x{123}\x{123}x\P |
| 537 | X\x{123}\x{123}\x{123}\x{123}x\P |
| 538 | |
| 539 | /X\x{123}{2,4}?b/8 |
| 540 | Xx\P |
| 541 | X\x{123}x\P |
| 542 | X\x{123}\x{123}x\P |
| 543 | X\x{123}\x{123}\x{123}x\P |
| 544 | X\x{123}\x{123}\x{123}\x{123}x\P |
| 545 | |
| 546 | /X\x{123}{2,4}+b/8 |
| 547 | Xx\P |
| 548 | X\x{123}x\P |
| 549 | X\x{123}\x{123}x\P |
| 550 | X\x{123}\x{123}\x{123}x\P |
| 551 | X\x{123}\x{123}\x{123}\x{123}x\P |
| 552 | |
| 553 | /X\d{2,4}b/8 |
| 554 | X\P |
| 555 | X3\P |
| 556 | X33\P |
| 557 | X333\P |
| 558 | X3333\P |
| 559 | |
| 560 | /X\d{2,4}?b/8 |
| 561 | X\P |
| 562 | X3\P |
| 563 | X33\P |
| 564 | X333\P |
| 565 | X3333\P |
| 566 | |
| 567 | /X\d{2,4}+b/8 |
| 568 | X\P |
| 569 | X3\P |
| 570 | X33\P |
| 571 | X333\P |
| 572 | X3333\P |
| 573 | |
| 574 | /X\D{2,4}b/8 |
| 575 | X\P |
| 576 | Xa\P |
| 577 | Xaa\P |
| 578 | Xaaa\P |
| 579 | Xaaaa\P |
| 580 | |
| 581 | /X\D{2,4}?b/8 |
| 582 | X\P |
| 583 | Xa\P |
| 584 | Xaa\P |
| 585 | Xaaa\P |
| 586 | Xaaaa\P |
| 587 | |
| 588 | /X\D{2,4}+b/8 |
| 589 | X\P |
| 590 | Xa\P |
| 591 | Xaa\P |
| 592 | Xaaa\P |
| 593 | Xaaaa\P |
| 594 | |
| 595 | /X\D{2,4}b/8 |
| 596 | X\P |
| 597 | X\x{123}\P |
| 598 | X\x{123}\x{123}\P |
| 599 | X\x{123}\x{123}\x{123}\P |
| 600 | X\x{123}\x{123}\x{123}\x{123}\P |
| 601 | |
| 602 | /X\D{2,4}?b/8 |
| 603 | X\P |
| 604 | X\x{123}\P |
| 605 | X\x{123}\x{123}\P |
| 606 | X\x{123}\x{123}\x{123}\P |
| 607 | X\x{123}\x{123}\x{123}\x{123}\P |
| 608 | |
| 609 | /X\D{2,4}+b/8 |
| 610 | X\P |
| 611 | X\x{123}\P |
| 612 | X\x{123}\x{123}\P |
| 613 | X\x{123}\x{123}\x{123}\P |
| 614 | X\x{123}\x{123}\x{123}\x{123}\P |
| 615 | |
| 616 | /X[abc]{2,4}b/8 |
| 617 | X\P |
| 618 | Xa\P |
| 619 | Xaa\P |
| 620 | Xaaa\P |
| 621 | Xaaaa\P |
| 622 | |
| 623 | /X[abc]{2,4}?b/8 |
| 624 | X\P |
| 625 | Xa\P |
| 626 | Xaa\P |
| 627 | Xaaa\P |
| 628 | Xaaaa\P |
| 629 | |
| 630 | /X[abc]{2,4}+b/8 |
| 631 | X\P |
| 632 | Xa\P |
| 633 | Xaa\P |
| 634 | Xaaa\P |
| 635 | Xaaaa\P |
| 636 | |
| 637 | /X[abc\x{123}]{2,4}b/8 |
| 638 | X\P |
| 639 | X\x{123}\P |
| 640 | X\x{123}\x{123}\P |
| 641 | X\x{123}\x{123}\x{123}\P |
| 642 | X\x{123}\x{123}\x{123}\x{123}\P |
| 643 | |
| 644 | /X[abc\x{123}]{2,4}?b/8 |
| 645 | X\P |
| 646 | X\x{123}\P |
| 647 | X\x{123}\x{123}\P |
| 648 | X\x{123}\x{123}\x{123}\P |
| 649 | X\x{123}\x{123}\x{123}\x{123}\P |
| 650 | |
| 651 | /X[abc\x{123}]{2,4}+b/8 |
| 652 | X\P |
| 653 | X\x{123}\P |
| 654 | X\x{123}\x{123}\P |
| 655 | X\x{123}\x{123}\x{123}\P |
| 656 | X\x{123}\x{123}\x{123}\x{123}\P |
| 657 | |
| 658 | /X[^a]{2,4}b/8 |
| 659 | X\P |
| 660 | Xz\P |
| 661 | Xzz\P |
| 662 | Xzzz\P |
| 663 | Xzzzz\P |
| 664 | |
| 665 | /X[^a]{2,4}?b/8 |
| 666 | X\P |
| 667 | Xz\P |
| 668 | Xzz\P |
| 669 | Xzzz\P |
| 670 | Xzzzz\P |
| 671 | |
| 672 | /X[^a]{2,4}+b/8 |
| 673 | X\P |
| 674 | Xz\P |
| 675 | Xzz\P |
| 676 | Xzzz\P |
| 677 | Xzzzz\P |
| 678 | |
| 679 | /X[^a]{2,4}b/8 |
| 680 | X\P |
| 681 | X\x{123}\P |
| 682 | X\x{123}\x{123}\P |
| 683 | X\x{123}\x{123}\x{123}\P |
| 684 | X\x{123}\x{123}\x{123}\x{123}\P |
| 685 | |
| 686 | /X[^a]{2,4}?b/8 |
| 687 | X\P |
| 688 | X\x{123}\P |
| 689 | X\x{123}\x{123}\P |
| 690 | X\x{123}\x{123}\x{123}\P |
| 691 | X\x{123}\x{123}\x{123}\x{123}\P |
| 692 | |
| 693 | /X[^a]{2,4}+b/8 |
| 694 | X\P |
| 695 | X\x{123}\P |
| 696 | X\x{123}\x{123}\P |
| 697 | X\x{123}\x{123}\x{123}\P |
| 698 | X\x{123}\x{123}\x{123}\x{123}\P |
| 699 | |
| 700 | /(Y)X\1{2,4}b/8 |
| 701 | YX\P |
| 702 | YXY\P |
| 703 | YXYY\P |
| 704 | YXYYY\P |
| 705 | YXYYYY\P |
| 706 | |
| 707 | /(Y)X\1{2,4}?b/8 |
| 708 | YX\P |
| 709 | YXY\P |
| 710 | YXYY\P |
| 711 | YXYYY\P |
| 712 | YXYYYY\P |
| 713 | |
| 714 | /(Y)X\1{2,4}+b/8 |
| 715 | YX\P |
| 716 | YXY\P |
| 717 | YXYY\P |
| 718 | YXYYY\P |
| 719 | YXYYYY\P |
| 720 | |
| 721 | /(\x{123})X\1{2,4}b/8 |
| 722 | \x{123}X\P |
| 723 | \x{123}X\x{123}\P |
| 724 | \x{123}X\x{123}\x{123}\P |
| 725 | \x{123}X\x{123}\x{123}\x{123}\P |
| 726 | \x{123}X\x{123}\x{123}\x{123}\x{123}\P |
| 727 | |
| 728 | /(\x{123})X\1{2,4}?b/8 |
| 729 | \x{123}X\P |
| 730 | \x{123}X\x{123}\P |
| 731 | \x{123}X\x{123}\x{123}\P |
| 732 | \x{123}X\x{123}\x{123}\x{123}\P |
| 733 | \x{123}X\x{123}\x{123}\x{123}\x{123}\P |
| 734 | |
| 735 | /(\x{123})X\1{2,4}+b/8 |
| 736 | \x{123}X\P |
| 737 | \x{123}X\x{123}\P |
| 738 | \x{123}X\x{123}\x{123}\P |
| 739 | \x{123}X\x{123}\x{123}\x{123}\P |
| 740 | \x{123}X\x{123}\x{123}\x{123}\x{123}\P |
| 741 | |
| 742 | /\bthe cat\b/8 |
| 743 | the cat\P |
| 744 | the cat\P\P |
| 745 | |
| 746 | /abcd*/8 |
| 747 | xxxxabcd\P |
| 748 | xxxxabcd\P\P |
| 749 | |
| 750 | /abcd*/i8 |
| 751 | xxxxabcd\P |
| 752 | xxxxabcd\P\P |
| 753 | XXXXABCD\P |
| 754 | XXXXABCD\P\P |
| 755 | |
| 756 | /abc\d*/8 |
| 757 | xxxxabc1\P |
| 758 | xxxxabc1\P\P |
| 759 | |
| 760 | /(a)bc\1*/8 |
| 761 | xxxxabca\P |
| 762 | xxxxabca\P\P |
| 763 | |
| 764 | /abc[de]*/8 |
| 765 | xxxxabcde\P |
| 766 | xxxxabcde\P\P |
| 767 | |
| 768 | /X\W{3}X/8 |
| 769 | \PX |
| 770 | |
| 771 | /\h/SI |
| 772 | |
| 773 | /\h/SI8 |
| 774 | ABC\x{09} |
| 775 | ABC\x{20} |
| 776 | ABC\x{a0} |
| 777 | ABC\x{1680} |
| 778 | ABC\x{180e} |
| 779 | ABC\x{2000} |
| 780 | ABC\x{202f} |
| 781 | ABC\x{205f} |
| 782 | ABC\x{3000} |
| 783 | |
| 784 | /\v/SI |
| 785 | |
| 786 | /\v/SI8 |
| 787 | ABC\x{0a} |
| 788 | ABC\x{0b} |
| 789 | ABC\x{0c} |
| 790 | ABC\x{0d} |
| 791 | ABC\x{85} |
| 792 | ABC\x{2028} |
| 793 | |
| 794 | /\R/SI |
| 795 | |
| 796 | /\R/SI8 |
| 797 | |
| 798 | /\h*A/SI8 |
| 799 | CDBABC |
| 800 | |
| 801 | /\v+A/SI8 |
| 802 | |
| 803 | /\s?xxx\s/8SI |
| 804 | |
| 805 | /\sxxx\s/8T1 |
| 806 | AB\x{85}xxx\x{a0}XYZ |
| 807 | AB\x{a0}xxx\x{85}XYZ |
| 808 | |
| 809 | /\sxxx\s/I8ST1 |
| 810 | AB\x{85}xxx\x{a0}XYZ |
| 811 | AB\x{a0}xxx\x{85}XYZ |
| 812 | |
| 813 | /\S \S/8T1 |
| 814 | \x{a2} \x{84} |
| 815 | |
| 816 | /\S \S/I8ST1 |
| 817 | \x{a2} \x{84} |
| 818 | A Z |
| 819 | |
| 820 | 'A#Ñ
Ñ'8x<any>BZ |
| 821 | |
| 822 | 'A#Ñ
Ñ |
| 823 | PQ'8x<any>BZ |
| 824 | |
| 825 | /a+#Ñ
aa |
| 826 | z#XX?/8x<any>BZ |
| 827 | |
| 828 | /a+#Ñ
aa |
| 829 | z#Ñ
?/8x<any>BZ |
| 830 | |
| 831 | /\g{A}xxx#bXX(?'A'123)
(?'A'456)/8x<any>BZ |
| 832 | |
| 833 | /\g{A}xxx#bÑ
(?'A'123)
(?'A'456)/8x<any>BZ |
| 834 | |
| 835 | /a+/8 |
| 836 | a\x{123}aa\>1 |
| 837 | a\x{123}aa\>2 |
| 838 | a\x{123}aa\>3 |
| 839 | a\x{123}aa\>4 |
| 840 | a\x{123}aa\>5 |
| 841 | a\x{123}aa\>6 |
| 842 | |
| 843 | /^\cģ/8 |
| 844 | |
| 845 | /(\R*)(.)/s8 |
| 846 | \r\n |
| 847 | \r\r\n\n\r |
| 848 | \r\r\n\n\r\n |
| 849 | |
| 850 | /(\R)*(.)/s8 |
| 851 | \r\n |
| 852 | \r\r\n\n\r |
| 853 | \r\r\n\n\r\n |
| 854 | |
| 855 | /\x{1234}+/iS8I |
| 856 | |
| 857 | /\x{1234}+?/iS8I |
| 858 | |
| 859 | /\x{1234}++/iS8I |
| 860 | |
| 861 | /\x{1234}{2}/iS8I |
| 862 | |
| 863 | /[^\x{1234}]+/iS8I |
| 864 | |
| 865 | /[^\x{1234}]+?/iS8I |
| 866 | |
| 867 | /[^\x{1234}]++/iS8I |
| 868 | |
| 869 | /[^\x{1234}]{2}/iS8I |
| 870 | |
| 871 | //<bsr_anycrlf><bsr_unicode> |
| 872 | |
| 873 | /f.*/ |
| 874 | \P\Pfor |
| 875 | |
| 876 | /f.*/s |
| 877 | \P\Pfor |
| 878 | |
| 879 | /f.*/8 |
| 880 | \P\Pfor |
| 881 | |
| 882 | /f.*/8s |
| 883 | \P\Pfor |
| 884 | |
| 885 | /-- End of testinput5 --/ |