1# This stops me getting screenfulls of syntax errors every time I accidentally 2# run this file via a shell glob. The full format of this file is given 3# in regexp.t 4# Prior to the implementation of autoloading of \N{}, tests that used \N{name} 5# could not go in this file, and were farmed out to other .t's, where they 6# remain 7# 8# pat string y/n/etc expr expected-expr skip-reason comment 9__END__ 10abc abc y $& abc 11abc abc y $-[0] 0 12abc abc y $+[0] 3 13abc xbc n - - 14abc axc n - - 15abc abx n - - 16abc xabcy y $& abc 17abc xabcy y $-[0] 1 18abc xabcy y $+[0] 4 19abc ababc y $& abc 20abc ababc y $-[0] 2 21abc ababc y $+[0] 5 22ab*c abc y $& abc 23ab*c abc y $-[0] 0 24ab*c abc y $+[0] 3 25ab*bc abc y $& abc 26ab*bc abc y $-[0] 0 27ab*bc abc y $+[0] 3 28ab*bc abbc y $& abbc 29ab*bc abbc y $-[0] 0 30ab*bc abbc y $+[0] 4 31ab*bc abbbbc y $& abbbbc 32ab*bc abbbbc y $-[0] 0 33ab*bc abbbbc y $+[0] 6 34.{1} abbbbc y $& a 35.{1} abbbbc y $-[0] 0 36.{1} abbbbc y $+[0] 1 37.{3,4} abbbbc y $& abbb 38.{3,4} abbbbc y $-[0] 0 39.{3,4} abbbbc y $+[0] 4 40\N{1} abbbbc y $& a 41\N{1} abbbbc y $-[0] 0 42\N{1} abbbbc y $+[0] 1 43/\N {1}/x abbbbc y $& a 44/\N {1}/x abbbbc y $-[0] 0 45/\N {1}/x abbbbc y $+[0] 1 46\N{3,4} abbbbc y $& abbb 47\N{3,4} abbbbc y $-[0] 0 48\N{3,4} abbbbc y $+[0] 4 49/\N {3,4}/x abbbbc y $& abbb 50/\N {3,4}/x abbbbc y $-[0] 0 51/\N {3,4}/x abbbbc y $+[0] 4 52ab{0,}bc abbbbc y $& abbbbc 53ab{0,}bc abbbbc y $-[0] 0 54ab{0,}bc abbbbc y $+[0] 6 55ab+bc abbc y $& abbc 56ab+bc abbc y $-[0] 0 57ab+bc abbc y $+[0] 4 58ab+bc abc n - - 59ab+bc abq n - - 60ab{1,}bc abq n - - 61ab+bc abbbbc y $& abbbbc 62ab+bc abbbbc y $-[0] 0 63ab+bc abbbbc y $+[0] 6 64ab{1,}bc abbbbc y $& abbbbc 65ab{1,}bc abbbbc y $-[0] 0 66ab{1,}bc abbbbc y $+[0] 6 67ab{1,3}bc abbbbc y $& abbbbc 68ab{1,3}bc abbbbc y $-[0] 0 69ab{1,3}bc abbbbc y $+[0] 6 70ab{3,4}bc abbbbc y $& abbbbc 71ab{3,4}bc abbbbc y $-[0] 0 72ab{3,4}bc abbbbc y $+[0] 6 73ab{4,5}bc abbbbc n - - 74ab?bc abbc y $& abbc 75ab?bc abc y $& abc 76ab{0,1}bc abc y $& abc 77ab?bc abbbbc n - - 78ab?c abc y $& abc 79ab{0,1}c abc y $& abc 80^abc$ abc y $& abc 81^abc$ abcc n - - 82^abc abcc y $& abc 83^abc$ aabc n - - 84abc$ aabc y $& abc 85abc$ aabcd n - - 86^ abc y $& 87$ abc y $& 88a.c abc y $& abc 89a.c axc y $& axc 90a\Nc abc y $& abc 91/a\N c/x abc y $& abc 92a.*c axyzc y $& axyzc 93a\N*c axyzc y $& axyzc 94/a\N *c/x axyzc y $& axyzc 95a.*c axyzd n - - 96a\N*c axyzd n - - 97/a\N *c/x axyzd n - - 98a[bc]d abc n - - 99a[bc]d abd y $& abd 100a[b]d abd y $& abd 101[a][b][d] abd y $& abd 102.[b]. abd y $& abd 103.[b]. aBd n - - 104(?i:.[b].) abd y $& abd 105(?i:\N[b]\N) abd y $& abd 106a[b-d]e abd n - - 107a[b-d]e ace y $& ace 108a[b-d] aac y $& ac 109a[-b] a- y $& a- 110a[b-] a- y $& a- 111a[b-a] - c - Invalid [] range 112a[]b - c - Unmatched [ 113a[ - c - Unmatched [ 114a] a] y $& a] 115a[]]b a]b y $& a]b 116a[^bc]d aed y $& aed 117a[^bc]d abd n - - 118a[^-b]c adc y $& adc 119a[^-b]c a-c n - - 120a[^]b]c a]c n - - 121a[^]b]c adc y $& adc 122\ba\b a- y - - 123\ba\b -a y - - 124\ba\b -a- y - - 125\by\b xy n - - 126\by\b yz n - - 127\by\b xyz n - - 128\Ba\B a- n - - 129\Ba\B -a n - - 130\Ba\B -a- n - - 131\By\b xy y - - 132\By\b xy y $-[0] 1 133\By\b xy y $+[0] 2 134\By\b xy y - - 135\by\B yz y - - 136\By\B xyz y - - 137\b n - - 138\b{gcb} n - - 139\b{lb} n - - 140\b{sb} n - - 141\b{wb} n - - 142\B y - - 143\B{gcb} y - - 144\B{lb} y - - 145\B{sb} y - - 146\B{wb} y - - 147\w a y - - 148\w - n - - 149\W a n - - 150\W - y - - 151a\sb a b y - - 152a\sb a-b n - - 153a\Sb a b n - - 154a\Sb a-b y - - 155\d 1 y - - 156\d - n - - 157\D 1 n - - 158\D - y - - 159[\w] a y - - 160[\w] - n - - 161[\W] a n - - 162[\W] - y - - 163a[\s]b a b y - - 164a[\s]b a-b n - - 165a[\S]b a b n - - 166a[\S]b a-b y - - 167[\d] 1 y - - 168[\d] - n - - 169[\D] 1 n - - 170[\D] - y - - 171ab|cd abc y $& ab 172ab|cd abcd y $& ab 173()ef def y $&-$1 ef- 174()ef def y $-[0] 1 175()ef def y $+[0] 3 176()\x{100}\x{1000} d\x{100}\x{1000} y $+[0] 3 177()ef def y $-[1] 1 178()ef def y $+[1] 1 179*a - c - Quantifier follows nothing 180(|*)b - c - Quantifier follows nothing 181(*)b - c - Unknown verb 182$b b n - - 183a\ - c - Search pattern not terminated 184a\(b a(b y $&-$1 a(b- 185a\(*b ab y $& ab 186a\(*b a((b y $& a((b 187a\\b a\\b y $& a\\b 188abc) - c - Unmatched ) 189(abc - c - Unmatched ( 190((a)) abc y $&-$1-$2 a-a-a 191((a)) abc y $-[0]-$-[1]-$-[2] 0-0-0 192((a)) abc y $+[0]-$+[1]-$+[2] 1-1-1 193((a)) abc b @- 0 0 0 194((a)) abc b @+ 1 1 1 195(a)b(c) abc y $&-$1-$2 abc-a-c 196(a)b(c) abc y $-[0]-$-[1]-$-[2] 0-0-2 197(a)b(c) abc y $+[0]-$+[1]-$+[2] 3-1-3 198a+b+c aabbabc y $& abc 199a{1,}b{1,}c aabbabc y $& abc 200a** - c - Nested quantifiers 201a.+?c abcabc y $& abc 202(a+|b)* ab y $&-$1 ab-b 203(a+|b)* ab y $-[0] 0 204(a+|b)* ab y $+[0] 2 205(a+|b)* ab y $-[1] 1 206(a+|b)* ab y $+[1] 2 207(a+|b){0,} ab y $&-$1 ab-b 208(a+|b)+ ab y $&-$1 ab-b 209(a+|b){1,} ab y $&-$1 ab-b 210(a+|b)? ab y $&-$1 a-a 211(a+|b){0,1} ab y $&-$1 a-a 212)( - c - Unmatched ) 213[^ab]* cde y $& cde 214abc n - - 215a* y $& 216([abc])*d abbbcd y $&-$1 abbbcd-c 217([abc])*bcd abcd y $&-$1 abcd-a 218a|b|c|d|e e y $& e 219(a|b|c|d|e)f ef y $&-$1 ef-e 220(a|b|c|d|e)f ef y $-[0] 0 221(a|b|c|d|e)f ef y $+[0] 2 222(a|b|c|d|e)f ef y $-[1] 0 223(a|b|c|d|e)f ef y $+[1] 1 224abcd*efg abcdefg y $& abcdefg 225ab* xabyabbbz y $& ab 226ab* xayabbbz y $& a 227(ab|cd)e abcde y $&-$1 cde-cd 228[abhgefdc]ij hij y $& hij 229^(ab|cd)e abcde n x$1y xy 230(abc|)ef abcdef y $&-$1 ef- 231(a|b)c*d abcd y $&-$1 bcd-b 232(ab|ab*)bc abc y $&-$1 abc-a 233a([bc]*)c* abc y $&-$1 abc-bc 234a([bc]*)(c*d) abcd y $&-$1-$2 abcd-bc-d 235a([bc]*)(c*d) abcd y $-[0] 0 236a([bc]*)(c*d) abcd y $+[0] 4 237a([bc]*)(c*d) abcd y $-[1] 1 238a([bc]*)(c*d) abcd y $+[1] 3 239a([bc]*)(c*d) abcd y $-[2] 3 240a([bc]*)(c*d) abcd y $+[2] 4 241a([bc]+)(c*d) abcd y $&-$1-$2 abcd-bc-d 242a([bc]*)(c+d) abcd y $&-$1-$2 abcd-b-cd 243a([bc]*)(c+d) abcd y $-[0] 0 244a([bc]*)(c+d) abcd y $+[0] 4 245a([bc]*)(c+d) abcd y $-[1] 1 246a([bc]*)(c+d) abcd y $+[1] 2 247a([bc]*)(c+d) abcd y $-[2] 2 248a([bc]*)(c+d) abcd y $+[2] 4 249a[bcd]*dcdcde adcdcde y $& adcdcde 250a[bcd]+dcdcde adcdcde n - - 251(ab|a)b*c abc y $&-$1 abc-ab 252(ab|a)b*c abc y $-[0] 0 253(ab|a)b*c abc y $+[0] 3 254(ab|a)b*c abc y $-[1] 0 255(ab|a)b*c abc y $+[1] 2 256((a)(b)c)(d) abcd y $1-$2-$3-$4 abc-a-b-d 257((a)(b)c)(d) abcd y $-[0] 0 258((a)(b)c)(d) abcd y $+[0] 4 259((a)(b)c)(d) abcd y $-[1] 0 260((a)(b)c)(d) abcd y $+[1] 3 261((a)(b)c)(d) abcd y $-[2] 0 262((a)(b)c)(d) abcd y $+[2] 1 263((a)(b)c)(d) abcd y $-[3] 1 264((a)(b)c)(d) abcd y $+[3] 2 265((a)(b)c)(d) abcd y $-[4] 3 266((a)(b)c)(d) abcd y $+[4] 4 267[a-zA-Z_][a-zA-Z0-9_]* alpha y $& alpha 268[_A-Z] } n - - # This could match on EBCDIC if A-Z not excluding things in middle 269^a(bc+|b[eh])g|.h$ abh y $&-$1 bh- 270(bc+d$|ef*g.|h?i(j|k)) effgz y $&-$1-$2 effgz-effgz- 271(bc+d$|ef*g.|h?i(j|k)) ij y $&-$1-$2 ij-ij-j 272(bc+d$|ef*g.|h?i(j|k)) effg n - - 273(bc+d$|ef*g.|h?i(j|k)) bcdd n - - 274(bc+d$|ef*g.|h?i(j|k)) reffgz y $&-$1-$2 effgz-effgz- 275((((((((((a)))))))))) a y $10 a 276((((((((((a)))))))))) a y $-[0] 0 277((((((((((a)))))))))) a y $+[0] 1 278((((((((((a)))))))))) a y $-[10] 0 279((((((((((a)))))))))) a y $+[10] 1 280((((((((((a))))))))))\10 aa y $& aa 281((((((((((a))))))))))${bang} aa n - - 282((((((((((a))))))))))${bang} a! y $& a! 283(((((((((a))))))))) a y $& a 284multiple words of text uh-uh n - - 285multiple words multiple words, yeah y $& multiple words 286(.*)c(.*) abcde y $&-$1-$2 abcde-ab-de 287\((.*), (.*)\) (a, b) y ($2, $1) (b, a) 288[k] ab n - - 289abcd abcd y $&-\$&-\\$& abcd-\$&-\\abcd 290a(bc)d abcd y $1-\$1-\\$1 bc-\$1-\\bc 291a[-]?c ac y $& ac 292(abc)\1 abcabc y $1 abc 293([a-c]*)\1 abcabc y $1 abc 294\1 - c - Reference to nonexistent group 295\2 - c - Reference to nonexistent group 296\g1 - c - Reference to nonexistent group 297\g-1 - c - Reference to nonexistent or unclosed group 298\g{1} - c - Reference to nonexistent group 299\g{-1} - c - Reference to nonexistent or unclosed group 300\g0 - c - Reference to invalid group 0 301\g-0 - c - Reference to invalid group 0 302\g{0} - c - Reference to invalid group 0 303\g{-0} - c - Reference to invalid group 0 304(a)|\1 a y - - 305(a)|\1 x n - Reference to group in different branch 306(?:(b)?a)\1 a n - Reference to group that did not match 307(a)|\2 - c - Reference to nonexistent group 308(([a-c])b*?\2)* ababbbcbc y $&-$1-$2 ababb-bb-b 309(([a-c])b*?\2){3} ababbbcbc y $&-$1-$2 ababbbcbc-cbc-c 310((\3|b)\2(a)x)+ aaxabxbaxbbx n - - 311((\3|b)\2(a)x)+ aaaxabaxbaaxbbax y $&-$1-$2-$3 bbax-bbax-b-a 312((\3|b)\2(a)){2,} bbaababbabaaaaabbaaaabba y $&-$1-$2-$3 bbaaaabba-bba-b-a 313#Bug #3589 - up to perl-5.6.0 matches incorrectly, from 5.6.1 not anymore 314^((.)?a\2)+$ babadad n - - 315(a)|(b) b y $-[0] 0 316(a)|(b) b y $+[0] 1 317(a)|(b) b y x$-[1] x 318(a)|(b) b y x$+[1] x 319(a)|(b) b y $-[2] 0 320(a)|(b) b y $+[2] 1 321'abc'i ABC y $& ABC 322'abc'i XBC n - - 323'abc'i AXC n - - 324'abc'i ABX n - - 325'abc'i XABCY y $& ABC 326'abc'i ABABC y $& ABC 327'ab*c'i ABC y $& ABC 328'ab*bc'i ABC y $& ABC 329'ab*bc'i ABBC y $& ABBC 330'ab*?bc'i ABBBBC y $& ABBBBC 331'ab{0,}?bc'i ABBBBC y $& ABBBBC 332'ab+?bc'i ABBC y $& ABBC 333'ab+bc'i ABC n - - 334'ab+bc'i ABQ n - - 335'ab{1,}bc'i ABQ n - - 336'ab+bc'i ABBBBC y $& ABBBBC 337'ab{1,}?bc'i ABBBBC y $& ABBBBC 338'ab{1,3}?bc'i ABBBBC y $& ABBBBC 339'ab{3,4}?bc'i ABBBBC y $& ABBBBC 340'ab{4,5}?bc'i ABBBBC n - - 341'ab??bc'i ABBC y $& ABBC 342'ab??bc'i ABC y $& ABC 343'ab{0,1}?bc'i ABC y $& ABC 344'ab??bc'i ABBBBC n - - 345'ab??c'i ABC y $& ABC 346'ab{0,1}?c'i ABC y $& ABC 347'^abc$'i ABC y $& ABC 348'^abc$'i ABCC n - - 349'^abc'i ABCC y $& ABC 350'^abc$'i AABC n - - 351'abc$'i AABC y $& ABC 352'^'i ABC y $& 353'$'i ABC y $& 354'a.c'i ABC y $& ABC 355'a.c'i AXC y $& AXC 356'a\Nc'i ABC y $& ABC 357'a.*?c'i AXYZC y $& AXYZC 358'a.*c'i AXYZD n - - 359'a[bc]d'i ABC n - - 360'a[bc]d'i ABD y $& ABD 361'a[b-d]e'i ABD n - - 362'a[b-d]e'i ACE y $& ACE 363'a[b-d]'i AAC y $& AC 364'a[-b]'i A- y $& A- 365'a[b-]'i A- y $& A- 366'a[b-a]'i - c - Invalid [] range 367'a[]b'i - c - Unmatched [ 368'a['i - c - Unmatched [ 369'a]'i A] y $& A] 370'a[]]b'i A]B y $& A]B 371'a[^bc]d'i AED y $& AED 372'a[^bc]d'i ABD n - - 373'a[^-b]c'i ADC y $& ADC 374'a[^-b]c'i A-C n - - 375'a[^]b]c'i A]C n - - 376'a[^]b]c'i ADC y $& ADC 377'ab|cd'i ABC y $& AB 378'ab|cd'i ABCD y $& AB 379'()ef'i DEF y $&-$1 EF- 380'*a'i - c - Quantifier follows nothing 381'(|*)b'i - c - Quantifier follows nothing 382'(*)b'i - c - Unknown verb 383'$b'i B n - - 384'a\'i - c - Search pattern not terminated 385'a\(b'i A(B y $&-$1 A(B- 386'a\(*b'i AB y $& AB 387'a\(*b'i A((B y $& A((B 388'a\\b'i A\\B y $& A\\B 389'abc)'i - c - Unmatched ) 390'(abc'i - c - Unmatched ( 391'((a))'i ABC y $&-$1-$2 A-A-A 392'(a)b(c)'i ABC y $&-$1-$2 ABC-A-C 393'a+b+c'i AABBABC y $& ABC 394'a{1,}b{1,}c'i AABBABC y $& ABC 395'a**'i - c - Nested quantifiers 396'a.+?c'i ABCABC y $& ABC 397'a.*?c'i ABCABC y $& ABC 398'a.{0,5}?c'i ABCABC y $& ABC 399'(a+|b)*'i AB y $&-$1 AB-B 400'(a+|b){0,}'i AB y $&-$1 AB-B 401'(a+|b)+'i AB y $&-$1 AB-B 402'(a+|b){1,}'i AB y $&-$1 AB-B 403'(a+|b)?'i AB y $&-$1 A-A 404'(a+|b){0,1}'i AB y $&-$1 A-A 405'(a+|b){0,1}?'i AB y $&-$1 - 406')('i - c - Unmatched ) 407'[^ab]*'i CDE y $& CDE 408'abc'i n - - 409'a*'i y $& 410'([abc])*d'i ABBBCD y $&-$1 ABBBCD-C 411'([abc])*bcd'i ABCD y $&-$1 ABCD-A 412'a|b|c|d|e'i E y $& E 413'(a|b|c|d|e)f'i EF y $&-$1 EF-E 414'abcd*efg'i ABCDEFG y $& ABCDEFG 415'ab*'i XABYABBBZ y $& AB 416'ab*'i XAYABBBZ y $& A 417'(ab|cd)e'i ABCDE y $&-$1 CDE-CD 418'[abhgefdc]ij'i HIJ y $& HIJ 419'^(ab|cd)e'i ABCDE n x$1y XY 420'(abc|)ef'i ABCDEF y $&-$1 EF- 421'(a|b)c*d'i ABCD y $&-$1 BCD-B 422'(ab|ab*)bc'i ABC y $&-$1 ABC-A 423'a([bc]*)c*'i ABC y $&-$1 ABC-BC 424'a([bc]*)(c*d)'i ABCD y $&-$1-$2 ABCD-BC-D 425'a([bc]+)(c*d)'i ABCD y $&-$1-$2 ABCD-BC-D 426'a([bc]*)(c+d)'i ABCD y $&-$1-$2 ABCD-B-CD 427'a[bcd]*dcdcde'i ADCDCDE y $& ADCDCDE 428'a[bcd]+dcdcde'i ADCDCDE n - - 429'(ab|a)b*c'i ABC y $&-$1 ABC-AB 430'((a)(b)c)(d)'i ABCD y $1-$2-$3-$4 ABC-A-B-D 431'[a-zA-Z_][a-zA-Z0-9_]*'i ALPHA y $& ALPHA 432'^a(bc+|b[eh])g|.h$'i ABH y $&-$1 BH- 433'(bc+d$|ef*g.|h?i(j|k))'i EFFGZ y $&-$1-$2 EFFGZ-EFFGZ- 434'(bc+d$|ef*g.|h?i(j|k))'i IJ y $&-$1-$2 IJ-IJ-J 435'(bc+d$|ef*g.|h?i(j|k))'i EFFG n - - 436'(bc+d$|ef*g.|h?i(j|k))'i BCDD n - - 437'(bc+d$|ef*g.|h?i(j|k))'i REFFGZ y $&-$1-$2 EFFGZ-EFFGZ- 438'((((((((((a))))))))))'i A y $10 A 439'((((((((((a))))))))))\10'i AA y $& AA 440'((((((((((a))))))))))${bang}'i AA n - - 441'((((((((((a))))))))))${bang}'i A! y $& A! 442'(((((((((a)))))))))'i A y $& A 443'(?:(?:(?:(?:(?:(?:(?:(?:(?:(a))))))))))'i A y $1 A 444'(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))'i C y $1 C 445'multiple words of text'i UH-UH n - - 446'multiple words'i MULTIPLE WORDS, YEAH y $& MULTIPLE WORDS 447'(.*)c(.*)'i ABCDE y $&-$1-$2 ABCDE-AB-DE 448'\((.*), (.*)\)'i (A, B) y ($2, $1) (B, A) 449'[k]'i AB n - - 450'abcd'i ABCD y $&-\$&-\\$& ABCD-\$&-\\ABCD 451'a(bc)d'i ABCD y $1-\$1-\\$1 BC-\$1-\\BC 452'a[-]?c'i AC y $& AC 453'(abc)\1'i ABCABC y $1 ABC 454'([a-c]*)\1'i ABCABC y $1 ABC 455a(?!b). abad y $& ad 456(?=)a a y $& a 457a(?=d). abad y $& ad 458a(?=c|d). abad y $& ad 459a(?:b|c|d)(.) ace y $1 e 460a(?:b|c|d)*(.) ace y $1 e 461a(?:b|c|d)+?(.) ace y $1 e 462a(?:b|c|d)+?(.) acdbcdbe y $1 d 463a(?:b|c|d)+(.) acdbcdbe y $1 e 464a(?:b|c|d){2}(.) acdbcdbe y $1 b 465a(?:b|c|d){4,5}(.) acdbcdbe y $1 b 466a(?:b|c|d){4,5}?(.) acdbcdbe y $1 d 467((foo)|(bar))* foobar y $1-$2-$3 bar-foo-bar 468:(?: - c - Sequence (? incomplete 469a(?:b|c|d){6,7}(.) acdbcdbe y $1 e 470a(?:b|c|d){6,7}?(.) acdbcdbe y $1 e 471a(?:b|c|d){5,6}(.) acdbcdbe y $1 e 472a(?:b|c|d){5,6}?(.) acdbcdbe y $1 b 473a(?:b|c|d){5,7}(.) acdbcdbe y $1 e 474a(?:b|c|d){5,7}?(.) acdbcdbe y $1 b 475a(?:b|(c|e){1,2}?|d)+?(.) ace y $1$2 ce 476^(.+)?B AB y $1 A 477^([^a-z])|(\^)$ . y $1 . 478^[<>]& <&OUT y $& <& 479^(a\1?){4}$ aaaaaaaaaa y $1 aaaa 480^(a\1?){4}$ aaaaaaaaa n - - 481^(a\1?){4}$ aaaaaaaaaaa n - - 482^(a(?(1)\1)){4}$ aaaaaaaaaa y $1 aaaa 483^(a(?(1)\1)){4}$ aaaaaaaaa n - - 484^(a(?(1)\1)){4}$ aaaaaaaaaaa n - - 485((a{4})+) aaaaaaaaa y $1 aaaaaaaa 486(((aa){2})+) aaaaaaaaaa y $1 aaaaaaaa 487(((a{2}){2})+) aaaaaaaaaa y $1 aaaaaaaa 488(?:(f)(o)(o)|(b)(a)(r))* foobar y $1:$2:$3:$4:$5:$6 f:o:o:b:a:r 489(?<=a)b ab y $& b 490(?<=af?)b ab y $& b 491(?<=a)b cb n - - 492(?<=a(?:fo)?)b cb n - - 493(?<=a)b b n - - 494(?<=a(?:foo)?)b b n - - 495(?<!c)b ab y $& b 496(?<!c(?:foob)?)b ab y $& b 497(?<!c)b cb n - - 498(?<!c(?:fooba)?)b cb n - - 499(?<!c)b b y - - 500(?<!c(?:foobar)?)b b y - - 501(?<!c)b b y $& b 502(?<!c(?:foobarb)?)b b y $& b 503(?<%)b - c - Group name must start with a non-digit word character 504(?:..)*a aba y $& aba 505(?:..)*?a aba y $& a 506^(?:b|a(?=(.)))*\1 abc y $& ab 507^(){3,5} abc y a$1 a 508^(a+)*ax aax y $1 a 509^((a|b)+)*ax aax y $1 a 510^((a|bc)+)*ax aax y $1 a 511(a|x)*ab cab y y$1 y 512(a)*ab cab y y$1 y 513(?:(?i)a)b ab y $& ab 514((?i)a)b ab y $&:$1 ab:a 515(?:(?i)a)b Ab y $& Ab 516((?i)a)b Ab y $&:$1 Ab:A 517(?:(?i)a)b aB n - - 518((?i)a)b aB n - - 519(?i:a)b ab y $& ab 520((?i:a))b ab y $&:$1 ab:a 521(?i:a)b Ab y $& Ab 522((?i:a))b Ab y $&:$1 Ab:A 523(?i:a)b aB n - - 524((?i:a))b aB n - - 525'(?:(?-i)a)b'i ab y $& ab 526'((?-i)a)b'i ab y $&:$1 ab:a 527'(?:(?-i)a)b'i aB y $& aB 528'((?-i)a)b'i aB y $&:$1 aB:a 529'(?:(?-i)a)b'i Ab n - - 530'((?-i)a)b'i Ab n - - 531'(?:(?-i)a)b'i aB y $& aB 532'((?-i)a)b'i aB y $1 a 533'(?:(?-i)a)b'i AB n - - 534'((?-i)a)b'i AB n - - 535'(?-i:a)b'i ab y $& ab 536'((?-i:a))b'i ab y $&:$1 ab:a 537'(?-i:a)b'i aB y $& aB 538'((?-i:a))b'i aB y $&:$1 aB:a 539'(?-i:a)b'i Ab n - - 540'((?-i:a))b'i Ab n - - 541'(?-i:a)b'i aB y $& aB 542'((?-i:a))b'i aB y $1 a 543'(?-i:a)b'i AB n - - 544'((?-i:a))b'i AB n - - 545'((?-i:a.))b'i a\nB n - - 546'((?-i:a\N))b'i a\nB n - - 547'((?s-i:a.))b'i a\nB y $1 a\n 548'((?s-i:a\N))b'i a\nB n - - 549'((?s-i:a.))b'i B\nB n - - 550'((?s-i:a\N))b'i B\nB n - - 551(?:c|d)(?:)(?:a(?:)(?:b)(?:b(?:))(?:b(?:)(?:b))) cabbbb y $& cabbbb 552(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb))) caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb y $& caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 553'(ab)\d\1'i Ab4ab y $1 Ab 554'(ab)\d\1'i ab4Ab y $1 ab 555foo\w*\d{4}baz foobar1234baz y $& foobar1234baz 556a(?{})b cabd y $& ab 557a(?{f()+ - c - Missing right curly or square bracket 558a(?{{1}+ - c - Missing right curly or square bracket 559 (?{(^{}) - c - syntax error 560a(?{}})b - c - 561a(?{"{"})b ab y - - 562a(?{"\{"})b cabd y $& ab 563a(?{"{"}})b - c - Sequence (?{...}) not terminated with ')' 564a(?{$::bl="\{"}).b caxbd y $::bl { 565x(~~)*(?:(?:F)?)? x~~ y - - 566^a(?#xxx){3}c aaac y $& aaac 567'^a (?#xxx) (?#yyy) {3}c'x aaac y $& aaac 568(?<![cd])b dbcb n - - 569(?<![cd]e{0,254})b dbcb n - - 570(?<![cd])[ab] dbaacb y $& a 571(?<![cd]{1,2})[ab] dbaacb y $& a 572#Why does this fail. I think it's confusing (?<![cd]{1,3})[ab] dbaacb y $& a 573(?<!(c|d))b dbcb n - - 574(?<!(c|d))[ab] dbaacb y $& a 575(?<!cd)[ab] cdaccb y $& b 576^(?:a?b?)*$ a-- n - - 577((?s)^a(.))((?m)^b$) a\nb\nc\n y $1;$2;$3 a\n;\n;b 578((?m)^b$) a\nb\nc\n y $1 b 579(?m)^b a\nb\n y $& b 580(?m)^(b) a\nb\n y $1 b 581((?m)^b) a\nb\n y $1 b 582\n((?m)^b) a\nb\n y $1 b 583((?s).)c(?!.) a\nb\nc\n y $1 \n 584((?s).)c(?!.) a\nb\nc\n y $1:$& \n:\nc 585((?s)b.)c(?!.) a\nb\nc\n y $1 b\n 586((?s)b.)c(?!.) a\nb\nc\n y $1:$& b\n:b\nc 587((?s)b.)c(?!\N) a\nb\nc\n y $1:$& b\n:b\nc 588'(b.)c(?!\N)'s a\nb\nc\n y $1:$& b\n:b\nc 589^b a\nb\nc\n n - - 590()^b a\nb\nc\n n - - 591((?m)^b) a\nb\nc\n y $1 b 592(?(1)a|b) a n - - 593(?(1)b|a) a y $& a 594(x)?(?(1)a|b) a n - - 595(x)?(?(1)b|a) a y $& a 596()?(?(1)b|a) a y $& a 597()(?(1)b|a) a n - - 598()?(?(1)a|b) a y $& a 599^(\()?blah(?(1)(\)))$ (blah) y $2 ) 600^(\()?blah(?(1)(\)))$ blah y ($2) () 601^(\()?blah(?(1)(\)))$ blah) n - - 602^(\()?blah(?(1)(\)))$ (blah n - - 603^(\(+)?blah(?(1)(\)))$ (blah) y $2 ) 604^(\(+)?blah(?(1)(\)))$ blah y ($2) () 605^(\(+)?blah(?(1)(\)))$ blah) n - - 606^(\(+)?blah(?(1)(\)))$ (blah n - - 607(?(1?)a|b) - c - Switch condition not recognized 608(?(1)a|b|c) - c - Switch (?(condition)... contains too many branches 609(?(?{0})a|b) a n - - 610(?(?{0})b|a) a y $& a 611(?(?{1})b|a) a n - - 612(?(?{1})a|b) a y $& a 613(?(?!a)a|b) a n - - 614(?(?!a)b|a) a y $& a 615(?(?=a)b|a) a n - - 616(?(?=a)a|b) a y $& a 617(?(?!\x{100})\x{100}|b) \x{100} n - - 618(?(?!\x{100})b|\x{100}) \x{100} y $& \x{100} 619(?(?=\x{100})b|\x{100}) \x{100} n - - 620(?(?=\x{100})\x{100}|b) \x{100} y $& \x{100} 621(?=(a+?))(\1ab) aaab y $2 aab 622^(?=(a+?))\1ab aaab n - - 623(\w+:)+ one: y $1 one: 624$(?<=^(a)) a y $1 a 625(?=(a+?))(\1ab) aaab y $2 aab 626^(?=(a+?))\1ab aaab n - - 627([\w:]+::)?(\w+)$ abcd: n - - 628([\w:]+::)?(\w+)$ abcd y $1-$2 -abcd 629([\w:]+::)?(\w+)$ xy:z:::abcd y $1-$2 xy:z:::-abcd 630^[^bcd]*(c+) aexycd y $1 c 631(a*)b+ caab y $1 aa 632([\w:]+::)?(\w+)$ abcd: n - - 633([\w:]+::)?(\w+)$ abcd y $1-$2 -abcd 634([\w:]+::)?(\w+)$ xy:z:::abcd y $1-$2 xy:z:::-abcd 635^[^bcd]*(c+) aexycd y $1 c 636(?{$a=2})a*aa(?{local$a=$a+1})k*c(?{$b=$a}) yaaxxaaaacd y $b 3 637(?{$a=2})(a(?{local$a=$a+1}))*aak*c(?{$b=$a}) yaaxxaaaacd y $b 4 638# [perl #117917] 639^(a(?{ "x" =~ m{x}})b)(??{ $1 }) abab y $& abab 640(>a+)ab aaab n - - 641(?>a+)b aaab y - - 642([[:]+) a:[b]: y $1 :[ 643([[=]+) a=[b]= y $1 =[ 644([[.]+) a.[b]. y $1 .[ 645[a[:xyz: - c - Unmatched [ 646[a[:xyz:] - c - POSIX class [:xyz:] unknown 647[a[:]b[:c] abc y $& abc 648([a[:xyz:]b]+) - c - POSIX class [:xyz:] unknown 649([[:alpha:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd 650([[:alnum:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy 651([[:ascii:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy__-- ${nulnul} 652([[:cntrl:]]+) ABcd01Xy__-- ${nulnul}${ffff} ya $1 ${nulnul} ff is a control on EBCDIC (non-POSIX-BC), so this fails under /u rules 653([[:digit:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 01 654([[:graph:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy__-- 655([[:lower:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 cd 656([[:print:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy__-- 657([[:punct:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 __-- 658([[:space:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 659([[:word:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy__ 660([[:upper:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 AB 661([[:xdigit:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01 662([[:^alpha:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 01 663((?a)[[:^alnum:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 __-- ${nulnul}${ffff} 664([[:^ascii:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ${ffff} 665([:[:^ascii:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ${ffff} RT #120799 666([[:^cntrl:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy__-- 667([[:^digit:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd 668([[:^lower:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 AB 669((?a)[[:^print:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ${nulnul}${ffff} 670([[:^punct:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy 671([[:^space:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy__-- 672((?a)[[:^word:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 -- ${nulnul}${ffff} 673([[:^upper:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 cd01 674([[:^xdigit:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 Xy__-- ${nulnul}${ffff} 675[[:foo:]] - c - POSIX class [:foo:] unknown 676[[:^foo:]] - c - POSIX class [:^foo:] unknown 677'[[:^cntrl:]]+'u a\x80 y $& a \x80 was matching on EBCDIC platforms 678((?>a+)b) aaab y $1 aaab 679(?>(a+))b aaab y $1 aaa 680((?>[^()]+)|\([^()]*\))+ ((abc(ade)ufh()()x y $& abc(ade)ufh()()x 681(?<=x+)y - c - Lookbehind longer than 255 not implemented 682((def){37,17})?ABC ABC y $& ABC 683\Z a\nb\n y $-[0] 3 684\z a\nb\n y $-[0] 4 685$ a\nb\n y $-[0] 3 686\Z b\na\n y $-[0] 3 687\z b\na\n y $-[0] 4 688$ b\na\n y $-[0] 3 689\Z b\na y $-[0] 3 690\z b\na y $-[0] 3 691$ b\na y $-[0] 3 692'\Z'm a\nb\n y $-[0] 3 693'\z'm a\nb\n y $-[0] 4 694'$'m a\nb\n y $-[0] 1 695'\Z'm b\na\n y $-[0] 3 696'\z'm b\na\n y $-[0] 4 697'$'m b\na\n y $-[0] 1 698'\Z'm b\na y $-[0] 3 699'\z'm b\na y $-[0] 3 700'$'m b\na y $-[0] 1 701a\Z a\nb\n n - - 702a\z a\nb\n n - - 703a$ a\nb\n n - - 704a\Z b\na\n y $-[0] 2 705a\z b\na\n n - - 706a$ b\na\n y $-[0] 2 707a\Z b\na y $-[0] 2 708a\z b\na y $-[0] 2 709a$ b\na y $-[0] 2 710'a\Z'm a\nb\n n - - 711'a\z'm a\nb\n n - - 712'a$'m a\nb\n y $-[0] 0 713'a\Z'm b\na\n y $-[0] 2 714'a\z'm b\na\n n - - 715'a$'m b\na\n y $-[0] 2 716'a\Z'm b\na y $-[0] 2 717'a\z'm b\na y $-[0] 2 718'a$'m b\na y $-[0] 2 719aa\Z aa\nb\n n - - 720aa\z aa\nb\n n - - 721aa$ aa\nb\n n - - 722aa\Z b\naa\n y $-[0] 2 723aa\z b\naa\n n - - 724aa$ b\naa\n y $-[0] 2 725aa\Z b\naa y $-[0] 2 726aa\z b\naa y $-[0] 2 727aa$ b\naa y $-[0] 2 728'aa\Z'm aa\nb\n n - - 729'aa\z'm aa\nb\n n - - 730'aa$'m aa\nb\n y $-[0] 0 731'aa\Z'm b\naa\n y $-[0] 2 732'aa\z'm b\naa\n n - - 733'aa$'m b\naa\n y $-[0] 2 734'aa\Z'm b\naa y $-[0] 2 735'aa\z'm b\naa y $-[0] 2 736'aa$'m b\naa y $-[0] 2 737aa\Z ac\nb\n n - - 738aa\z ac\nb\n n - - 739aa$ ac\nb\n n - - 740aa\Z b\nac\n n - - 741aa\z b\nac\n n - - 742aa$ b\nac\n n - - 743aa\Z b\nac n - - 744aa\z b\nac n - - 745aa$ b\nac n - - 746'aa\Z'm ac\nb\n n - - 747'aa\z'm ac\nb\n n - - 748'aa$'m ac\nb\n n - - 749'aa\Z'm b\nac\n n - - 750'aa\z'm b\nac\n n - - 751'aa$'m b\nac\n n - - 752'aa\Z'm b\nac n - - 753'aa\z'm b\nac n - - 754'aa$'m b\nac n - - 755aa\Z ca\nb\n n - - 756aa\z ca\nb\n n - - 757aa$ ca\nb\n n - - 758aa\Z b\nca\n n - - 759aa\z b\nca\n n - - 760aa$ b\nca\n n - - 761aa\Z b\nca n - - 762aa\z b\nca n - - 763aa$ b\nca n - - 764'aa\Z'm ca\nb\n n - - 765'aa\z'm ca\nb\n n - - 766'aa$'m ca\nb\n n - - 767'aa\Z'm b\nca\n n - - 768'aa\z'm b\nca\n n - - 769'aa$'m b\nca\n n - - 770'aa\Z'm b\nca n - - 771'aa\z'm b\nca n - - 772'aa$'m b\nca n - - 773ab\Z ab\nb\n n - - 774ab\z ab\nb\n n - - 775ab$ ab\nb\n n - - 776ab\Z b\nab\n y $-[0] 2 777ab\z b\nab\n n - - 778ab$ b\nab\n y $-[0] 2 779ab\Z b\nab y $-[0] 2 780ab\z b\nab y $-[0] 2 781ab$ b\nab y $-[0] 2 782'ab\Z'm ab\nb\n n - - 783'ab\z'm ab\nb\n n - - 784'ab$'m ab\nb\n y $-[0] 0 785'ab\Z'm b\nab\n y $-[0] 2 786'ab\z'm b\nab\n n - - 787'ab$'m b\nab\n y $-[0] 2 788'ab\Z'm b\nab y $-[0] 2 789'ab\z'm b\nab y $-[0] 2 790'ab$'m b\nab y $-[0] 2 791ab\Z ac\nb\n n - - 792ab\z ac\nb\n n - - 793ab$ ac\nb\n n - - 794ab\Z b\nac\n n - - 795ab\z b\nac\n n - - 796ab$ b\nac\n n - - 797ab\Z b\nac n - - 798ab\z b\nac n - - 799ab$ b\nac n - - 800'ab\Z'm ac\nb\n n - - 801'ab\z'm ac\nb\n n - - 802'ab$'m ac\nb\n n - - 803'ab\Z'm b\nac\n n - - 804'ab\z'm b\nac\n n - - 805'ab$'m b\nac\n n - - 806'ab\Z'm b\nac n - - 807'ab\z'm b\nac n - - 808'ab$'m b\nac n - - 809ab\Z ca\nb\n n - - 810ab\z ca\nb\n n - - 811ab$ ca\nb\n n - - 812ab\Z b\nca\n n - - 813ab\z b\nca\n n - - 814ab$ b\nca\n n - - 815ab\Z b\nca n - - 816ab\z b\nca n - - 817ab$ b\nca n - - 818'ab\Z'm ca\nb\n n - - 819'ab\z'm ca\nb\n n - - 820'ab$'m ca\nb\n n - - 821'ab\Z'm b\nca\n n - - 822'ab\z'm b\nca\n n - - 823'ab$'m b\nca\n n - - 824'ab\Z'm b\nca n - - 825'ab\z'm b\nca n - - 826'ab$'m b\nca n - - 827abb\Z abb\nb\n n - - 828abb\z abb\nb\n n - - 829abb$ abb\nb\n n - - 830abb\Z b\nabb\n y $-[0] 2 831abb\z b\nabb\n n - - 832abb$ b\nabb\n y $-[0] 2 833abb\Z b\nabb y $-[0] 2 834abb\z b\nabb y $-[0] 2 835abb$ b\nabb y $-[0] 2 836'abb\Z'm abb\nb\n n - - 837'abb\z'm abb\nb\n n - - 838'abb$'m abb\nb\n y $-[0] 0 839'abb\Z'm b\nabb\n y $-[0] 2 840'abb\z'm b\nabb\n n - - 841'abb$'m b\nabb\n y $-[0] 2 842'abb\Z'm b\nabb y $-[0] 2 843'abb\z'm b\nabb y $-[0] 2 844'abb$'m b\nabb y $-[0] 2 845abb\Z ac\nb\n n - - 846abb\z ac\nb\n n - - 847abb$ ac\nb\n n - - 848abb\Z b\nac\n n - - 849abb\z b\nac\n n - - 850abb$ b\nac\n n - - 851abb\Z b\nac n - - 852abb\z b\nac n - - 853abb$ b\nac n - - 854'abb\Z'm ac\nb\n n - - 855'abb\z'm ac\nb\n n - - 856'abb$'m ac\nb\n n - - 857'abb\Z'm b\nac\n n - - 858'abb\z'm b\nac\n n - - 859'abb$'m b\nac\n n - - 860'abb\Z'm b\nac n - - 861'abb\z'm b\nac n - - 862'abb$'m b\nac n - - 863abb\Z ca\nb\n n - - 864abb\z ca\nb\n n - - 865abb$ ca\nb\n n - - 866abb\Z b\nca\n n - - 867abb\z b\nca\n n - - 868abb$ b\nca\n n - - 869abb\Z b\nca n - - 870abb\z b\nca n - - 871abb$ b\nca n - - 872'abb\Z'm ca\nb\n n - - 873'abb\z'm ca\nb\n n - - 874'abb$'m ca\nb\n n - - 875'abb\Z'm b\nca\n n - - 876'abb\z'm b\nca\n n - - 877'abb$'m b\nca\n n - - 878'abb\Z'm b\nca n - - 879'abb\z'm b\nca n - - 880'abb$'m b\nca n - - 881'\Aa$'m a\n\n y $& a 882(^|x)(c) ca y $2 c 883a*abc?xyz+pqr{3}ab{2,}xy{4,5}pq{0,6}AB{0,}zz x n - - 884a(?{$a=2;$b=3;($b)=$a})b yabz y $b 2 885round\(((?>[^()]+))\) _I(round(xs * sz),1) y $1 xs * sz 886'((?x:.) )' x y $1- x - 887'((?-x:.) )'x x y $1- x- 888foo.bart foo.bart y - - 889'^d[x][x][x]'m abcd\ndxxx y - - 890.X(.+)+X bbbbXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 891.X(.+)+XX bbbbXcXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 892.XX(.+)+X bbbbXXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 893.X(.+)+X bbbbXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 894.X(.+)+XX bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 895.XX(.+)+X bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 896.X(.+)+[X] bbbbXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 897.X(.+)+[X][X] bbbbXcXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 898.XX(.+)+[X] bbbbXXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 899.X(.+)+[X] bbbbXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 900.X(.+)+[X][X] bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 901.XX(.+)+[X] bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 902.[X](.+)+[X] bbbbXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 903.[X](.+)+[X][X] bbbbXcXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 904.[X][X](.+)+[X] bbbbXXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y - - 905.[X](.+)+[X] bbbbXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 906.[X](.+)+[X][X] bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 907.[X][X](.+)+[X] bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa n - - 908tt+$ xxxtt y - - 909([a-\d]+) za-9z Sy $1 a-9 910([a-\d]+) - sc - False [] range 911([\d-z]+) a0-za Sy $1 0-z 912([\d-z]+) - sc $1 False [] range 913([\d-\s]+) a0- z Sy $1 0- 914([\d-\s]+) - sc $1 False [] range 915([a-[:digit:]]+) za-9z Sy $1 a-9 916([a-[:digit:]]+) - sc - False [] range 917([[:digit:]-z]+) =0-z= Sy $1 0-z 918([[:digit:]-z]+) - sc c False [] range 919([[:digit:]-[:alpha:]]+) =0-z= Sy $1 0-z 920([[:digit:]-[:alpha:]]+) - sc - False [] range 921\GX.*X aaaXbX n - - 922(\d+\.\d+) 3.1415926 y $1 3.1415926 923(\ba.{0,10}br) have a web browser y $1 a web br 924'\.c(pp|xx|c)?$'i Changes n - - 925'\.c(pp|xx|c)?$'i IO.c y - - 926'(\.c(pp|xx|c)?$)'i IO.c y $1 .c 927^([a-z]:) C:/ n - - 928'^\S\s+aa$'m \nx aa y - - 929(^|a)b ab y - - 930^([ab]*?)(b)?(c)$ abac y -$2- -- 931(\w)?(abc)\1b abcab n - - 932^(?:.,){2}c a,b,c y - - 933^(.,){2}c a,b,c y $1 b, 934^(?:[^,]*,){2}c a,b,c y - - 935^([^,]*,){2}c a,b,c y $1 b, 936^([^,]*,){3}d aaa,b,c,d y $1 c, 937^([^,]*,){3,}d aaa,b,c,d y $1 c, 938^([^,]*,){0,3}d aaa,b,c,d y $1 c, 939^([^,]{1,3},){3}d aaa,b,c,d y $1 c, 940^([^,]{1,3},){3,}d aaa,b,c,d y $1 c, 941^([^,]{1,3},){0,3}d aaa,b,c,d y $1 c, 942^([^,]{1,},){3}d aaa,b,c,d y $1 c, 943^([^,]{1,},){3,}d aaa,b,c,d y $1 c, 944^([^,]{1,},){0,3}d aaa,b,c,d y $1 c, 945^([^,]{0,3},){3}d aaa,b,c,d y $1 c, 946^([^,]{0,3},){3,}d aaa,b,c,d y $1 c, 947^([^,]{0,3},){0,3}d aaa,b,c,d y $1 c, 948(?i) y - - 949(?a:((?u)\w)\W) \xC0\xC0 y $& \xC0\xC0 950'(?!\A)x'm a\nxb\n y - - 951^(a(b)?)+$ aba y -$1-$2- -a-- 952^(aa(bb)?)+$ aabbaa y -$1-$2- -aa-- 953'^.{9}abc.*\n'm 123\nabcabcabcabc\n y - - 954^(a)?a$ a y -$1- -- 955^(a)?(?(1)a|b)+$ a n - - 956^(a\1?)(a\1?)(a\2?)(a\3?)$ aaaaaa y $1,$2,$3,$4 a,aa,a,aa 957^(a\1?){4}$ aaaaaa y $1 aa 958^(0+)?(?:x(1))? x1 y - - 959^([0-9a-fA-F]+)(?:x([0-9a-fA-F]+)?)(?:x([0-9a-fA-F]+))? 012cxx0190 y - - 960^(b+?|a){1,2}c bbbac y $1 a 961^(b+?|a){1,2}c bbbbac y $1 a 962\((\w\. \w+)\) cd. (A. Tw) y -$1- -A. Tw- 963((?:aaaa|bbbb)cccc)? aaaacccc y - - 964((?:aaaa|bbbb)cccc)? bbbbcccc y - - 965(a)?(a)+ a y $1:$2 :a - 966(ab)?(ab)+ ab y $1:$2 :ab - 967(abc)?(abc)+ abc y $1:$2 :abc - 968'b\s^'m a\nb\n n - - 969\ba a y - - 970^(a(??{"(?!)"})|(a)(?{1}))b ab y $2 a # [ID 20010811.006 (#7512)] 971ab(?i)cd AbCd n - - # [ID 20010809.023 (#7503)] 972ab(?i)cd abCd y - - 973(A|B)*(?(1)(CD)|(CD)) CD y $2-$3 -CD 974(A|B)*(?(1)(CD)|(CD)) ABCD y $2-$3 CD- 975(A|B)*?(?(1)(CD)|(CD)) CD y $2-$3 -CD # [ID 20010803.016 (#7438)] 976(A|B)*?(?(1)(CD)|(CD)) ABCD y $2-$3 CD- 977'^(o)(?!.*\1)'i Oo n - - 978(.*)\d+\1 abc12bc y $1 bc 979(?m:(foo\s*$)) foo\n bar y $1 foo 980(.*)c abcd y $1 ab 981(.*)(?=c) abcd y $1 ab 982(.*)(?=c)c abcd yB $1 ab 983(.*)(?=b|c) abcd y $1 ab 984(.*)(?=b|c)c abcd y $1 ab 985(.*)(?=c|b) abcd y $1 ab 986(.*)(?=c|b)c abcd y $1 ab 987(.*)(?=[bc]) abcd y $1 ab 988(.*)(?=[bc])c abcd yB $1 ab 989(.*)(?<=b) abcd y $1 ab 990(.*)(?<=b)c abcd y $1 ab 991(.*)(?<=b|c) abcd y $1 abc 992(.*)(?<=b|c)c abcd y $1 ab 993(.*)(?<=c|b) abcd y $1 abc 994(.*)(?<=c|b)c abcd y $1 ab 995(.*)(?<=[bc]) abcd y $1 abc 996(.*)(?<=[bc])c abcd y $1 ab 997(.*?)c abcd y $1 ab 998(.*?)(?=c) abcd y $1 ab 999(.*?)(?=c)c abcd yB $1 ab 1000(.*?)(?=b|c) abcd y $1 a 1001(.*?)(?=b|c)c abcd y $1 ab 1002(.*?)(?=c|b) abcd y $1 a 1003(.*?)(?=c|b)c abcd y $1 ab 1004(.*?)(?=[bc]) abcd y $1 a 1005(.*?)(?=[bc])c abcd yB $1 ab 1006(.*?)(?<=b) abcd y $1 ab 1007(.*?)(?<=b)c abcd y $1 ab 1008(.*?)(?<=b|c) abcd y $1 ab 1009(.*?)(?<=b|c)c abcd y $1 ab 1010(.*?)(?<=c|b) abcd y $1 ab 1011(.*?)(?<=c|b)c abcd y $1 ab 1012(.*?)(?<=[bc]) abcd y $1 ab 1013(.*?)(?<=[bc])c abcd y $1 ab 10142(]*)?$\1 2 y $& 2 1015(??{}) x y - - 1016a(b)?? abc y <$1> <> # undef [perl #16773] 1017(\d{1,3}\.){3,} 128.134.142.8 y <$1> <142.> # [perl #18019] 1018^.{3,4}(.+)\1\z foobarbar y $1 bar # 16 tests for [perl #23171] 1019^(?:f|o|b){3,4}(.+)\1\z foobarbar y $1 bar 1020^.{3,4}((?:b|a|r)+)\1\z foobarbar y $1 bar 1021^(?:f|o|b){3,4}((?:b|a|r)+)\1\z foobarbar y $1 bar 1022^.{3,4}(.+?)\1\z foobarbar y $1 bar 1023^(?:f|o|b){3,4}(.+?)\1\z foobarbar y $1 bar 1024^.{3,4}((?:b|a|r)+?)\1\z foobarbar y $1 bar 1025^(?:f|o|b){3,4}((?:b|a|r)+?)\1\z foobarbar y $1 bar 1026^.{2,3}?(.+)\1\z foobarbar y $1 bar 1027^(?:f|o|b){2,3}?(.+)\1\z foobarbar y $1 bar 1028^.{2,3}?((?:b|a|r)+)\1\z foobarbar y $1 bar 1029^(?:f|o|b){2,3}?((?:b|a|r)+)\1\z foobarbar y $1 bar 1030^.{2,3}?(.+?)\1\z foobarbar y $1 bar 1031^(?:f|o|b){2,3}?(.+?)\1\z foobarbar y $1 bar 1032^.{2,3}?((?:b|a|r)+?)\1\z foobarbar y $1 bar 1033^(?:f|o|b){2,3}?((?:b|a|r)+?)\1\z foobarbar y $1 bar 1034.*a(?!(b|cd)*e).*f ......abef n - - # [perl #23030] 1035x(?# - c - Sequence (?#... not terminated 1036:x(?#: - c - Sequence (?#... not terminated 1037(WORDS|WORD)S WORDS y $1 WORD 1038(X.|WORDS|X.|WORD)S WORDS y $1 WORD 1039(WORDS|WORLD|WORD)S WORDS y $1 WORD 1040(X.|WORDS|WORD|Y.)S WORDS y $1 WORD 1041(foo|fool|x.|money|parted)$ fool y $1 fool 1042(x.|foo|fool|x.|money|parted|y.)$ fool y $1 fool 1043(foo|fool|money|parted)$ fool y $1 fool 1044(foo|fool|x.|money|parted)$ fools n - - 1045(x.|foo|fool|x.|money|parted|y.)$ fools n - - 1046(foo|fool|money|parted)$ fools n - - 1047(a|aa|aaa||aaaa|aaaaa|aaaaaa)(b|c) aaaaaaaaaaaaaaab y $1$2 aaaaaab 1048(a|aa|aaa||aaaa|aaaaa|aaaaaa)(??{$1&&""})(b|c) aaaaaaaaaaaaaaab y $1$2 aaaaaab 1049(a|aa|aaa|aaaa|aaaaa|aaaaaa)(??{$1&&"foo"})(b|c) aaaaaaaaaaaaaaab n - - 1050^(a*?)(?!(aa|aaaa)*$) aaaaaaaaaaaaaaaaaaaa y $1 a # [perl #34195] 1051^(a*?)(?!(aa|aaaa)*$)(?=a\z) aaaaaaaa y $1 aaaaaaa 1052^(.)\s+.$(?(1)) A B y $1 A # [perl #37688] 1053(?:r?)*?r|(.{2,4}) abcde y $1 abcd 1054(?!)+?|(.{2,4}) abcde y $1 abcd 1055^(a*?)(?!(a{6}|a{5})*$) aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa y $+[1] 12 # super-linear cache bug may return 18 1056^((?>(?:aa)?b)?) aab y $1 aab 1057^((?:aa)*)(?:X+((?:\d+|-)(?:X+(.+))?))?$ aaaaX5 y $1 aaaa 1058X(A|B||C|D)Y XXXYYY y $& XY # Trie w/ NOTHING 1059(?i:X([A]|[B]|y[Y]y|[D]|)Y) XXXYYYB y $& XY # Trie w/ NOTHING 1060^([a]{1})*$ aa y $1 a 1061a(?!b(?!c))(..) abababc y $1 bc # test nested negatives 1062a(?!b(?=a))(..) abababc y $1 bc # test nested lookaheads 1063a(?!b(?!c(?!d(?!e))))...(.) abxabcdxabcde y $1 e 1064X(?!b+(?!(c+)*(?!(c+)*d))).*X aXbbbbbbbcccccccccccccaaaX y - - 1065^(XXXXXXXXXX|YYYYYYYYYY|Z.Q*X|Z[TE]Q*P): ZEQQQQQQQQQQQQQQQQQQP: y $1 ZEQQQQQQQQQQQQQQQQQQP 1066^(XXXXXXXXXX|YYYYYYYYYY|Z.Q*X|Z[TE]Q*P): ZEQQQX: y $1 ZEQQQX 1067^([TUV]+|XXXXXXXXXX|YYYYYYYYYY|Z.Q*X|Z[TE]Q*P): ZEQQQQQQQQQQQQQQQQQQP: y $1 ZEQQQQQQQQQQQQQQQQQQP 1068^([TUV]+|XXXXXXXXXX|YYYYYYYYYY|Z.Q*X|Z[TE]Q*P): ZEQQQX: y $1 ZEQQQX 1069^([TUV]+|XXXXXXXXXX|YYYYYYYYYY|Z.Q*X|Z[TE]Q*P|[MKJ]): ZEQQQQQQQQQQQQQQQQQQP: y $1 ZEQQQQQQQQQQQQQQQQQQP 1070^([TUV]+|XXXXXXXXXX|YYYYYYYYYY|Z.Q*X|Z[TE]Q*P|[MKJ]): ZEQQQX: y $1 ZEQQQX 1071^(XXX|YYY|Z.Q*X|Z[TE]Q*P): ZEQQQQQQQQQQQQQQQQQQP: y $1 ZEQQQQQQQQQQQQQQQQQQP 1072^(XXX|YYY|Z.Q*X|Z[TE]Q*P): ZEQQQX: y $1 ZEQQQX 1073^([TUV]+|XXX|YYY|Z.Q*X|Z[TE]Q*P): ZEQQQQQQQQQQQQQQQQQQP: y $1 ZEQQQQQQQQQQQQQQQQQQP 1074^([TUV]+|XXX|YYY|Z.Q*X|Z[TE]Q*P): ZEQQQX: y $1 ZEQQQX 1075^([TUV]+|XXX|YYY|Z.Q*X|Z[TE]Q*P|[MKJ]): ZEQQQQQQQQQQQQQQQQQQP: y $1 ZEQQQQQQQQQQQQQQQQQQP 1076^([TUV]+|XXX|YYY|Z.Q*X|Z[TE]Q*P|[MKJ]): ZEQQQX: y $1 ZEQQQX 1077X(?:ABCF[cC]x*|ABCD|ABCF):(?:DIT|DID|DIM) XABCFCxxxxxxxxxx:DIM y $& XABCFCxxxxxxxxxx:DIM 1078(((ABCD|ABCE|ABCF)))(A|B|C[xy]*): ABCFCxxxxxxxxxx:DIM y $& ABCFCxxxxxxxxxx: 1079(?=foo) foo y pos 0 1080(?=foo) XfooY y pos 1 1081.*(?=foo) XfooY y pos 1 1082(?=.*P)P aP y pos 2 1083(?<=foo) foo y pos 3 1084(?<=foo) XfooY y pos 4 1085.*(?<=foo) foo y pos 3 1086.*(?<=foo) XfooY y pos 4 1087(?<=foo)Y XfooY y pos 5 1088o(?<=foo)Y ..XfooY.. y pos 7 1089X(?=foo)f ..XfooY.. y pos 4 1090X(?=foo) ..XfooY.. y pos 3 1091X(?<=foo.)[YZ] ..XfooXY.. y pos 8 1092(?=XY*foo) Xfoo y pos 0 1093^(?=XY*foo) Xfoo y pos 0 1094^(??{"a+"})a aa y $& aa 1095^(?:(??{"a+"})|b)a aa y $& aa 1096^(??{chr 0x100}).$ \x{100}\x{100} y $& \x{100}\x{100} 1097^(??{q(\x{100})}). \x{100}\x{100} y $& \x{100}\x{100} 1098^(??{q(.+)})\x{100} \x{100}\x{100} y $& \x{100}\x{100} 1099^(??{q(.)})\x{100} \x{100}\x{100} y $& \x{100}\x{100} 1100^(??{chr 0x100})\xbb \x{100}\x{bb} y $& \x{100}\x{bb} 1101^(.)(??{"(.)(.)"})(.)$ abcd y $1-$2 a-d 1102^(.)(??{"(bz+|.)(.)"})(.)$ abcd y $1-$2 a-d 1103^(.)((??{"(.)(cz+)"})|.) abcd y $1-$2 a-b 1104^a(?>(??{q(b)}))(??{q(c)})d abcd y - - 1105^x(??{""})+$ x y $& x 1106^(<(?:[^<>]+|(?3)|(?1))*>)()(!>!>!>)$ <<!>!>!>><>>!>!>!> y $1 <<!>!>!>><>> 1107^(<(?:[^<>]+|(?1))*>)$ <<><<<><>>>> y $1 <<><<<><>>>> 1108((?2)*)([fF]o+) fooFoFoo y $1-$2 fooFo-Foo 1109(<(?:[^<>]+|(?R))*>) <<><<<><>>>> y $1 <<><<<><>>>> 1110(?<n>foo|bar|baz) snofooewa y $1 foo 1111(?<n>foo|bar|baz) snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1112(?<n>foo|bar|baz)(?<m>[ew]+) snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1113(?<n>foo|bar|baz)(?<m>[ew]+) snofooewa yM $+{m} ew miniperl cannot load Tie::Hash::NamedCapture 1114(?<n>foo)|(?<n>bar)|(?<n>baz) snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1115(?<n>foo)(??{ $+{n} }) snofooefoofoowaa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1116(?P<n>foo|bar|baz) snofooewa y $1 foo 1117(?P<n>foo|bar|baz) snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1118(?P<n>foo|bar|baz)(?P<m>[ew]+) snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1119(?P<n>foo|bar|baz)(?P<m>[ew]+) snofooewa yM $+{m} ew miniperl cannot load Tie::Hash::NamedCapture 1120(?P<n>foo)|(?P<n>bar)|(?P<n>baz) snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1121(?P<n>foo)(??{ $+{n} }) snofooefoofoowaa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1122(?P<=n>foo|bar|baz) - c - Group name must start with a non-digit word character 1123(?P<!n>foo|bar|baz) - c - Group name must start with a non-digit word character 1124(?PX<n>foo|bar|baz) - c - Sequence (?PX...) not recognized 1125/(?'n'foo|bar|baz)/ snofooewa y $1 foo 1126/(?'n'foo|bar|baz)/ snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1127/(?'n'foo|bar|baz)(?'m'[ew]+)/ snofooewa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1128/(?'n'foo|bar|baz)(?'m'[ew]+)/ snofooewa yM $+{m} ew miniperl cannot load Tie::Hash::NamedCapture 1129/(?'n'foo)|(?'n'bar)|(?<n>baz)/ snobazewa yM $+{n} baz miniperl cannot load Tie::Hash::NamedCapture 1130/(?'n'foo)(??{ $+{n} })/ snofooefoofoowaa yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1131/(?'n'foo)\k<n>/ ..foofoo.. y $1 foo 1132/(?'n'foo)\k<n>/ ..foofoo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1133/(?<n>foo)\k'n'/ ..foofoo.. y $1 foo 1134/(?<n>foo)\k'n'/ ..foofoo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1135/(?:(?<n>foo)|(?<n>bar))\k<n>/ ..barbar.. yM $+{n} bar miniperl cannot load Tie::Hash::NamedCapture 1136/^(?'main'<(?:[^<>]+|(?&crap)|(?&main))*>)(?'empty')(?'crap'!>!>!>)$/ <<!>!>!>><>>!>!>!> yM $+{main} <<!>!>!>><>> miniperl cannot load Tie::Hash::NamedCapture 1137/^(?'main'<(?:[^<>]+|(?&main))*>)$/ <<><<<><>>>> y $1 <<><<<><>>>> 1138/(?'first'(?&second)*)(?'second'[fF]o+)/ fooFoFoo yM $+{first}-$+{second} fooFo-Foo miniperl cannot load Tie::Hash::NamedCapture 1139(?<A>foo)?(?(<A>)bar|nada) foobar yM $+{A} foo miniperl cannot load Tie::Hash::NamedCapture 1140(?<A>foo)?(?(<A>)bar|nada) foo-barnada y $& nada 1141(?<A>foo)?(?(1)bar|nada) foo-barnada y $& nada 1142(?<A>foo(?(R)bar))?(?1) foofoobar y $1 foo 1143(?<A>foo(?(R)bar))?(?1) foofoobar y $& foofoobar 1144(x)(?<A>foo(?(R&A)bar))?(?&A) xfoofoobar y $2 foo 1145(x)(?<A>foo(?(R&A)bar))?(?&A) xfoofoobar y $& xfoofoobar 1146(x)(?<A>foo(?(R2)bar))?(?&A) xfoofoobar y $2 foo 1147(x)(?<A>foo(?(R2)bar))?(?&A) xfoofoobar y $& xfoofoobar 1148(?1)(?(DEFINE)(blah)) blah y $& blah 1149/^(?<PAL>(?<CHAR>.)((?&PAL)|.?)\k<CHAR>)$/ madamimadam y $& madamimadam 1150/^(?<PAL>(?<CHAR>.)((?&PAL)|.?)\k<CHAR>)$/ madamiamadam n - - 1151/(a)?((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1152/(a)*((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1153/(a)+((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1154/(a){1,100}((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1155/(a){0,100}((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1156/(a)??((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1157/(a)*?((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1158/(a)+?((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1159/(a){1,100}?((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1160/(a){0,100}?((?1))(fox)/ aafox y $1-$2-$3 a-a-fox 1161/(ab)?((?1))(fox)/ ababfox y $1-$2-$3 ab-ab-fox 1162/(ab)*((?1))(fox)/ ababfox y $1-$2-$3 ab-ab-fox 1163/(ab)+((?1))(fox)/ ababfox y $1-$2-$3 ab-ab-fox 1164/(ab){1,100}((?1))(fox)/ ababfox y $1-$2-$3 ab-ab-fox 1165/(ab){0,100}((?1))(fox)/ ababfox y $1-$2-$3 ab-ab-fox 1166foo(?0)?bar phoofoofoobarbarbarr y $& foofoobarbar 1167foo(?R)?bar phoofoofoobarbarbarr y $& foofoobarbar 1168# possessive captures 1169a++a aaaaa n - - 1170a*+a aaaaa n - - 1171a{1,5}+a aaaaa n - - 1172a?+a ab n - - 1173a++b aaaaab y $& aaaaab 1174a*+b aaaaab y $& aaaaab 1175a{1,5}+b aaaaab y $& aaaaab 1176a?+b ab y $& ab 1177fooa++a fooaaaaa n - - 1178fooa*+a fooaaaaa n - - 1179fooa{1,5}+a fooaaaaa n - - 1180fooa?+a fooab n - - 1181fooa++b fooaaaaab y $& fooaaaaab 1182fooa*+b fooaaaaab y $& fooaaaaab 1183fooa{1,5}+b fooaaaaab y $& fooaaaaab 1184fooa?+b fooab y $& fooab 1185(?:aA)++(?:aA) aAaAaAaAaA n - aAaAaAaAaA 1186(aA)++(aA) aAaAaAaAaA n - aAaAaAaAaA 1187(aA|bB)++(aA|bB) aAaAbBaAbB n - aAaAbBaAbB 1188(?:aA|bB)++(?:aA|bB) aAbBbBbBaA n - aAbBbBbBaA 1189(?:aA)*+(?:aA) aAaAaAaAaA n - aAaAaAaAaA 1190(aA)*+(aA) aAaAaAaAaA n - aAaAaAaAaA 1191(aA|bB)*+(aA|bB) aAaAbBaAaA n - aAaAbBaAaA 1192(?:aA|bB)*+(?:aA|bB) aAaAaAbBaA n - aAaAaAbBaA 1193(?:aA){1,5}+(?:aA) aAaAaAaAaA n - aAaAaAaAaA 1194(aA){1,5}+(aA) aAaAaAaAaA n - aAaAaAaAaA 1195(aA|bB){1,5}+(aA|bB) aAaAbBaAaA n - aAaAbBaAaA 1196(?:aA|bB){1,5}+(?:aA|bB) bBbBbBbBbB n - bBbBbBbBbB 1197(?:aA)?+(?:aA) aAb n - aAb 1198(aA)?+(aA) aAb n - aAb 1199(aA|bB)?+(aA|bB) bBb n - bBb 1200(?:aA|bB)?+(?:aA|bB) aAb n - aAb 1201(?:aA)++b aAaAaAaAaAb y $& aAaAaAaAaAb 1202(aA)++b aAaAaAaAaAb y $& aAaAaAaAaAb 1203(aA|bB)++b aAbBaAaAbBb y $& aAbBaAaAbBb 1204(?:aA|bB)++b aAbBbBaAaAb y $& aAbBbBaAaAb 1205(?:aA)*+b aAaAaAaAaAb y $& aAaAaAaAaAb 1206(aA)*+b aAaAaAaAaAb y $& aAaAaAaAaAb 1207(aA|bB)*+b bBbBbBbBbBb y $& bBbBbBbBbBb 1208(?:aA|bB)*+b bBaAbBbBaAb y $& bBaAbBbBaAb 1209(?:aA){1,5}+b aAaAaAaAaAb y $& aAaAaAaAaAb 1210(aA){1,5}+b aAaAaAaAaAb y $& aAaAaAaAaAb 1211(aA|bB){1,5}+b bBaAbBaAbBb y $& bBaAbBaAbBb 1212(?:aA|bB){1,5}+b aAbBaAbBbBb y $& aAbBaAbBbBb 1213(?:aA)?+b aAb y $& aAb 1214(aA)?+b aAb y $& aAb 1215(aA|bB)?+b bBb y $& bBb 1216(?:aA|bB)?+b bBb y $& bBb 1217foo(?:aA)++(?:aA) fooaAaAaAaAaA n - fooaAaAaAaAaA 1218foo(aA)++(aA) fooaAaAaAaAaA n - fooaAaAaAaAaA 1219foo(aA|bB)++(aA|bB) foobBbBbBaAaA n - foobBbBbBaAaA 1220foo(?:aA|bB)++(?:aA|bB) fooaAaAaAaAaA n - fooaAaAaAaAaA 1221foo(?:aA)*+(?:aA) fooaAaAaAaAaA n - fooaAaAaAaAaA 1222foo(aA)*+(aA) fooaAaAaAaAaA n - fooaAaAaAaAaA 1223foo(aA|bB)*+(aA|bB) foobBaAbBaAaA n - foobBaAbBaAaA 1224foo(?:aA|bB)*+(?:aA|bB) fooaAaAbBbBaA n - fooaAaAbBbBaA 1225foo(?:aA){1,5}+(?:aA) fooaAaAaAaAaA n - fooaAaAaAaAaA 1226foo(aA){1,5}+(aA) fooaAaAaAaAaA n - fooaAaAaAaAaA 1227foo(aA|bB){1,5}+(aA|bB) fooaAbBbBaAaA n - fooaAbBbBaAaA 1228foo(?:aA|bB){1,5}+(?:aA|bB) fooaAbBbBaAbB n - fooaAbBbBaAbB 1229foo(?:aA)?+(?:aA) fooaAb n - fooaAb 1230foo(aA)?+(aA) fooaAb n - fooaAb 1231foo(aA|bB)?+(aA|bB) foobBb n - foobBb 1232foo(?:aA|bB)?+(?:aA|bB) fooaAb n - fooaAb 1233foo(?:aA)++b fooaAaAaAaAaAb y $& fooaAaAaAaAaAb 1234foo(aA)++b fooaAaAaAaAaAb y $& fooaAaAaAaAaAb 1235foo(aA|bB)++b foobBaAbBaAbBb y $& foobBaAbBaAbBb 1236foo(?:aA|bB)++b fooaAaAbBaAaAb y $& fooaAaAbBaAaAb 1237foo(?:aA)*+b fooaAaAaAaAaAb y $& fooaAaAaAaAaAb 1238foo(aA)*+b fooaAaAaAaAaAb y $& fooaAaAaAaAaAb 1239foo(aA|bB)*+b foobBbBaAaAaAb y $& foobBbBaAaAaAb 1240foo(?:aA|bB)*+b foobBaAaAbBaAb y $& foobBaAaAbBaAb 1241foo(?:aA){1,5}+b fooaAaAaAaAaAb y $& fooaAaAaAaAaAb 1242foo(aA){1,5}+b fooaAaAaAaAaAb y $& fooaAaAaAaAaAb 1243foo(aA|bB){1,5}+b foobBaAaAaAaAb y $& foobBaAaAaAaAb 1244foo(?:aA|bB){1,5}+b fooaAbBaAbBbBb y $& fooaAbBaAbBbBb 1245foo(?:aA)?+b fooaAb y $& fooaAb 1246foo(aA)?+b fooaAb y $& fooaAb 1247foo(aA|bB)?+b foobBb y $& foobBb 1248foo(?:aA|bB)?+b foobBb y $& foobBb 1249 1250([^()]++|\([^()]*\))+ ((abc(ade)ufh()()x y $& abc(ade)ufh()()x 1251round\(([^()]++)\) _I(round(xs * sz),1) y $1 xs * sz 1252 1253(foo[1x]|bar[2x]|baz[3x])+y foo1bar2baz3y y $1 baz3 1254(foo[1x]|bar[2x]|baz[3x])+y foo1bar2baz3y y $& foo1bar2baz3y 1255(foo[1x]|bar[2x]|baz[3x])*y foo1bar2baz3y y $1 baz3 1256(foo[1x]|bar[2x]|baz[3x])*y foo1bar2baz3y y $& foo1bar2baz3y 1257 1258([yX].|WORDS|[yX].|WORD)S WORDS y $1 WORD 1259(WORDS|WORLD|WORD)S WORDS y $1 WORD 1260([yX].|WORDS|WORD|[xY].)S WORDS y $1 WORD 1261(foo|fool|[zx].|money|parted)$ fool y $1 fool 1262([zx].|foo|fool|[zq].|money|parted|[yx].)$ fool y $1 fool 1263(foo|fool|[zx].|money|parted)$ fools n - - 1264([zx].|foo|fool|[qx].|money|parted|[py].)$ fools n - - 1265 1266([yX].|WORDS|[yX].|WORD)+S WORDS y $1 WORD 1267(WORDS|WORLD|WORD)+S WORDS y $1 WORD 1268([yX].|WORDS|WORD|[xY].)+S WORDS y $1 WORD 1269(foo|fool|[zx].|money|parted)+$ fool y $1 fool 1270([zx].|foo|fool|[zq].|money|parted|[yx].)+$ fool y $1 fool 1271(foo|fool|[zx].|money|parted)+$ fools n - - 1272([zx].|foo|fool|[qx].|money|parted|[py].)+$ fools n - - 1273 1274(x|y|z[QW])+(longish|loquatious|excessive|overblown[QW])+ xyzQzWlongishoverblownW y $1-$2 zW-overblownW 1275(x|y|z[QW])*(longish|loquatious|excessive|overblown[QW])* xyzQzWlongishoverblownW y $1-$2 zW-overblownW 1276(x|y|z[QW]){1,5}(longish|loquatious|excessive|overblown[QW]){1,5} xyzQzWlongishoverblownW y $1-$2 zW-overblownW 1277 1278(x|y|z[QW])++(longish|loquatious|excessive|overblown[QW])++ xyzQzWlongishoverblownW y $1-$2 zW-overblownW 1279(x|y|z[QW])*+(longish|loquatious|excessive|overblown[QW])*+ xyzQzWlongishoverblownW y $1-$2 zW-overblownW 1280(x|y|z[QW]){1,5}+(longish|loquatious|excessive|overblown[QW]){1,5}+ xyzQzWlongishoverblownW y $1-$2 zW-overblownW 1281 1282a*(?!) aaaab n - - 1283a*(*FAIL) aaaab n - - 1284a*(*F) aaaab n - - 1285 1286(A(A|B(*ACCEPT)|C)D)(E) AB y $1 AB 1287(A(A|B(*ACCEPT)|C)D)(E) ACDE y $1$2$3 ACDCE 1288 1289(a)(?:(?-1)|(?+1))(b) aab y $&-$1-$2 aab-a-b 1290(a)(?:(?-1)|(?+1))(b) abb y $1-$2 a-b 1291(a)(?:(?-1)|(?+1))(b) acb n - - 1292 1293(foo)(\g-2) foofoo y $1-$2 foo-foo 1294(foo)(\g-2)(foo)(\g-2) foofoofoofoo y $1-$2-$3-$4 foo-foo-foo-foo 1295(([abc]+) \g-1)(([abc]+) \g{-1}) abc abccba cba y $2-$4 abc-cba 1296(a)(b)(c)\g1\g2\g3 abcabc y $1$2$3 abc 1297 1298# \k<n> preceded by a literal 1299/(?'n'foo) \k<n>/ ..foo foo.. y $1 foo 1300/(?'n'foo) \k<n>/ ..foo foo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1301/(?<n>foo) \k'n'/ ..foo foo.. y $1 foo 1302/(?<n>foo) \k'n'/ ..foo foo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1303/(?'a1'foo) \k'a1'/ ..foo foo.. yM $+{a1} foo miniperl cannot load Tie::Hash::NamedCapture 1304/(?<a1>foo) \k<a1>/ ..foo foo.. yM $+{a1} foo miniperl cannot load Tie::Hash::NamedCapture 1305/(?'_'foo) \k'_'/ ..foo foo.. yM $+{_} foo miniperl cannot load Tie::Hash::NamedCapture 1306/(?<_>foo) \k<_>/ ..foo foo.. yM $+{_} foo miniperl cannot load Tie::Hash::NamedCapture 1307/(?'_0_'foo) \k'_0_'/ ..foo foo.. yM $+{_0_} foo miniperl cannot load Tie::Hash::NamedCapture 1308/(?<_0_>foo) \k<_0_>/ ..foo foo.. yM $+{_0_} foo miniperl cannot load Tie::Hash::NamedCapture 1309/(?'0'foo) bar/ - c - Group name must start with a non-digit word character 1310/(?<0>foo) bar/ - c - Group name must start with a non-digit word character 1311/(?'12'foo) bar/ - c - Group name must start with a non-digit word character 1312/(?<12>foo) bar/ - c - Group name must start with a non-digit word character 1313/(?'1a'foo) bar/ - c - Group name must start with a non-digit word character 1314/(?<1a>foo) bar/ - c - Group name must start with a non-digit word character 1315/(?''foo) bar/ - c - Group name must start with a non-digit word character 1316/(?<>foo) bar/ - c - Group name must start with a non-digit word character 1317/foo \k'n'/ - c - Reference to nonexistent named group 1318/foo \k<n>/ - c - Reference to nonexistent named group 1319/foo \k'a1'/ - c - Reference to nonexistent named group 1320/foo \k<a1>/ - c - Reference to nonexistent named group 1321/foo \k'_'/ - c - Reference to nonexistent named group 1322/foo \k<_>/ - c - Reference to nonexistent named group 1323/foo \k'_0_'/ - c - Reference to nonexistent named group 1324/foo \k<_0_>/ - c - Reference to nonexistent named group 1325/foo \k'0'/ - c - Group name must start with a non-digit word character 1326/foo \k<0>/ - c - Group name must start with a non-digit word character 1327/foo \k'12'/ - c - Group name must start with a non-digit word character 1328/foo \k<12>/ - c - Group name must start with a non-digit word character 1329/foo \k'1a'/ - c - Group name must start with a non-digit word character 1330/foo \k<1a>/ - c - Group name must start with a non-digit word character 1331/foo \k''/ - c - Group name must start with a non-digit word character 1332/foo \k<>/ - c - Group name must start with a non-digit word character 1333/(?<as>as) (\w+) \k<as> (\w+)/ as easy as pie y $1-$2-$3 as-easy-pie 1334 1335# \g{...} with a name as the argument 1336/(?'n'foo) \g{n}/ ..foo foo.. y $1 foo 1337/(?'n'foo) \g{n}/ ..foo foo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1338/(?<n>foo) \g{n}/ ..foo foo.. y $1 foo 1339/(?<n>foo) \g{n}/ ..foo foo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1340/(?<as>as) (\w+) \g{as} (\w+)/ as easy as pie y $1-$2-$3 as-easy-pie 1341 1342# Python style named capture buffer stuff 1343/(?P<n>foo)(?P=n)/ ..foofoo.. y $1 foo 1344/(?P<n>foo)(?P=n)/ ..foofoo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1345/(?:(?P<n>foo)|(?P<n>bar))(?P=n)/ ..barbar.. yM $+{n} bar miniperl cannot load Tie::Hash::NamedCapture 1346/^(?P<PAL>(?P<CHAR>.)((?P>PAL)|.?)(?P=CHAR))$/ madamimadam y $& madamimadam 1347/^(?P<PAL>(?P<CHAR>.)((?P>PAL)|.?)(?P=CHAR))$/ madamiamadam n - - 1348/(?P<n>foo) (?P=n)/ ..foo foo.. y $1 foo 1349/(?P<n>foo) (?P=n)/ ..foo foo.. yM $+{n} foo miniperl cannot load Tie::Hash::NamedCapture 1350/(?P<as>as) (\w+) (?P=as) (\w+)/ as easy as pie y $1-$2-$3 as-easy-pie 1351 1352#check that non identifiers as names are treated as the appropriate lookaround 1353(?<=bar>)foo bar>foo y $& foo 1354(?<!bar>)foo bar>foo n - - 1355(?<=bar>ABC)foo bar>ABCfoo y $& foo 1356(?<!bar>ABC)foo bar>ABCfoo n - - 1357(?<bar>)foo bar>ABCfoo y $& foo 1358(?<bar>ABC)foo bar>ABCfoo y $& ABCfoo 1359 1360(?<=abcd(?<=(aaaabcd))) ..aaaabcd.. y $1 aaaabcd 1361(?=xy(?<=(aaxy))) ..aaxy.. y $1 aaxy 1362(?=xy(?<=(aaxyz?))) ..aaxy.. y $1 aaxy 1363 1364X(\w+)(?=\s)|X(\w+) Xab y [$1-$2] [-ab] 1365 1366#check that branch reset works ok. 1367(?|(a)) a y $1-$+-$^N a-a-a 1368(?|a(.)b|d(.(o).)d|i(.)(.)j)(.) d!o!da y $1-$2-$3 !o!-o-a 1369(?|a(.)b|d(.(o).)d|i(.)(.)j)(.) aabc y $1-$2-$3 a--c 1370(?|a(.)b|d(.(o).)d|i(.)(.)j)(.) ixyjp y $1-$2-$3 x-y-p 1371(?|(?|(a)|(b))|(?|(c)|(d))) a y $1 a 1372(?|(?|(a)|(b))|(?|(c)|(d))) b y $1 b 1373(?|(?|(a)|(b))|(?|(c)|(d))) c y $1 c 1374(?|(?|(a)|(b))|(?|(c)|(d))) d y $1 d 1375(.)(?|(.)(.)x|(.)d)(.) abcde y $1-$2-$3-$4-$5- b-c--e-- 1376(\N)(?|(\N)(\N)x|(\N)d)(\N) abcde y $1-$2-$3-$4-$5- b-c--e-- 1377(?|(?<foo>x)) x yM $+{foo} x miniperl cannot load Tie::Hash::NamedCapture 1378(?|(?<foo>x)|(?<bar>y)) x yM $+{foo} x miniperl cannot load Tie::Hash::NamedCapture 1379(?|(?<bar>y)|(?<foo>x)) x yM $+{foo} x miniperl cannot load Tie::Hash::NamedCapture 1380(?<bar>)(?|(?<foo>x)) x yM $+{foo} x miniperl cannot load Tie::Hash::NamedCapture 1381# Used to crash, because the last branch was ignored when the parens 1382# were counted: 1383(?|(b)|()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()(a)) a y $& a 1384 1385#Bug #41492 1386(?(DEFINE)(?<A>(?&B)+)(?<B>a))(?&A) a y $& a 1387(?(DEFINE)(?<A>(?&B)+)(?<B>a))(?&A) aa y $& aa 1388\x{100}?(??{""})xxx xxx y $& xxx 1389 1390foo(\R)bar foo\r\nbar y $1 \r\n 1391foo(\R)bar foo\nbar y $1 \n 1392foo(\R)bar foo\rbar y $1 \r 1393 1394foo(\R+)bar foo\r\n\x{85}\r\n\nbar y $1 \r\n\x{85}\r\n\n 1395(\V+)(\R) foo\r\n\x{85}\r\n\nbar y $1-$2 foo-\r\n 1396(\R+)(\V) foo\r\n\x{85}\r\n\nbar y $1-$2 \r\n\x{85}\r\n\n-b 1397foo(\R)bar foo\x{85}bar y $1 \x{85} 1398(\V)(\R) foo\x{85}bar y $1-$2 o-\x{85} 1399(\R)(\V) foo\x{85}bar y $1-$2 \x{85}-b 1400foo(\R)bar foo\r\nbar y $1 \r\n 1401(\V)(\R) foo\r\nbar y $1-$2 o-\r\n 1402(\R)(\V) foo\r\nbar y $1-$2 \r\n-b 1403foo(\R)bar foo\r\nbar y $1 \r\n 1404(\V)(\R) foo\r\nbar y $1-$2 o-\r\n 1405(\R)(\V) foo\r\nbar y $1-$2 \r\n-b 1406foo(\R)bar foo\rbar y $1 \r 1407(\V)(\R) foo\rbar y $1-$2 o-\r 1408(\R)(\V) foo\rbar y $1-$2 \r-b 1409 1410foo(\v+)bar foo\r\n\x{85}\r\n\nbar y $1 \r\n\x{85}\r\n\n 1411(\V+)(\v) foo\r\n\x{85}\r\n\nbar y $1-$2 foo-\r 1412(\v+)(\V) foo\r\n\x{85}\r\n\nbar y $1-$2 \r\n\x{85}\r\n\n-b 1413foo(\v)bar foo\x{85}bar y $1 \x{85} 1414(\V)(\v) foo\x{85}bar y $1-$2 o-\x{85} 1415(\v)(\V) foo\x{85}bar y $1-$2 \x{85}-b 1416foo(\v)bar foo\rbar y $1 \r 1417(\V)(\v) foo\rbar y $1-$2 o-\r 1418(\v)(\V) foo\rbar y $1-$2 \r-b 1419 1420 1421foo(\h+)bar foo\t\x{A0}bar y $1 \t\x{A0} 1422(\H+)(\h) foo\t\x{A0}bar y $1-$2 foo-\t 1423(\h+)(\H) foo\t\x{A0}bar y $1-$2 \t\x{A0}-b 1424foo(\h)bar foo\x{A0}bar y $1 \x{A0} 1425(\H)(\h) foo\x{A0}bar y $1-$2 o-\x{A0} 1426(\h)(\H) foo\x{A0}bar y $1-$2 \x{A0}-b 1427foo(\h)bar foo\tbar y $1 \t 1428(\H)(\h) foo\tbar y $1-$2 o-\t 1429(\h)(\H) foo\tbar y $1-$2 \t-b 1430 1431.*\z foo\n y -$&- -- 1432\N*\z foo\n y -$&- -- 1433.*\Z foo\n y -$&- -foo- 1434\N*\Z foo\n y -$&- -foo- 1435^(?:(\d)x)?\d$ 1 y ${\(defined($1)?1:0)} 0 1436.*?(?:(\w)|(\w))x abx y $1-$2 b- 1437 14380{50} 000000000000000000000000000000000000000000000000000 y - - 1439^a?(?=b)b ab y $& ab # Bug #56690 1440^a*(?=b)b ab y $& ab # Bug #56690 1441/>\d+$ \n/ix >10\n y $& >10 1442/>\d+$ \n/ix >1\n y $& >1 1443/\d+$ \n/ix >10\n y $& 10 1444/>\d\d$ \n/ix >10\n y $& >10 1445/>\d+$ \n/x >10\n y $& >10 1446 1447# Two regressions in 5.8.x (only) introduced by change 30638 1448# Simplification of the test failure in XML::LibXML::Simple: 1449/^\s*i.*?o\s*$/s io\n io y - - 1450# As reported in #59168 by Father Chrysostomos: 1451/(.*?)a(?!(a+)b\2c)/ baaabaac y $&-$1 baa-ba 1452# [perl #60344] Regex lookbehind failure after an (if)then|else in perl 5.10 1453/\A(?(?=db2)db2|\D+)(?<!processed)\.csv\z/xms sql_processed.csv n - - 1454/\N{U+0100}/ \x{100} y $& \x{100} # Bug #59328 1455/[a\N{U+0100}]/ \x{100} y $& \x{100} 1456/[a\N{U+0100}]/ a y $& a 1457 1458# Verify that \N{U+...} forces Unicode rules 1459/\N{U+41}\x{c1}/i a\x{e1} y $& a\x{e1} 1460'\N{U+41}\x{c1}'i a\x{e1} y $& a\x{e1} 1461/[\N{U+41}\x{c1}]/i \x{e1} y $& \x{e1} 1462'[\N{U+41}\x{c1}]'i \x{e1} y $& \x{e1} 1463'\N{U+41}' A y $& A # Even for single quoted patterns 1464 1465[\s][\S] \x{a0}\x{a0} n - - # Unicode complements should not match same character 1466 1467# was generating malformed utf8 1468'[\x{100}\xff]'i \x{ff} y $& \x{ff} 1469 1470((??{ "(?:|)" }))\s C\x20 y - - 1471 1472# Verify that \ escapes the { after \N, and causes \N to match non-newline 1473abc\N\{U+BEEF} abc\n{UBEEF} n 1474abc\N\{U+BEEF\} abc.{UBEEF} y $& abc.{UBEEF} 1475[abc\N\{U+BEEF\}] - c - \\N in a character class must be a named character 1476 1477# Verify that \N can be trailing and causes \N to match non-newline 1478abc\N abcd y $& abcd 1479abc\N abc\n n 1480 1481# Verify get errors. For these, we need // or else puts it in single quotes, 1482# and bypasses the lexer. 1483/\N{U+}/ - c - Invalid hexadecimal number 1484/[\N{U+}]/ - c - Invalid hexadecimal number 1485/abc\N{def/ - c - Missing right brace 1486/\N{U+4AG3}/ - c - Invalid hexadecimal number 1487/[\N{U+4AG3}]/ - c - Invalid hexadecimal number 1488 1489# And verify that in single quotes which bypasses the lexer, the regex compiler 1490# figures it out. 1491\N{U+} - c - Invalid hexadecimal number 1492[\N{U+}] - c - Invalid hexadecimal number 1493\N{U+4AG3} - c - Invalid hexadecimal number 1494[\N{U+4AG3}] - c - Invalid hexadecimal number 1495abc\N{def} - c - Unknown charname 'def' in regex 1496abc\N{U+4AG3 - c - Missing right brace on \\N{} 1497abc\N{def - c - Missing right brace on \\N{} 1498abc\N{ - c - Missing right brace on \\N{} 1499 1500# Verify that under /x that still cant have space before left brace 1501/abc\N {U+41}/x - c - Missing braces 1502/abc\N {SPACE}/x - c - Missing braces 1503 1504# Verifies catches hex errors 1505/\N{U+0xBEEF}/ - c - Invalid hexadecimal number 1506\N{U+0xBEEF} - c - Invalid hexadecimal number 1507# Used to be an error, but not any more: 1508/\N{U+BEEF.BEAD}/ - c - 1509 1510# Verify works in single quotish context; regex compiler delivers slightly different msg 1511# \N{U+BEEF.BEAD} succeeds here, because can't completely hide it from the outside. 1512\N{U+0xBEEF} - c - Invalid hexadecimal number 1513\c` - ac - \"\\c`\" is more clearly written simply as \"\\ \" 1514\c1 - ac - \"\\c1\" is more clearly written simply as \"q\" 1515\c@ \0 y $& \0 1516\cA \001 y $& \001 1517\cB \002 y $& \002 1518\cC \003 y $& \003 1519\cI \011 y $& \011 1520\cJ \012 y $& \012 1521\cR \022 y $& \022 1522\cS \023 y $& \023 1523\cX \030 y $& \030 1524\cY \031 y $& \031 1525\cZ \032 y $& \032 1526\c[ \033 y $& \033 1527\c\X \034X y $& \034X 1528\c] \035 y $& \035 1529\c^ \036 y $& \036 1530\c_ \037 y $& \037 1531\c? \177 ay $& \177 1532\c? \x9F ey $& \x9F \c? is APC on EBCDIC 1533\400 \x{100} y $& \x{100} 1534\600 \x{180} y $& \x{180} 1535\777 \x{1FF} y $& \x{1FF} 1536[a\400] \x{100} y $& \x{100} 1537[b\600] \x{180} y $& \x{180} 1538[c\777] \x{1FF} y $& \x{1FF} 1539\o{120} \x{50} y $& \x{50} 1540\o{400} \x{100} y $& \x{100} 1541\o{1000} \x{200} y $& \x{200} 1542[a\o{120}] \x{50} y $& \x{50} 1543[a\o{400}] \x{100} y $& \x{100} 1544[a\o{1000}] \x{200} y $& \x{200} 1545 1546# The below were inserting a NULL 1547\87 87 c - Reference to nonexistent group in regex 1548a\87 a87 c - Reference to nonexistent group in regex 1549a\97 a97 c - Reference to nonexistent group in regex 1550 1551# avoid problems with 32-bit signed integer overflow 1552 1553(.)\g2147483648} x c - Reference to nonexistent group in regex 1554(.)\g2147483649} x c - Reference to nonexistent group in regex 1555(.)\g2147483650} x c - Reference to nonexistent group in regex 1556(.)\g4294967296} x c - Reference to nonexistent group in regex 1557(.)\g4294967297} x c - Reference to nonexistent group in regex 1558(.)\g4294967298} x c - Reference to nonexistent group in regex 1559a(.)\g2147483648} x c - Reference to nonexistent group in regex 1560a(.)\g2147483649} x c - Reference to nonexistent group in regex 1561a(.)\g2147483650} x c - Reference to nonexistent group in regex 1562a(.)\g4294967296} x c - Reference to nonexistent group in regex 1563a(.)\g4294967297} x c - Reference to nonexistent group in regex 1564a(.)\g4294967298} x c - Reference to nonexistent group in regex 1565 1566(.)\g{2147483648} x c - Reference to nonexistent group in regex 1567(.)\g{2147483649} x c - Reference to nonexistent group in regex 1568(.)\g{2147483650} x c - Reference to nonexistent group in regex 1569(.)\g{4294967296} x c - Reference to nonexistent group in regex 1570(.)\g{4294967297} x c - Reference to nonexistent group in regex 1571(.)\g{4294967298} x c - Reference to nonexistent group in regex 1572a(.)\g{2147483648} x c - Reference to nonexistent group in regex 1573a(.)\g{2147483649} x c - Reference to nonexistent group in regex 1574a(.)\g{2147483650} x c - Reference to nonexistent group in regex 1575a(.)\g{4294967296} x c - Reference to nonexistent group in regex 1576a(.)\g{4294967297} x c - Reference to nonexistent group in regex 1577a(.)\g{4294967298} x c - Reference to nonexistent group in regex 1578 1579(.)\2147483648 b\o{214}7483648 ya $1 b \d not converted to native; \o{} is 1580(.)\2147483649 b\o{214}7483649 ya $1 b \d not converted to native; \o{} is 1581(.)\2147483650 b\o{214}7483650 ya $1 b \d not converted to native; \o{} is 1582(.)\4294967296 b\o{42}94967296 ya $1 b \d not converted to native; \o{} is 1583(.)\4294967297 b\o{42}94967297 ya $1 b \d not converted to native; \o{} is 1584(.)\4294967298 b\o{42}94967298 ya $1 b \d not converted to native; \o{} is 1585a(.)\2147483648 ab\o{214}7483648 ya $1 b \d not converted to native; \o{} is 1586a(.)\2147483649 ab\o{214}7483649 ya $1 b \d not converted to native; \o{} is 1587a(.)\2147483650 ab\o{214}7483650 ya $1 b \d not converted to native; \o{} is 1588a(.)\4294967296 ab\o{42}94967296 ya $1 b \d not converted to native; \o{} is 1589a(.)\4294967297 ab\o{42}94967297 ya $1 b \d not converted to native; \o{} is 1590a(.)\4294967298 ab\o{42}94967298 ya $1 b \d not converted to native; \o{} is 1591 1592# The below was inserting a NULL into the character class. 1593[\8\9] \000 Sn - - 1594[\8\9] - sc $& Unrecognized escape \\8 in character class 1595[\8\9] 8 Sy $& 8 1596[\8\9] 9 Sy $& 9 1597 1598# Verify that reads 1-3 octal digits, and that \_ works in char class 1599[\0] \000 Sy $& \000 1600[\0] - sc - Need exactly 3 octal digits 1601[\07] \007 Sy $& \007 1602[\07] - sc - Need exactly 3 octal digits 1603[\07] 7\000 Sn - - 1604[\07] - sc - Need exactly 3 octal digits 1605[\006] \006 y $& \006 1606[\006] 6\000 n - - 1607[\0005] \0005 y $& \000 1608[\0005] 5\000 y $& 5 1609[\_] _ y $& _ 1610 1611# RT #79152 1612(q1|.)*(q2|.)*(x(a|bc)*y){2,} xayxay y $& xayxay 1613(q1|.)*(q2|.)*(x(a|bc)*y){2,3} xayxay y $& xayxay 1614(q1|z)*(q2|z)*z{15}-.*?(x(a|bc)*y){2,3}Z zzzzzzzzzzzzzzzz-xayxayxayxayZ y $& zzzzzzzzzzzzzzzz-xayxayxayxayZ 1615 1616(?:(?:)foo|bar|zot|rt78356) foo y $& foo 1617/\xe0\pL/i \xc0a y $& \xc0a 1618 1619# RT #85528 1620(?{})[\x{100}] \x{100} y $& \x{100} 1621 1622# RT #85964 1623^m?(\S)(.*)\1$ aba y $1 a 1624^m?(\S)(.*)\1$ \tb\t n - - 1625^m?(\s)(.*)\1$ \tb\t y $1 \t 1626^m?(\s)(.*)\1$ aba n - - 1627^m?(\W)(.*)\1$ :b: y $1 : 1628^m?(\W)(.*)\1$ aba n - - 1629^m?(\w)(.*)\1$ aba y $1 a 1630^m?(\w)(.*)\1$ :b: n - - 1631^m?(\D)(.*)\1$ aba y $1 a 1632^m?(\D)(.*)\1$ 5b5 n - - 1633^m?(\d)(.*)\1$ 5b5 y $1 5 1634^m?(\d)(.*)\1$ aba n - - 1635 1636^_?[^\W_0-9]\w\z \xAA\x{100} y $& \xAA\x{100} [perl #127537] 1637 1638# 17F is 'Long s'; This makes sure the a's in /aa can be separate 1639/s/ai \x{17F} y $& \x{17F} 1640/s/aia \x{17F} n - - 1641/s/aia S y $& S 1642/(?aia:s)/ \x{17F} n - - 1643/(?aia:s)/ S y $& S 1644 1645# Normally 1E9E generates a multi-char fold, but not in inverted class; 1646# See [perl #89750]. This makes sure that the simple fold gets generated 1647# in that case, to DF. 1648/[^\x{1E9E}]/i \x{DF} Sn - - 1649 1650# RT #96354 1651/^.*\d\H/ X1 n - - 1652/^.*\d\V/ X1 n - - 1653 1654# \p{L_} was being misinterpreted as \p{L}. L_ matches cased letters, which 1655# the ideograph below isn't, whereas it does match L 1656/^\p{L_}/ \x{3400} n - - 1657/^\p{L}/ \x{3400} y $& \x{3400} 1658 1659# RT #89774 1660/[s\xDF]a/ui ssa Sy $& ssa 1661/[s\xDF]a/ui sa y $& sa 1662 1663# RT #99928 1664/^\R\x0A$/ \x0D\x0A n - - 1665 1666/ff/i \x{FB00}\x{FB01} y $& \x{FB00} 1667/ff/i \x{FB01}\x{FB00} y $& \x{FB00} 1668/fi/i \x{FB01}\x{FB00} y $& \x{FB01} 1669/fi/i \x{FB00}\x{FB01} y $& \x{FB01} 1670# 1671# Make sure we don't see code blocks where there aren't, and vice-versa 1672(?#( (?{1+)a a y - - 1673'a# (?{1+'x a y - - 1674ab[(?{1] ab1 y - - 1675ab[(?{1\](?{2] ab2 y - - 1676ab(?{"["})cd abcd y - - 1677ab(??{"[x]"})cd abxcd y - - 1678ab\[(??{1})c ab[1c y - - 1679ab\\[(??{1;})]c ab\\;c y - - 1680ab\\\[(??{1})c ab\\[1c y - - 1681ab[c\](??{"]d abcd y - - 1682ab[c\\](??{"[x]"})d ab\\xd y - - 1683ab[c\\\](??{"x"})]{3}d ab\\](d y - - 1684 1685# These test that doesn't cut-off matching too soon in the string for 1686# multi-char folds 1687/ffiffl/i abcdef\x{FB03}\x{FB04} y $& \x{FB03}\x{FB04} 1688/\xdf\xdf/ui abcdefssss y $& ssss 1689 1690/st/i \x{DF}\x{FB05} y $& \x{FB05} 1691/ssst/i \x{DF}\x{FB05} y $& \x{DF}\x{FB05} 1692 1693# [perl #101970] 1694/[[:lower:]]/i \x{100} y $& \x{100} 1695/[[:upper:]]/i \x{101} y $& \x{101} 1696 1697# Was matching 'ss' only and failing the entire match, not seeing the 1698# alternative that would succeed 1699/s\xDF/ui \xDFs y $& \xDFs 1700/sst/ui s\N{LATIN SMALL LIGATURE ST} y $& s\N{LATIN SMALL LIGATURE ST} 1701/sst/ui s\N{LATIN SMALL LIGATURE LONG S T} y $& s\N{LATIN SMALL LIGATURE LONG S T} 1702 1703# /i properties shouldn't match more than the property itself 1704/[[:ascii:]]/i \N{KELVIN SIGN} n - - 1705 1706# [[:lower:]]/i and [[:upper:]]/i should match what \p{Lower} and \p{Upper} do. 1707# which is \p{Cased}, not \p{Alpha}, 1708/[[:lower:]]/i \N{U+3400} n - - 1709/[[:upper:]]/i \N{U+01BB} n - - 1710 1711# [perl #110648] 1712[^\p{Alphabetic}] \x{100} n - - 1713 1714# [perl #111400]. Tests the first Y/N boundary above 255 for each of these. 1715/[[:alnum:]]/ \x{2c1} y - - 1716/[[:alnum:]]/ \x{2c2} n - - 1717/[[:alpha:]]/ \x{2c1} y - - 1718/[[:alpha:]]/ \x{2c2} n - - 1719/[[:graph:]]/ \x{377} y - - 1720/[[:graph:]]/ \x{378} n - - 1721/[[:lower:]]/ \x{100} n - - 1722/[[:lower:]]/ \x{101} y - - 1723/[[:lower:]]/ \x{102} n - - 1724/[[:print:]]/ \x{377} y - - 1725/[[:print:]]/ \x{378} n - - 1726/[[:punct:]]/ \x{37D} n - - 1727/[[:punct:]]/ \x{37E} y - - 1728/[[:punct:]]/ \x{388} n - - 1729/[[:upper:]]/ \x{100} y - - 1730/[[:upper:]]/ \x{101} n - - 1731/[[:word:]]/ \x{2c1} y - - 1732/[[:word:]]/ \x{2c2} n - - 1733 1734# [perl #113400] 1735/syntax OK\s+\z/si t/bin/good.pl syntax OK\n y - - 1736 1737/^(.*?)\s*\|\s*(?:\/\s*|)'(.+)'$/ text|'sec' y <$1><$2> <text><sec> 1738/^(foo|)bar$/ bar y <$&> <bar> 1739/^(foo||baz)bar$/ bar y <$&> <bar> 1740/^(foo||baz)bar$/ bazbar y <$1> <baz> 1741/^(foo||baz)bar$/ foobar y <$1> <foo> 1742 1743/^(?:foo|)bar$/ bar y <$&> <bar> 1744/^(?:foo||baz)bar$/ bar y <$&> <bar> 1745/^(?:foo||baz)bar$/ bazbar y <$&> <bazbar> 1746/^(?:foo||baz)bar$/ foobar y <$&> <foobar> 1747 1748/^(?i:foo|)bar$/ bar y <$&> <bar> 1749/^(?i:foo||baz)bar$/ bar y <$&> <bar> 1750/^(?i:foo||baz)bar$/ bazbar y <$&> <bazbar> 1751/^(?i:foo||baz)bar$/ foobar y <$&> <foobar> 1752 1753# $^N, $+ on backtrackracking 1754# BRANCH 1755^(.)(?:(..)|B)[CX] ABCDE y $^N-$+ A-A - 1756# TRIE 1757^(.)(?:BC(.)|B)[CX] ABCDE y $^N-$+ A-A - 1758# CURLYX 1759^(.)(?:(.)+)*[BX] ABCDE y $^N-$+ A-A - 1760# CURLYM 1761^(.)(BC)* ABCDE y $^N-$+ BC-BC - 1762^(.)(BC)*[BX] ABCDE y $^N-$+ A-A - 1763# CURLYN 1764^(.)(B)*.[DX] ABCDE y $^N-$+ B-B - 1765^(.)(B)*.[CX] ABCDE y $^N-$+ A-A - 1766 1767# using 'return' in code blocks 1768^(A)(?{"xyz"})B$ AB y $1-$^R A-xyz - 1769^(A)(?{return "xyz"})B$ AB y $1-$^R A-xyz - 1770^(A)((??{"xyz"}))$ Axyz y $1-$2 A-xyz - 1771^(A)((??{return "xyz"}))$ Axyz y $1-$2 A-xyz - 1772^(A)((?(?{1})abc|xyz))$ Aabc y $1-$2 A-abc - 1773^(A)((?(?{0})abc|xyz))$ Axyz y $1-$2 A-xyz - 1774^(A)((?(?{return 1})abc|xyz))$ Aabc y $1-$2 A-abc - 1775^(A)((?(?{return 0})abc|xyz))$ Axyz y $1-$2 A-xyz - 1776 1777# using 'return' in code blocks with additional scopes to pop 1778^(A)(?{ { 1; return "xyz"} })B$ AB y $1-$^R A-xyz - 1779^(A)((??{ { 1; return "xyz" } }))$ Axyz y $1-$2 A-xyz - 1780^(A)((?(?{ { 1; return 1 } })abc|xyz))$ Aabc y $1-$2 A-abc - 1781^(A)((?(?{ { 1; return 0 } })abc|xyz))$ Axyz y $1-$2 A-xyz - 1782 1783# pattern modifier flags should propagate into returned (??{}) pattern 1784# p,d,l not tested 1785 1786/^(a)((??{"b"}))$/i AB y $1-$2 A-B - 1787/^(A)((??{'B$'}))(\nC)$/m AB\nC y $1-$2-$3 A-B-\nC - 1788/^(A)((??{'.'}))(B)$/s A\nB y $1-$2-$3 A-\n-B - 1789/^(A) ((??{' .'}))(B)$/x A B y $1-$2-$3 A- -B - 1790/^((??{'\d'}))$/a \x{660} n - - 1791/^(??{"s"})$/i \x{17F} y - - 1792/^(??{"s"})$/ia \x{17F} y - - 1793/^(??{"s"})$/iaa \x{17F} n - - 1794/^(??{'\w'})$/u \x{AA} y - - 1795 1796# #113670 ensure any captures to the right are invalidated when CURLY 1797# and CURLYM backtrack 1798 1799^(?:(X)?(\d)|(X)?(\d\d))$ X12 y $1-$2-$3-$4 --X-12 1800^(?:(XX)?(\d)|(XX)?(\d\d))$ XX12 y $1-$2-$3-$4 --XX-12 1801 1802# rt 113770 1803\A(?>\[(?:(?:)(?:R){1}|T|V?|A)\])\z [A] y $& [A] 1804# rt 114068 1805/( [^z] $ [^z]+)/xm aa\nbb\ncc\n y $1 a\nbb\ncc\n 1806 1807# [perl #114220] 1808/[\h]/ \x{A0} y $& \xA0 1809/[\H]/ \x{BF} y $& \xBF 1810/[\H]/ \x{A0} n - - 1811/[\H]/ \x{A1} y $& \xA1 1812 1813[^\n]+ \nb y $& b 1814[^\n]+ a\n y $& a 1815 1816# /a has no effect on properties 1817(?a:\p{Any}) \x{100} y $& \x{100} 1818(?aa:\p{Any}) \x{100} y $& \x{100} 1819 1820\w \x{200C} y $& \x{200C} 1821\W \x{200C} n - - 1822\w \x{200D} y $& \x{200D} 1823\W \x{200D} n - - 1824 1825/^(?d:\xdf|_)*_/i \x{17f}\x{17f}_ y $& \x{17f}\x{17f}_ 1826# 1827# check that @-, @+ count chars, not bytes; especially if beginning of 1828# string is not copied 1829 1830(\x{100}) \x{2000}\x{2000}\x{2000}\x{100} y $-[0]:$-[1]:$+[0]:$+[1] 3:3:4:4 1831 1832^\R{2}$ \r\n\r\n y $& \r\n\r\n 1833 1834/^\D{11}/a \x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF} n - - 1835/^\S{11}/a \x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF} n - - 1836/^\W{11}/a \x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF}\x{10FFFF} n - - 1837 1838# [ perl #114272] 1839\Vn \xFFn/ y $& \xFFn 1840 1841# These mostly exercize various paths in the optimizer 1842/(?l:a?\w)/ b y $& b 1843/(?l:a?\D)/ b y $& b 1844^_?[^\S_0-9]\w*\z \t y $& \t 1845m?^xy\?$? xy? y $& xy? 1846a?\X a\x{100} y $& a\x{100} 1847a?\R a\n y $& a\n 1848^a?\N$ a\n y $& a 1849\N?a \na y $& a 1850/\s?\s/l \t y $& \t 1851/\s?\d/l 3 y $& 3 1852/\s?\S/l A y $& A 1853 1854# check we have the right utf8ness as we switch back and forth between 1855# patterns 1856^(\x{100}|a)(??{ qr/.?\xF7/d}) a_\xF7 y - - 1857 1858# [perl #118375] 1859/(a|(bc)){0,0}?xyz/ xyz y $& xyz 1860/( a | ( bc ) ) {0,0} ? xyz/x xyz y $& xyz 1861 1862/(a|(bc)){0,0}+xyz/ xyz y $& xyz 1863/( a | ( bc ) ) {0,0} + xyz/x xyz y $& xyz 1864 1865(A(*PRUNE)B|A(*PRUNE)C) AC n - - 1866(A(*PRUNE)B|A(*PRUNE)D|A(*PRUNE)C) AC n - - 1867(A(*PRUNE)B|A(*PRUNE)C|A(*PRUNE)D) AC n - - 1868((A(*PRUNE)B|A(*PRUNE)C)) AC n - - 1869((A(*PRUNE)B|A(*PRUNE)D|A(*PRUNE)C)) AC n - - 1870((A(*PRUNE)B|A(*PRUNE)C|A(*PRUNE)D)) AC n - - 1871 1872A+?(*THEN)BC AAABC y $& ABC 1873A+?(*PRUNE)BC AAABC y $& ABC 1874A+(*THEN)BC AAABC y $& AAABC 1875A+(*PRUNE)BC AAABC y $& AAABC 1876A+?(*THEN)BC(?{}) AAABC y $& ABC 1877A+?(*PRUNE)BC(?{}) AAABC y $& ABC 1878A+(*THEN)BC(?{}) AAABC y $& AAABC 1879A+(*PRUNE)BC(?{}) AAABC y $& AAABC 1880/[#]/ a#b y $& # 1881/[#]b/ a#b y $& #b 1882/[#]/x a#b y $& # 1883/[#]b/x a#b y $& #b 1884/[#](?{})/x a#b y $& # 1885/[#](??{'b'})/x a#b y $& #b 1886/(?#)(?{})b/ a#b y $& b 1887/(?#)(??{'b'})/ a#b y $& b 1888/[(?#](?{})b/ a#b y $& #b 1889/[(?#](??{'b'})/ a#b y $& #b 1890/(?#)(?{})b/x a#b y $& b 1891/(?#)(??{'b'})/x a#b y $& b 1892 1893# RT #119069: PCRE regression test: no segfault 1894^(?=(a)){0}b(?1) back y $& ba 1895# RT #119071: PCRE regression test: No warning of infinite regression 1896(?:(a(*SKIP)b)){0}(?:(?1)|ac) x n - - 1897# RT #119073: PCRE regression test: {0} => NOTHING optimization 1898(?1)(?:(b)){0} b y $& b 1899# RT #120041 1900^A*\z y $& 1901/\N* /x ab y $& ab # Under /x was ignoring the '*' 1902/\N (?#comment) * /x ab y $& ab # likewise 1903 1904# RT #120600: Variable length lookbehind is not variable 1905(?<W>a)(?<BB>(?=(?&W))(?<=(?&W)))(?&BB) aa y $& a # test repeated recursive patterns 1906 1907# This group is from RT #121144 1908/^\S+=/d \x{3a3}=\x{3a0} y $& \x{3a3}= 1909/^\S+=/u \x{3a3}=\x{3a0} y $& \x{3a3}= 1910 1911# utf8 cache length panics 1912\x{100}[xy]\x{100}{2} \x{100}y\x{100}\x{100} y $& \x{100}y\x{100}\x{100} 1913\x{100}a{2,3} \x{100}aaa y $& \x{100}aaa 1914^x?abc?de abcde y $& abcde 1915 1916'(?-m:^abc)'m abcde y $& abc 1917'(?-m:^abc)'m x\nabcde n - - 1918 1919# RT #121248 - segfault 1920/^[+]([^(]+)$/mi li n - - 1921 1922# RT #121299 - Inconsistent behavior with backreferences nested inside subpattern references 1923/(.)((o)\1)(?2)/ fofof y $2 of 1924/(.)(?2)((\1)(?4)(\1))/ fffffff y $1 f 1925/(.)(?2)((.)(?4)(\1))/ foffoff y $2 off 1926/^(.\2?)(.)(?1)$/ abcb y $2 b 1927/^(.\1?)(?1)$/ aba y $1 a 1928/^ (\3(?2)\3)? ((.)) (?1) $/x aaba y $2 a 1929/^ (a|\3(?1)\2|(?2)) ((b|c)(?4)?) (?1) (d(?1)) $/x abbcdcabbda y $2 b 1930 1931# RT #121321 - perl 5.19.10 infinite loops on backrefs > number of capture buffers (npar) where npar>9 1932/(a)\2/ a\2 c - Reference to nonexistent group in regex 1933/(a)(b)\3/ ab\3 c - Reference to nonexistent group in regex 1934/(a)(b)(c)\4/ abc\4 c - Reference to nonexistent group in regex 1935/(a)(b)(c)(d)\5/ abcd\5 c - Reference to nonexistent group in regex 1936/(a)(b)(c)(d)(e)\6/ abcde\6 c - Reference to nonexistent group in regex 1937/(a)(b)(c)(d)(e)(f)\7/ abcdef\7 c - Reference to nonexistent group in regex 1938/(a)(b)(c)(d)(e)(f)(g)(h)(i)\10/ abcdefghi\10 y $& abcdefghi\10 1939/(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)\11/ abcdefghij\11 y $& abcdefghij\11 1940/(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)\12/ abcdefghijk\12 y $& abcdefghijk\12 1941/(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)\12\13\14/ abcdefghijk\12\13\14 y $& abcdefghijk\12\13\14 1942 1943\d<(.*?)> a<> n - - 1944[bcd].{2,3}aaaa XbXaaaaa y - - 1945[bcd].{2,3}aaaa Xb\x{100}aaaaa y - - 1946'\Awibble\z'm wibble y - - 1947/(alias|status)es$/i Statuses y $1 Status # [perl #121778] 1948/( (?&solution) | % ) \Z (?(DEFINE) (?<solution>7\%\ solution) )/x 7% solution y $1 7% solution # [perl #122890] 1949(.)(?{$~=$^N}) \x{100} y $~ \x{100} # [perl #123135] 1950 1951/[a-z]/i \N{KELVIN SIGN} y $& \N{KELVIN SIGN} 1952/[A-Z]/ia \N{KELVIN SIGN} y $& \N{KELVIN SIGN} 1953/[A-Z]/iaa \N{KELVIN SIGN} n - - 1954/[A-Z]/i \N{LATIN SMALL LETTER LONG S} y $& \N{LATIN SMALL LETTER LONG S} 1955 1956# RT #123840: these used to hang in re_intuit_start 1957/w\zxy?\z/i \x{100}a\x{80}a n - - 1958/w\z\R\z/i \x{100}a\x{80}a n - - 1959 1960/(a+){1}+a/ aaa n - - # [perl #125825] 1961 1962^((?(?=x)xb|ya)z) xbz y $1 xbz 1963^((?(?=x)xb|ya)z) yaz y $1 yaz 1964^((?(?!y)xb|ya)z) xbz y $1 xbz 1965^((?(?!y)xb|ya)z) yaz y $1 yaz 1966^((?(?!)xb|ya)z) xbz n - - 1967^((?(?!)xb|ya)z) yaz y $1 yaz # [perl-126222] 1968 1969foo(*ACCEPT:foo) foo y $::REGMARK foo 1970(foo(*ACCEPT:foo)) foo y $::REGMARK foo 1971A(*FAIL:foo)[BC] A n $::REGERROR foo 1972 1973\N(?#comment){SPACE} A c - Missing braces on \\N{} 1974ab(?#Comment){2}c abbc y $& abbc 1975\p A A c - Character following \\p must be '{' or a single-character Unicode property name # [perl #126187 1976\P:A A c - Character following \\P must be '{' or a single-character Unicode property name 1977\p^ A c - Character following \\p must be '{' or a single-character Unicode property name 1978\PU A c - Can't find Unicode property definition \"U\" 1979 1980(?i - c - Sequence (?... not terminated 1981(?a-x - c - Sequence (?... not terminated 1982.{1}?? - c - Nested quantifiers 1983.{1}?+ - c - Nested quantifiers 1984(?:.||)(?|)000000000@ 000000000@ y $& 000000000@ # [perl #126405] 1985aa$|a(?R)a|a aaa y $& aaa # [perl 128420] recursive matches 1986(?:\1|a)([bcd])\1(?:(?R)|e)\1 abbaccaddedcb y $& abbaccaddedcb # [perl 128420] recursive match with backreferences 1987AB\s+\x{100} AB \x{100}X y - - 1988\b\z0*\x{100} .\x{100} n - - # [perl #129350] crashed in intuit_start 1989(.*?(a(a)|i(i))n) riiaan y $2-$3-$4-$1 aa-a--riiaan # Jump trie capture buffer issue [perl #129897] 1990(^(?:(\d)x)?\d$) 1 y [$1-$2] [1-] # make sure that we reset capture buffers properly (from regtry) 1991(X{2,}[-X]{1,4}){3,}X{2,} XXX-XXX-XXX-- n - - # [perl #130307] 1992 1993/[a b]/x \N{SPACE} yS $& # Note a space char here 1994/[a b]/xx \N{SPACE} n - - 1995/[a\ b]/xx \N{SPACE} y $& # Note a space char here 1996/[ ^ a b ]/xx a n - - 1997/[ ^ a b ]/xx b n - - 1998/[ ^ a b ]/xx A y $& A 1999/(?x:[a b])/xx \N{SPACE} yS $& # Note a space char here 2000/(?xx:[a b])/x \N{SPACE} n - - 2001/(?x)[a b]/xx \N{SPACE} yS $& # Note a space char here 2002/(?xx)[a b]/x \N{SPACE} n - - 2003/(?-x:[a b])/xx \N{SPACE} yS $& # Note a space char here 2004^a?bcd\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff ABCDEFGHIJKLMNOPQRSTUVWXYZ n - - # [perl #132187] for valgrind's benefit 2005^Xaaa?Xaa aaa\x{400000} n - - # [perl #132552] for valgrind's benefit 2006([[:ascii:]]+)\x81 a\x80b\x81 y $& b\x81 2007[[:^ascii:]]+b \x80a\x81b y $& \x81b 2008[[:^ascii:]]+b \x80a\x81\x{100}b y $& \x81\x{100}b 2009/\A\x80+\z/ \x80\x80\x80\x80\x80\x80\x80\x80\x80 y $& \x80\x80\x80\x80\x80\x80\x80\x80\x80 # [perl #132900] 2010^(\d+)*?4X$ 1234X y $1 123 # perl #131648 2011(?il)\x{100}|\x{100}|\x{FE} \xFE y $& \xFE 2012\A([\x00-\x7F]+)(.*)\z \007\011\012 y $& \007\011\012 # [perl #133311] 2013(?:(?^:(?{1}))[^0-9]) : y $& : # [perl #133348] 2014/[\xdf-/i - ca - Invalid [] range # [perl #133620] likely only fails under valgrind 2015/[\x59-/i - ce - Unmatched [ # [perl #133620] likely only fails under valgrind 2016/\1a(b)/ bab n - - # This compiles but fails to match as \1 is not set when parsed. 2017/(?iu)(?<=\xdf)hbase/ sshbase y $& hbase 2018/\x{30c3}?[\x{30a2}\x{30a4}\x{30a6}\x{30a8}\x{30aa}-\x{30e2}\x{30e4}\x{30e6}\x{30e8}-\x{30f4}](?:[\x{30e3}\x{30e5}\x{30e7}\x{30a1}\x{30a3}\x{30a5}\x{30a7}\x{30a9}])?\x{30fc}?\x{30f3}?/ \x{30de}\x{30fc}\x{30af}\x{30b5}\x{30fc}\x{30d3}\x{30b9} y $& \x{30de}\x{30fc} # part of [perl #133942 2019/[\x{3041}-\x{3093}]+/ \x{6f22}\x{5b57}\x{3001}\x{30ab}\x{30bf}\x{30ab}\x{30ca}\x{3001}\x{3072}\x{3089}\x{304c}\x{306a}\x{306e}\x{5165}\x{3063}\x{305f}String y $& \x{3072}\x{3089}\x{304c}\x{306a}\x{306e} # [perl #133978] 2020/(?:0)|(?:)(?:[1-9])/ q0 y $& 0 # [https://github.com/Perl/perl5/issues/17372] 2021/\x{_1_0000}/ \x{10000} y $& \x{10000} # khw doesn't like leading underscores, but don't rmv them accidentally 2022/\o{_1_0000}/ \o{10000} y $& \o{10000} 2023/(?iaax:A? \K +)/ African_Feh c - \\K + is forbidden - matches null string many times in regex 2024/(?iaa:A?\K+)/ African_Feh c - \\K+ is forbidden - matches null string many times in regex 2025/(?iaa:A?\K*)/ African_Feh c - \\K* is forbidden - matches null string many times in regex 2026^((\w|<(\s)*(?1)(?3)*>)(?:(?3)*\+(?3)*(?2))*)(?3)*\+ a + b + <c + d> y $1 a + b # [GH #18096] 2027^((\w|<(\s)*(?1)(?3)*>)(?:(?3)*\+(?3)*(?2))*)(?3)*\+ a + <b> + c y $1 a + <b> # [GH #18096] 2028# Keep these lines at the end of the file 2029# pat string y/n/etc expr expected-expr skip-reason comment 2030# vim: softtabstop=0 noexpandtab 2031