1*22dc650dSSadaf Ebrahimi# This set of tests checks the API, internals, and non-Perl stuff for UTF 2*22dc650dSSadaf Ebrahimi# support, including Unicode properties. However, tests that give different 3*22dc650dSSadaf Ebrahimi# results in 8-bit, 16-bit, and 32-bit modes are excluded (see tests 10 and 4*22dc650dSSadaf Ebrahimi# 12). 5*22dc650dSSadaf Ebrahimi 6*22dc650dSSadaf Ebrahimi#newline_default lf any anycrlf 7*22dc650dSSadaf Ebrahimi 8*22dc650dSSadaf Ebrahimi# PCRE2 and Perl disagree about the characteristics of certain Unicode 9*22dc650dSSadaf Ebrahimi# characters. For example, 061C was considered by Perl to be Arabic, though 10*22dc650dSSadaf Ebrahimi# it was not listed as such in the Unicode Scripts.txt file for Unicode 8. 11*22dc650dSSadaf Ebrahimi# However, it *is* in that file for Unicode 10, but when I came to re-check, 12*22dc650dSSadaf Ebrahimi# Perl had changed in the meantime, with 5.026 not recognizing it as Arabic. 13*22dc650dSSadaf Ebrahimi 14*22dc650dSSadaf Ebrahimi# 2066-2069 are graphic and printable according to Perl, though they are 15*22dc650dSSadaf Ebrahimi# actually "isolate" control characters. That is why the following tests are 16*22dc650dSSadaf Ebrahimi# here rather than in test 4. 17*22dc650dSSadaf Ebrahimi 18*22dc650dSSadaf Ebrahimi/^[\p{Arabic}]/utf 19*22dc650dSSadaf Ebrahimi \x{061c} 20*22dc650dSSadaf Ebrahimi 0: \x{61c} 21*22dc650dSSadaf Ebrahimi 22*22dc650dSSadaf Ebrahimi/^[[:graph:]]+$/utf,ucp 23*22dc650dSSadaf Ebrahimi\= Expect no match 24*22dc650dSSadaf Ebrahimi \x{61c} 25*22dc650dSSadaf EbrahimiNo match 26*22dc650dSSadaf Ebrahimi \x{2066} 27*22dc650dSSadaf EbrahimiNo match 28*22dc650dSSadaf Ebrahimi \x{2067} 29*22dc650dSSadaf EbrahimiNo match 30*22dc650dSSadaf Ebrahimi \x{2068} 31*22dc650dSSadaf EbrahimiNo match 32*22dc650dSSadaf Ebrahimi \x{2069} 33*22dc650dSSadaf EbrahimiNo match 34*22dc650dSSadaf Ebrahimi 35*22dc650dSSadaf Ebrahimi/^[[:print:]]+$/utf,ucp 36*22dc650dSSadaf Ebrahimi\= Expect no match 37*22dc650dSSadaf Ebrahimi \x{61c} 38*22dc650dSSadaf EbrahimiNo match 39*22dc650dSSadaf Ebrahimi \x{2066} 40*22dc650dSSadaf EbrahimiNo match 41*22dc650dSSadaf Ebrahimi \x{2067} 42*22dc650dSSadaf EbrahimiNo match 43*22dc650dSSadaf Ebrahimi \x{2068} 44*22dc650dSSadaf EbrahimiNo match 45*22dc650dSSadaf Ebrahimi \x{2069} 46*22dc650dSSadaf EbrahimiNo match 47*22dc650dSSadaf Ebrahimi 48*22dc650dSSadaf Ebrahimi/^[[:^graph:]]+$/utf,ucp 49*22dc650dSSadaf Ebrahimi \x{09}\x{0a}\x{1D}\x{20}\x{85}\x{a0}\x{61c}\x{1680} 50*22dc650dSSadaf Ebrahimi 0: \x{09}\x{0a}\x{1d} \x{85}\x{a0}\x{61c}\x{1680} 51*22dc650dSSadaf Ebrahimi \x{2028}\x{2029}\x{202f}\x{2065}\x{2066}\x{2067}\x{2068}\x{2069} 52*22dc650dSSadaf Ebrahimi 0: \x{2028}\x{2029}\x{202f}\x{2065}\x{2066}\x{2067}\x{2068}\x{2069} 53*22dc650dSSadaf Ebrahimi 54*22dc650dSSadaf Ebrahimi/^[[:^print:]]+$/utf,ucp 55*22dc650dSSadaf Ebrahimi \x{09}\x{1D}\x{85}\x{61c}\x{2028}\x{2029}\x{2065}\x{2066}\x{2067} 56*22dc650dSSadaf Ebrahimi 0: \x{09}\x{1d}\x{85}\x{61c}\x{2028}\x{2029}\x{2065}\x{2066}\x{2067} 57*22dc650dSSadaf Ebrahimi \x{2068}\x{2069} 58*22dc650dSSadaf Ebrahimi 0: \x{2068}\x{2069} 59*22dc650dSSadaf Ebrahimi 60*22dc650dSSadaf Ebrahimi# Perl does not consider U+180e to be a space character. It is true that it 61*22dc650dSSadaf Ebrahimi# does not appear in the Unicode PropList.txt file as such, but in many other 62*22dc650dSSadaf Ebrahimi# sources it is listed as a space, and has been treated as such in PCRE for 63*22dc650dSSadaf Ebrahimi# a long time. 64*22dc650dSSadaf Ebrahimi 65*22dc650dSSadaf Ebrahimi/^>[[:blank:]]*/utf,ucp 66*22dc650dSSadaf Ebrahimi >\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{202f}\x{9}\x{b}\x{2028} 67*22dc650dSSadaf Ebrahimi 0: > \x{a0}\x{1680}\x{180e}\x{2000}\x{202f}\x{09} 68*22dc650dSSadaf Ebrahimi 69*22dc650dSSadaf Ebrahimi/^A\s+Z/utf,ucp 70*22dc650dSSadaf Ebrahimi A\x{85}\x{180e}\x{2005}Z 71*22dc650dSSadaf Ebrahimi 0: A\x{85}\x{180e}\x{2005}Z 72*22dc650dSSadaf Ebrahimi 73*22dc650dSSadaf Ebrahimi/^A[\s]+Z/utf,ucp 74*22dc650dSSadaf Ebrahimi A\x{2005}Z 75*22dc650dSSadaf Ebrahimi 0: A\x{2005}Z 76*22dc650dSSadaf Ebrahimi A\x{85}\x{2005}Z 77*22dc650dSSadaf Ebrahimi 0: A\x{85}\x{2005}Z 78*22dc650dSSadaf Ebrahimi 79*22dc650dSSadaf Ebrahimi/^[[:graph:]]+$/utf,ucp 80*22dc650dSSadaf Ebrahimi\= Expect no match 81*22dc650dSSadaf Ebrahimi \x{180e} 82*22dc650dSSadaf EbrahimiNo match 83*22dc650dSSadaf Ebrahimi 84*22dc650dSSadaf Ebrahimi/^[[:print:]]+$/utf,ucp 85*22dc650dSSadaf Ebrahimi \x{180e} 86*22dc650dSSadaf Ebrahimi 0: \x{180e} 87*22dc650dSSadaf Ebrahimi 88*22dc650dSSadaf Ebrahimi/^[[:^graph:]]+$/utf,ucp 89*22dc650dSSadaf Ebrahimi \x{09}\x{0a}\x{1D}\x{20}\x{85}\x{a0}\x{61c}\x{1680}\x{180e} 90*22dc650dSSadaf Ebrahimi 0: \x{09}\x{0a}\x{1d} \x{85}\x{a0}\x{61c}\x{1680}\x{180e} 91*22dc650dSSadaf Ebrahimi 92*22dc650dSSadaf Ebrahimi/^[[:^print:]]+$/utf,ucp 93*22dc650dSSadaf Ebrahimi\= Expect no match 94*22dc650dSSadaf Ebrahimi \x{180e} 95*22dc650dSSadaf EbrahimiNo match 96*22dc650dSSadaf Ebrahimi 97*22dc650dSSadaf Ebrahimi# End of U+180E tests. 98*22dc650dSSadaf Ebrahimi 99*22dc650dSSadaf Ebrahimi# --------------------------------------------------------------------- 100*22dc650dSSadaf Ebrahimi 101*22dc650dSSadaf Ebrahimi/\x{110000}/IB,utf 102*22dc650dSSadaf EbrahimiFailed: error 134 at offset 9: character code point value in \x{} or \o{} is too large 103*22dc650dSSadaf Ebrahimi 104*22dc650dSSadaf Ebrahimi/\o{4200000}/IB,utf 105*22dc650dSSadaf EbrahimiFailed: error 134 at offset 10: character code point value in \x{} or \o{} is too large 106*22dc650dSSadaf Ebrahimi 107*22dc650dSSadaf Ebrahimi/\x{ffffffff}/utf 108*22dc650dSSadaf EbrahimiFailed: error 134 at offset 11: character code point value in \x{} or \o{} is too large 109*22dc650dSSadaf Ebrahimi 110*22dc650dSSadaf Ebrahimi/\o{37777777777}/utf 111*22dc650dSSadaf EbrahimiFailed: error 134 at offset 14: character code point value in \x{} or \o{} is too large 112*22dc650dSSadaf Ebrahimi 113*22dc650dSSadaf Ebrahimi/\x{100000000}/utf 114*22dc650dSSadaf EbrahimiFailed: error 134 at offset 12: character code point value in \x{} or \o{} is too large 115*22dc650dSSadaf Ebrahimi 116*22dc650dSSadaf Ebrahimi/\o{77777777777}/utf 117*22dc650dSSadaf EbrahimiFailed: error 134 at offset 14: character code point value in \x{} or \o{} is too large 118*22dc650dSSadaf Ebrahimi 119*22dc650dSSadaf Ebrahimi/\x{d800}/utf 120*22dc650dSSadaf EbrahimiFailed: error 173 at offset 7: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 121*22dc650dSSadaf Ebrahimi 122*22dc650dSSadaf Ebrahimi/\o{154000}/utf 123*22dc650dSSadaf EbrahimiFailed: error 173 at offset 9: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 124*22dc650dSSadaf Ebrahimi 125*22dc650dSSadaf Ebrahimi/\x{dfff}/utf 126*22dc650dSSadaf EbrahimiFailed: error 173 at offset 7: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 127*22dc650dSSadaf Ebrahimi 128*22dc650dSSadaf Ebrahimi/\o{157777}/utf 129*22dc650dSSadaf EbrahimiFailed: error 173 at offset 9: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 130*22dc650dSSadaf Ebrahimi 131*22dc650dSSadaf Ebrahimi/\x{d7ff}/utf 132*22dc650dSSadaf Ebrahimi 133*22dc650dSSadaf Ebrahimi/\o{153777}/utf 134*22dc650dSSadaf Ebrahimi 135*22dc650dSSadaf Ebrahimi/\x{e000}/utf 136*22dc650dSSadaf Ebrahimi 137*22dc650dSSadaf Ebrahimi/\o{170000}/utf 138*22dc650dSSadaf Ebrahimi 139*22dc650dSSadaf Ebrahimi/^\x{100}a\x{1234}/utf 140*22dc650dSSadaf Ebrahimi \x{100}a\x{1234}bcd 141*22dc650dSSadaf Ebrahimi 0: \x{100}a\x{1234} 142*22dc650dSSadaf Ebrahimi 143*22dc650dSSadaf Ebrahimi/\x{0041}\x{2262}\x{0391}\x{002e}/IB,utf 144*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 145*22dc650dSSadaf Ebrahimi Bra 146*22dc650dSSadaf Ebrahimi A\x{2262}\x{391}. 147*22dc650dSSadaf Ebrahimi Ket 148*22dc650dSSadaf Ebrahimi End 149*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 150*22dc650dSSadaf EbrahimiCapture group count = 0 151*22dc650dSSadaf EbrahimiOptions: utf 152*22dc650dSSadaf EbrahimiFirst code unit = 'A' 153*22dc650dSSadaf EbrahimiLast code unit = '.' 154*22dc650dSSadaf EbrahimiSubject length lower bound = 4 155*22dc650dSSadaf Ebrahimi \x{0041}\x{2262}\x{0391}\x{002e} 156*22dc650dSSadaf Ebrahimi 0: A\x{2262}\x{391}. 157*22dc650dSSadaf Ebrahimi 158*22dc650dSSadaf Ebrahimi/.{3,5}X/IB,utf 159*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 160*22dc650dSSadaf Ebrahimi Bra 161*22dc650dSSadaf Ebrahimi Any{3} 162*22dc650dSSadaf Ebrahimi Any{0,2} 163*22dc650dSSadaf Ebrahimi X 164*22dc650dSSadaf Ebrahimi Ket 165*22dc650dSSadaf Ebrahimi End 166*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 167*22dc650dSSadaf EbrahimiCapture group count = 0 168*22dc650dSSadaf EbrahimiOptions: utf 169*22dc650dSSadaf EbrahimiLast code unit = 'X' 170*22dc650dSSadaf EbrahimiSubject length lower bound = 4 171*22dc650dSSadaf Ebrahimi \x{212ab}\x{212ab}\x{212ab}\x{861}X 172*22dc650dSSadaf Ebrahimi 0: \x{212ab}\x{212ab}\x{212ab}\x{861}X 173*22dc650dSSadaf Ebrahimi 174*22dc650dSSadaf Ebrahimi/.{3,5}?/IB,utf 175*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 176*22dc650dSSadaf Ebrahimi Bra 177*22dc650dSSadaf Ebrahimi Any{3} 178*22dc650dSSadaf Ebrahimi Any{0,2}? 179*22dc650dSSadaf Ebrahimi Ket 180*22dc650dSSadaf Ebrahimi End 181*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 182*22dc650dSSadaf EbrahimiCapture group count = 0 183*22dc650dSSadaf EbrahimiOptions: utf 184*22dc650dSSadaf EbrahimiSubject length lower bound = 3 185*22dc650dSSadaf Ebrahimi \x{212ab}\x{212ab}\x{212ab}\x{861} 186*22dc650dSSadaf Ebrahimi 0: \x{212ab}\x{212ab}\x{212ab} 187*22dc650dSSadaf Ebrahimi 188*22dc650dSSadaf Ebrahimi/^[ab]/IB,utf 189*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 190*22dc650dSSadaf Ebrahimi Bra 191*22dc650dSSadaf Ebrahimi ^ 192*22dc650dSSadaf Ebrahimi [ab] 193*22dc650dSSadaf Ebrahimi Ket 194*22dc650dSSadaf Ebrahimi End 195*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 196*22dc650dSSadaf EbrahimiCapture group count = 0 197*22dc650dSSadaf EbrahimiCompile options: utf 198*22dc650dSSadaf EbrahimiOverall options: anchored utf 199*22dc650dSSadaf EbrahimiStarting code units: a b 200*22dc650dSSadaf EbrahimiSubject length lower bound = 1 201*22dc650dSSadaf Ebrahimi bar 202*22dc650dSSadaf Ebrahimi 0: b 203*22dc650dSSadaf Ebrahimi\= Expect no match 204*22dc650dSSadaf Ebrahimi c 205*22dc650dSSadaf EbrahimiNo match 206*22dc650dSSadaf Ebrahimi \x{ff} 207*22dc650dSSadaf EbrahimiNo match 208*22dc650dSSadaf Ebrahimi \x{100} 209*22dc650dSSadaf EbrahimiNo match 210*22dc650dSSadaf Ebrahimi 211*22dc650dSSadaf Ebrahimi/\x{100}*(\d+|"(?1)")/utf 212*22dc650dSSadaf Ebrahimi 1234 213*22dc650dSSadaf Ebrahimi 0: 1234 214*22dc650dSSadaf Ebrahimi 1: 1234 215*22dc650dSSadaf Ebrahimi "1234" 216*22dc650dSSadaf Ebrahimi 0: "1234" 217*22dc650dSSadaf Ebrahimi 1: "1234" 218*22dc650dSSadaf Ebrahimi \x{100}1234 219*22dc650dSSadaf Ebrahimi 0: \x{100}1234 220*22dc650dSSadaf Ebrahimi 1: 1234 221*22dc650dSSadaf Ebrahimi "\x{100}1234" 222*22dc650dSSadaf Ebrahimi 0: \x{100}1234 223*22dc650dSSadaf Ebrahimi 1: 1234 224*22dc650dSSadaf Ebrahimi \x{100}\x{100}12ab 225*22dc650dSSadaf Ebrahimi 0: \x{100}\x{100}12 226*22dc650dSSadaf Ebrahimi 1: 12 227*22dc650dSSadaf Ebrahimi \x{100}\x{100}"12" 228*22dc650dSSadaf Ebrahimi 0: \x{100}\x{100}"12" 229*22dc650dSSadaf Ebrahimi 1: "12" 230*22dc650dSSadaf Ebrahimi\= Expect no match 231*22dc650dSSadaf Ebrahimi \x{100}\x{100}abcd 232*22dc650dSSadaf EbrahimiNo match 233*22dc650dSSadaf Ebrahimi 234*22dc650dSSadaf Ebrahimi/\x{100}*/IB,utf 235*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 236*22dc650dSSadaf Ebrahimi Bra 237*22dc650dSSadaf Ebrahimi \x{100}*+ 238*22dc650dSSadaf Ebrahimi Ket 239*22dc650dSSadaf Ebrahimi End 240*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 241*22dc650dSSadaf EbrahimiCapture group count = 0 242*22dc650dSSadaf EbrahimiMay match empty string 243*22dc650dSSadaf EbrahimiOptions: utf 244*22dc650dSSadaf EbrahimiSubject length lower bound = 0 245*22dc650dSSadaf Ebrahimi 246*22dc650dSSadaf Ebrahimi/a\x{100}*/IB,utf 247*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 248*22dc650dSSadaf Ebrahimi Bra 249*22dc650dSSadaf Ebrahimi a 250*22dc650dSSadaf Ebrahimi \x{100}*+ 251*22dc650dSSadaf Ebrahimi Ket 252*22dc650dSSadaf Ebrahimi End 253*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 254*22dc650dSSadaf EbrahimiCapture group count = 0 255*22dc650dSSadaf EbrahimiOptions: utf 256*22dc650dSSadaf EbrahimiFirst code unit = 'a' 257*22dc650dSSadaf EbrahimiSubject length lower bound = 1 258*22dc650dSSadaf Ebrahimi 259*22dc650dSSadaf Ebrahimi/ab\x{100}*/IB,utf 260*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 261*22dc650dSSadaf Ebrahimi Bra 262*22dc650dSSadaf Ebrahimi ab 263*22dc650dSSadaf Ebrahimi \x{100}*+ 264*22dc650dSSadaf Ebrahimi Ket 265*22dc650dSSadaf Ebrahimi End 266*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 267*22dc650dSSadaf EbrahimiCapture group count = 0 268*22dc650dSSadaf EbrahimiOptions: utf 269*22dc650dSSadaf EbrahimiFirst code unit = 'a' 270*22dc650dSSadaf EbrahimiLast code unit = 'b' 271*22dc650dSSadaf EbrahimiSubject length lower bound = 2 272*22dc650dSSadaf Ebrahimi 273*22dc650dSSadaf Ebrahimi/[\x{200}-\x{100}]/utf 274*22dc650dSSadaf EbrahimiFailed: error 108 at offset 15: range out of order in character class 275*22dc650dSSadaf Ebrahimi 276*22dc650dSSadaf Ebrahimi/[Ā-Ą]/utf 277*22dc650dSSadaf Ebrahimi \x{100} 278*22dc650dSSadaf Ebrahimi 0: \x{100} 279*22dc650dSSadaf Ebrahimi \x{104} 280*22dc650dSSadaf Ebrahimi 0: \x{104} 281*22dc650dSSadaf Ebrahimi\= Expect no match 282*22dc650dSSadaf Ebrahimi \x{105} 283*22dc650dSSadaf EbrahimiNo match 284*22dc650dSSadaf Ebrahimi \x{ff} 285*22dc650dSSadaf EbrahimiNo match 286*22dc650dSSadaf Ebrahimi 287*22dc650dSSadaf Ebrahimi/[\xFF]/IB 288*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 289*22dc650dSSadaf Ebrahimi Bra 290*22dc650dSSadaf Ebrahimi \x{ff} 291*22dc650dSSadaf Ebrahimi Ket 292*22dc650dSSadaf Ebrahimi End 293*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 294*22dc650dSSadaf EbrahimiCapture group count = 0 295*22dc650dSSadaf EbrahimiFirst code unit = \xff 296*22dc650dSSadaf EbrahimiSubject length lower bound = 1 297*22dc650dSSadaf Ebrahimi >\xff< 298*22dc650dSSadaf Ebrahimi 0: \xff 299*22dc650dSSadaf Ebrahimi 300*22dc650dSSadaf Ebrahimi/[^\xFF]/IB 301*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 302*22dc650dSSadaf Ebrahimi Bra 303*22dc650dSSadaf Ebrahimi [^\x{ff}] 304*22dc650dSSadaf Ebrahimi Ket 305*22dc650dSSadaf Ebrahimi End 306*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 307*22dc650dSSadaf EbrahimiCapture group count = 0 308*22dc650dSSadaf EbrahimiSubject length lower bound = 1 309*22dc650dSSadaf Ebrahimi 310*22dc650dSSadaf Ebrahimi/[Ä-Ü]/utf 311*22dc650dSSadaf Ebrahimi Ö # Matches without Study 312*22dc650dSSadaf Ebrahimi 0: \x{d6} 313*22dc650dSSadaf Ebrahimi \x{d6} 314*22dc650dSSadaf Ebrahimi 0: \x{d6} 315*22dc650dSSadaf Ebrahimi 316*22dc650dSSadaf Ebrahimi/[Ä-Ü]/utf 317*22dc650dSSadaf Ebrahimi Ö <-- Same with Study 318*22dc650dSSadaf Ebrahimi 0: \x{d6} 319*22dc650dSSadaf Ebrahimi \x{d6} 320*22dc650dSSadaf Ebrahimi 0: \x{d6} 321*22dc650dSSadaf Ebrahimi 322*22dc650dSSadaf Ebrahimi/[\x{c4}-\x{dc}]/utf 323*22dc650dSSadaf Ebrahimi Ö # Matches without Study 324*22dc650dSSadaf Ebrahimi 0: \x{d6} 325*22dc650dSSadaf Ebrahimi \x{d6} 326*22dc650dSSadaf Ebrahimi 0: \x{d6} 327*22dc650dSSadaf Ebrahimi 328*22dc650dSSadaf Ebrahimi/[\x{c4}-\x{dc}]/utf 329*22dc650dSSadaf Ebrahimi Ö <-- Same with Study 330*22dc650dSSadaf Ebrahimi 0: \x{d6} 331*22dc650dSSadaf Ebrahimi \x{d6} 332*22dc650dSSadaf Ebrahimi 0: \x{d6} 333*22dc650dSSadaf Ebrahimi 334*22dc650dSSadaf Ebrahimi/[^\x{100}]abc(xyz(?1))/IB,utf 335*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 336*22dc650dSSadaf Ebrahimi Bra 337*22dc650dSSadaf Ebrahimi [^\x{100}] 338*22dc650dSSadaf Ebrahimi abc 339*22dc650dSSadaf Ebrahimi CBra 1 340*22dc650dSSadaf Ebrahimi xyz 341*22dc650dSSadaf Ebrahimi Recurse 342*22dc650dSSadaf Ebrahimi Ket 343*22dc650dSSadaf Ebrahimi Ket 344*22dc650dSSadaf Ebrahimi End 345*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 346*22dc650dSSadaf EbrahimiCapture group count = 1 347*22dc650dSSadaf EbrahimiOptions: utf 348*22dc650dSSadaf EbrahimiLast code unit = 'z' 349*22dc650dSSadaf EbrahimiSubject length lower bound = 7 350*22dc650dSSadaf Ebrahimi 351*22dc650dSSadaf Ebrahimi/(\x{100}(b(?2)c))?/IB,utf 352*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 353*22dc650dSSadaf Ebrahimi Bra 354*22dc650dSSadaf Ebrahimi Brazero 355*22dc650dSSadaf Ebrahimi CBra 1 356*22dc650dSSadaf Ebrahimi \x{100} 357*22dc650dSSadaf Ebrahimi CBra 2 358*22dc650dSSadaf Ebrahimi b 359*22dc650dSSadaf Ebrahimi Recurse 360*22dc650dSSadaf Ebrahimi c 361*22dc650dSSadaf Ebrahimi Ket 362*22dc650dSSadaf Ebrahimi Ket 363*22dc650dSSadaf Ebrahimi Ket 364*22dc650dSSadaf Ebrahimi End 365*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 366*22dc650dSSadaf EbrahimiCapture group count = 2 367*22dc650dSSadaf EbrahimiMay match empty string 368*22dc650dSSadaf EbrahimiOptions: utf 369*22dc650dSSadaf EbrahimiSubject length lower bound = 0 370*22dc650dSSadaf Ebrahimi 371*22dc650dSSadaf Ebrahimi/(\x{100}(b(?2)c)){0,2}/IB,utf 372*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 373*22dc650dSSadaf Ebrahimi Bra 374*22dc650dSSadaf Ebrahimi Brazero 375*22dc650dSSadaf Ebrahimi Bra 376*22dc650dSSadaf Ebrahimi CBra 1 377*22dc650dSSadaf Ebrahimi \x{100} 378*22dc650dSSadaf Ebrahimi CBra 2 379*22dc650dSSadaf Ebrahimi b 380*22dc650dSSadaf Ebrahimi Recurse 381*22dc650dSSadaf Ebrahimi c 382*22dc650dSSadaf Ebrahimi Ket 383*22dc650dSSadaf Ebrahimi Ket 384*22dc650dSSadaf Ebrahimi Brazero 385*22dc650dSSadaf Ebrahimi CBra 1 386*22dc650dSSadaf Ebrahimi \x{100} 387*22dc650dSSadaf Ebrahimi CBra 2 388*22dc650dSSadaf Ebrahimi b 389*22dc650dSSadaf Ebrahimi Recurse 390*22dc650dSSadaf Ebrahimi c 391*22dc650dSSadaf Ebrahimi Ket 392*22dc650dSSadaf Ebrahimi Ket 393*22dc650dSSadaf Ebrahimi Ket 394*22dc650dSSadaf Ebrahimi Ket 395*22dc650dSSadaf Ebrahimi End 396*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 397*22dc650dSSadaf EbrahimiCapture group count = 2 398*22dc650dSSadaf EbrahimiMay match empty string 399*22dc650dSSadaf EbrahimiOptions: utf 400*22dc650dSSadaf EbrahimiSubject length lower bound = 0 401*22dc650dSSadaf Ebrahimi 402*22dc650dSSadaf Ebrahimi/(\x{100}(b(?1)c))?/IB,utf 403*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 404*22dc650dSSadaf Ebrahimi Bra 405*22dc650dSSadaf Ebrahimi Brazero 406*22dc650dSSadaf Ebrahimi CBra 1 407*22dc650dSSadaf Ebrahimi \x{100} 408*22dc650dSSadaf Ebrahimi CBra 2 409*22dc650dSSadaf Ebrahimi b 410*22dc650dSSadaf Ebrahimi Recurse 411*22dc650dSSadaf Ebrahimi c 412*22dc650dSSadaf Ebrahimi Ket 413*22dc650dSSadaf Ebrahimi Ket 414*22dc650dSSadaf Ebrahimi Ket 415*22dc650dSSadaf Ebrahimi End 416*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 417*22dc650dSSadaf EbrahimiCapture group count = 2 418*22dc650dSSadaf EbrahimiMay match empty string 419*22dc650dSSadaf EbrahimiOptions: utf 420*22dc650dSSadaf EbrahimiSubject length lower bound = 0 421*22dc650dSSadaf Ebrahimi 422*22dc650dSSadaf Ebrahimi/(\x{100}(b(?1)c)){0,2}/IB,utf 423*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 424*22dc650dSSadaf Ebrahimi Bra 425*22dc650dSSadaf Ebrahimi Brazero 426*22dc650dSSadaf Ebrahimi Bra 427*22dc650dSSadaf Ebrahimi CBra 1 428*22dc650dSSadaf Ebrahimi \x{100} 429*22dc650dSSadaf Ebrahimi CBra 2 430*22dc650dSSadaf Ebrahimi b 431*22dc650dSSadaf Ebrahimi Recurse 432*22dc650dSSadaf Ebrahimi c 433*22dc650dSSadaf Ebrahimi Ket 434*22dc650dSSadaf Ebrahimi Ket 435*22dc650dSSadaf Ebrahimi Brazero 436*22dc650dSSadaf Ebrahimi CBra 1 437*22dc650dSSadaf Ebrahimi \x{100} 438*22dc650dSSadaf Ebrahimi CBra 2 439*22dc650dSSadaf Ebrahimi b 440*22dc650dSSadaf Ebrahimi Recurse 441*22dc650dSSadaf Ebrahimi c 442*22dc650dSSadaf Ebrahimi Ket 443*22dc650dSSadaf Ebrahimi Ket 444*22dc650dSSadaf Ebrahimi Ket 445*22dc650dSSadaf Ebrahimi Ket 446*22dc650dSSadaf Ebrahimi End 447*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 448*22dc650dSSadaf EbrahimiCapture group count = 2 449*22dc650dSSadaf EbrahimiMay match empty string 450*22dc650dSSadaf EbrahimiOptions: utf 451*22dc650dSSadaf EbrahimiSubject length lower bound = 0 452*22dc650dSSadaf Ebrahimi 453*22dc650dSSadaf Ebrahimi/\W/utf 454*22dc650dSSadaf Ebrahimi A.B 455*22dc650dSSadaf Ebrahimi 0: . 456*22dc650dSSadaf Ebrahimi A\x{100}B 457*22dc650dSSadaf Ebrahimi 0: \x{100} 458*22dc650dSSadaf Ebrahimi 459*22dc650dSSadaf Ebrahimi/\w/utf 460*22dc650dSSadaf Ebrahimi \x{100}X 461*22dc650dSSadaf Ebrahimi 0: X 462*22dc650dSSadaf Ebrahimi 463*22dc650dSSadaf Ebrahimi# Use no_start_optimize because the first code unit is different in 8-bit from 464*22dc650dSSadaf Ebrahimi# the wider modes. 465*22dc650dSSadaf Ebrahimi 466*22dc650dSSadaf Ebrahimi/^\ሴ/IB,utf,no_start_optimize 467*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 468*22dc650dSSadaf Ebrahimi Bra 469*22dc650dSSadaf Ebrahimi ^ 470*22dc650dSSadaf Ebrahimi \x{1234} 471*22dc650dSSadaf Ebrahimi Ket 472*22dc650dSSadaf Ebrahimi End 473*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 474*22dc650dSSadaf EbrahimiCapture group count = 0 475*22dc650dSSadaf EbrahimiCompile options: no_start_optimize utf 476*22dc650dSSadaf EbrahimiOverall options: anchored no_start_optimize utf 477*22dc650dSSadaf Ebrahimi 478*22dc650dSSadaf Ebrahimi/()()()()()()()()()() 479*22dc650dSSadaf Ebrahimi ()()()()()()()()()() 480*22dc650dSSadaf Ebrahimi ()()()()()()()()()() 481*22dc650dSSadaf Ebrahimi ()()()()()()()()()() 482*22dc650dSSadaf Ebrahimi A (x) (?41) B/x,utf 483*22dc650dSSadaf Ebrahimi AxxB 484*22dc650dSSadaf EbrahimiMatched, but too many substrings 485*22dc650dSSadaf Ebrahimi 0: AxxB 486*22dc650dSSadaf Ebrahimi 1: 487*22dc650dSSadaf Ebrahimi 2: 488*22dc650dSSadaf Ebrahimi 3: 489*22dc650dSSadaf Ebrahimi 4: 490*22dc650dSSadaf Ebrahimi 5: 491*22dc650dSSadaf Ebrahimi 6: 492*22dc650dSSadaf Ebrahimi 7: 493*22dc650dSSadaf Ebrahimi 8: 494*22dc650dSSadaf Ebrahimi 9: 495*22dc650dSSadaf Ebrahimi10: 496*22dc650dSSadaf Ebrahimi11: 497*22dc650dSSadaf Ebrahimi12: 498*22dc650dSSadaf Ebrahimi13: 499*22dc650dSSadaf Ebrahimi14: 500*22dc650dSSadaf Ebrahimi 501*22dc650dSSadaf Ebrahimi/^[\x{100}\E-\Q\E\x{150}]/B,utf 502*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 503*22dc650dSSadaf Ebrahimi Bra 504*22dc650dSSadaf Ebrahimi ^ 505*22dc650dSSadaf Ebrahimi [\x{100}-\x{150}] 506*22dc650dSSadaf Ebrahimi Ket 507*22dc650dSSadaf Ebrahimi End 508*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 509*22dc650dSSadaf Ebrahimi 510*22dc650dSSadaf Ebrahimi/^[\QĀ\E-\QŐ\E]/B,utf 511*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 512*22dc650dSSadaf Ebrahimi Bra 513*22dc650dSSadaf Ebrahimi ^ 514*22dc650dSSadaf Ebrahimi [\x{100}-\x{150}] 515*22dc650dSSadaf Ebrahimi Ket 516*22dc650dSSadaf Ebrahimi End 517*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 518*22dc650dSSadaf Ebrahimi 519*22dc650dSSadaf Ebrahimi/^abc./gmx,newline=any,utf 520*22dc650dSSadaf Ebrahimi abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK 521*22dc650dSSadaf Ebrahimi 0: abc1 522*22dc650dSSadaf Ebrahimi 0: abc2 523*22dc650dSSadaf Ebrahimi 0: abc3 524*22dc650dSSadaf Ebrahimi 0: abc4 525*22dc650dSSadaf Ebrahimi 0: abc5 526*22dc650dSSadaf Ebrahimi 0: abc6 527*22dc650dSSadaf Ebrahimi 0: abc7 528*22dc650dSSadaf Ebrahimi 0: abc8 529*22dc650dSSadaf Ebrahimi 0: abc9 530*22dc650dSSadaf Ebrahimi 531*22dc650dSSadaf Ebrahimi/abc.$/gmx,newline=any,utf 532*22dc650dSSadaf Ebrahimi abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9 533*22dc650dSSadaf Ebrahimi 0: abc1 534*22dc650dSSadaf Ebrahimi 0: abc2 535*22dc650dSSadaf Ebrahimi 0: abc3 536*22dc650dSSadaf Ebrahimi 0: abc4 537*22dc650dSSadaf Ebrahimi 0: abc5 538*22dc650dSSadaf Ebrahimi 0: abc6 539*22dc650dSSadaf Ebrahimi 0: abc7 540*22dc650dSSadaf Ebrahimi 0: abc8 541*22dc650dSSadaf Ebrahimi 0: abc9 542*22dc650dSSadaf Ebrahimi 543*22dc650dSSadaf Ebrahimi/^a\Rb/bsr=unicode,utf 544*22dc650dSSadaf Ebrahimi a\nb 545*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 546*22dc650dSSadaf Ebrahimi a\rb 547*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 548*22dc650dSSadaf Ebrahimi a\r\nb 549*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 550*22dc650dSSadaf Ebrahimi a\x0bb 551*22dc650dSSadaf Ebrahimi 0: a\x{0b}b 552*22dc650dSSadaf Ebrahimi a\x0cb 553*22dc650dSSadaf Ebrahimi 0: a\x{0c}b 554*22dc650dSSadaf Ebrahimi a\x{85}b 555*22dc650dSSadaf Ebrahimi 0: a\x{85}b 556*22dc650dSSadaf Ebrahimi a\x{2028}b 557*22dc650dSSadaf Ebrahimi 0: a\x{2028}b 558*22dc650dSSadaf Ebrahimi a\x{2029}b 559*22dc650dSSadaf Ebrahimi 0: a\x{2029}b 560*22dc650dSSadaf Ebrahimi\= Expect no match 561*22dc650dSSadaf Ebrahimi a\n\rb 562*22dc650dSSadaf EbrahimiNo match 563*22dc650dSSadaf Ebrahimi 564*22dc650dSSadaf Ebrahimi/^a\R*b/bsr=unicode,utf 565*22dc650dSSadaf Ebrahimi ab 566*22dc650dSSadaf Ebrahimi 0: ab 567*22dc650dSSadaf Ebrahimi a\nb 568*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 569*22dc650dSSadaf Ebrahimi a\rb 570*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 571*22dc650dSSadaf Ebrahimi a\r\nb 572*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 573*22dc650dSSadaf Ebrahimi a\x0bb 574*22dc650dSSadaf Ebrahimi 0: a\x{0b}b 575*22dc650dSSadaf Ebrahimi a\x0c\x{2028}\x{2029}b 576*22dc650dSSadaf Ebrahimi 0: a\x{0c}\x{2028}\x{2029}b 577*22dc650dSSadaf Ebrahimi a\x{85}b 578*22dc650dSSadaf Ebrahimi 0: a\x{85}b 579*22dc650dSSadaf Ebrahimi a\n\rb 580*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}b 581*22dc650dSSadaf Ebrahimi a\n\r\x{85}\x0cb 582*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}\x{85}\x{0c}b 583*22dc650dSSadaf Ebrahimi 584*22dc650dSSadaf Ebrahimi/^a\R+b/bsr=unicode,utf 585*22dc650dSSadaf Ebrahimi a\nb 586*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 587*22dc650dSSadaf Ebrahimi a\rb 588*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 589*22dc650dSSadaf Ebrahimi a\r\nb 590*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 591*22dc650dSSadaf Ebrahimi a\x0bb 592*22dc650dSSadaf Ebrahimi 0: a\x{0b}b 593*22dc650dSSadaf Ebrahimi a\x0c\x{2028}\x{2029}b 594*22dc650dSSadaf Ebrahimi 0: a\x{0c}\x{2028}\x{2029}b 595*22dc650dSSadaf Ebrahimi a\x{85}b 596*22dc650dSSadaf Ebrahimi 0: a\x{85}b 597*22dc650dSSadaf Ebrahimi a\n\rb 598*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}b 599*22dc650dSSadaf Ebrahimi a\n\r\x{85}\x0cb 600*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}\x{85}\x{0c}b 601*22dc650dSSadaf Ebrahimi\= Expect no match 602*22dc650dSSadaf Ebrahimi ab 603*22dc650dSSadaf EbrahimiNo match 604*22dc650dSSadaf Ebrahimi 605*22dc650dSSadaf Ebrahimi/^a\R{1,3}b/bsr=unicode,utf 606*22dc650dSSadaf Ebrahimi a\nb 607*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 608*22dc650dSSadaf Ebrahimi a\n\rb 609*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}b 610*22dc650dSSadaf Ebrahimi a\n\r\x{85}b 611*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}\x{85}b 612*22dc650dSSadaf Ebrahimi a\r\n\r\nb 613*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}\x{0d}\x{0a}b 614*22dc650dSSadaf Ebrahimi a\r\n\r\n\r\nb 615*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}\x{0d}\x{0a}\x{0d}\x{0a}b 616*22dc650dSSadaf Ebrahimi a\n\r\n\rb 617*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0d}\x{0a}\x{0d}b 618*22dc650dSSadaf Ebrahimi a\n\n\r\nb 619*22dc650dSSadaf Ebrahimi 0: a\x{0a}\x{0a}\x{0d}\x{0a}b 620*22dc650dSSadaf Ebrahimi\= Expect no match 621*22dc650dSSadaf Ebrahimi a\n\n\n\rb 622*22dc650dSSadaf EbrahimiNo match 623*22dc650dSSadaf Ebrahimi a\r 624*22dc650dSSadaf EbrahimiNo match 625*22dc650dSSadaf Ebrahimi 626*22dc650dSSadaf Ebrahimi/\H\h\V\v/utf 627*22dc650dSSadaf Ebrahimi X X\x0a 628*22dc650dSSadaf Ebrahimi 0: X X\x{0a} 629*22dc650dSSadaf Ebrahimi X\x09X\x0b 630*22dc650dSSadaf Ebrahimi 0: X\x{09}X\x{0b} 631*22dc650dSSadaf Ebrahimi\= Expect no match 632*22dc650dSSadaf Ebrahimi \x{a0} X\x0a 633*22dc650dSSadaf EbrahimiNo match 634*22dc650dSSadaf Ebrahimi 635*22dc650dSSadaf Ebrahimi/\H*\h+\V?\v{3,4}/utf 636*22dc650dSSadaf Ebrahimi \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a 637*22dc650dSSadaf Ebrahimi 0: \x{09} \x{a0}X\x{0a}\x{0b}\x{0c}\x{0d} 638*22dc650dSSadaf Ebrahimi \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a 639*22dc650dSSadaf Ebrahimi 0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}\x{0d} 640*22dc650dSSadaf Ebrahimi \x09\x20\x{a0}\x0a\x0b\x0c 641*22dc650dSSadaf Ebrahimi 0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c} 642*22dc650dSSadaf Ebrahimi\= Expect no match 643*22dc650dSSadaf Ebrahimi \x09\x20\x{a0}\x0a\x0b 644*22dc650dSSadaf EbrahimiNo match 645*22dc650dSSadaf Ebrahimi 646*22dc650dSSadaf Ebrahimi/\H\h\V\v/utf 647*22dc650dSSadaf Ebrahimi \x{3001}\x{3000}\x{2030}\x{2028} 648*22dc650dSSadaf Ebrahimi 0: \x{3001}\x{3000}\x{2030}\x{2028} 649*22dc650dSSadaf Ebrahimi X\x{180e}X\x{85} 650*22dc650dSSadaf Ebrahimi 0: X\x{180e}X\x{85} 651*22dc650dSSadaf Ebrahimi\= Expect no match 652*22dc650dSSadaf Ebrahimi \x{2009} X\x0a 653*22dc650dSSadaf EbrahimiNo match 654*22dc650dSSadaf Ebrahimi 655*22dc650dSSadaf Ebrahimi/\H*\h+\V?\v{3,4}/utf 656*22dc650dSSadaf Ebrahimi \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a 657*22dc650dSSadaf Ebrahimi 0: \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x{0c}\x{0d} 658*22dc650dSSadaf Ebrahimi \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a 659*22dc650dSSadaf Ebrahimi 0: \x{09}\x{205f}\x{a0}\x{0a}\x{2029}\x{0c}\x{2028} 660*22dc650dSSadaf Ebrahimi \x09\x20\x{202f}\x0a\x0b\x0c 661*22dc650dSSadaf Ebrahimi 0: \x{09} \x{202f}\x{0a}\x{0b}\x{0c} 662*22dc650dSSadaf Ebrahimi\= Expect no match 663*22dc650dSSadaf Ebrahimi \x09\x{200a}\x{a0}\x{2028}\x0b 664*22dc650dSSadaf EbrahimiNo match 665*22dc650dSSadaf Ebrahimi 666*22dc650dSSadaf Ebrahimi/[\h]/B,utf 667*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 668*22dc650dSSadaf Ebrahimi Bra 669*22dc650dSSadaf Ebrahimi [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}] 670*22dc650dSSadaf Ebrahimi Ket 671*22dc650dSSadaf Ebrahimi End 672*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 673*22dc650dSSadaf Ebrahimi >\x{1680} 674*22dc650dSSadaf Ebrahimi 0: \x{1680} 675*22dc650dSSadaf Ebrahimi 676*22dc650dSSadaf Ebrahimi/[\h]{3,}/B,utf 677*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 678*22dc650dSSadaf Ebrahimi Bra 679*22dc650dSSadaf Ebrahimi [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}+ 680*22dc650dSSadaf Ebrahimi Ket 681*22dc650dSSadaf Ebrahimi End 682*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 683*22dc650dSSadaf Ebrahimi >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}< 684*22dc650dSSadaf Ebrahimi 0: \x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000} 685*22dc650dSSadaf Ebrahimi 686*22dc650dSSadaf Ebrahimi/[\v]/B,utf 687*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 688*22dc650dSSadaf Ebrahimi Bra 689*22dc650dSSadaf Ebrahimi [\x0a-\x0d\x85\x{2028}-\x{2029}] 690*22dc650dSSadaf Ebrahimi Ket 691*22dc650dSSadaf Ebrahimi End 692*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 693*22dc650dSSadaf Ebrahimi 694*22dc650dSSadaf Ebrahimi/[\H]/B,utf 695*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 696*22dc650dSSadaf Ebrahimi Bra 697*22dc650dSSadaf Ebrahimi [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}] 698*22dc650dSSadaf Ebrahimi Ket 699*22dc650dSSadaf Ebrahimi End 700*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 701*22dc650dSSadaf Ebrahimi 702*22dc650dSSadaf Ebrahimi/[\V]/B,utf 703*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 704*22dc650dSSadaf Ebrahimi Bra 705*22dc650dSSadaf Ebrahimi [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{202a}-\x{10ffff}] 706*22dc650dSSadaf Ebrahimi Ket 707*22dc650dSSadaf Ebrahimi End 708*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 709*22dc650dSSadaf Ebrahimi 710*22dc650dSSadaf Ebrahimi/.*$/newline=any,utf 711*22dc650dSSadaf Ebrahimi \x{1ec5} 712*22dc650dSSadaf Ebrahimi 0: \x{1ec5} 713*22dc650dSSadaf Ebrahimi 714*22dc650dSSadaf Ebrahimi/a\Rb/I,bsr=anycrlf,utf 715*22dc650dSSadaf EbrahimiCapture group count = 0 716*22dc650dSSadaf EbrahimiOptions: utf 717*22dc650dSSadaf Ebrahimi\R matches CR, LF, or CRLF 718*22dc650dSSadaf EbrahimiFirst code unit = 'a' 719*22dc650dSSadaf EbrahimiLast code unit = 'b' 720*22dc650dSSadaf EbrahimiSubject length lower bound = 3 721*22dc650dSSadaf Ebrahimi a\rb 722*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 723*22dc650dSSadaf Ebrahimi a\nb 724*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 725*22dc650dSSadaf Ebrahimi a\r\nb 726*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 727*22dc650dSSadaf Ebrahimi\= Expect no match 728*22dc650dSSadaf Ebrahimi a\x{85}b 729*22dc650dSSadaf EbrahimiNo match 730*22dc650dSSadaf Ebrahimi a\x0bb 731*22dc650dSSadaf EbrahimiNo match 732*22dc650dSSadaf Ebrahimi 733*22dc650dSSadaf Ebrahimi/a\Rb/I,bsr=unicode,utf 734*22dc650dSSadaf EbrahimiCapture group count = 0 735*22dc650dSSadaf EbrahimiOptions: utf 736*22dc650dSSadaf Ebrahimi\R matches any Unicode newline 737*22dc650dSSadaf EbrahimiFirst code unit = 'a' 738*22dc650dSSadaf EbrahimiLast code unit = 'b' 739*22dc650dSSadaf EbrahimiSubject length lower bound = 3 740*22dc650dSSadaf Ebrahimi a\rb 741*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 742*22dc650dSSadaf Ebrahimi a\nb 743*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 744*22dc650dSSadaf Ebrahimi a\r\nb 745*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 746*22dc650dSSadaf Ebrahimi a\x{85}b 747*22dc650dSSadaf Ebrahimi 0: a\x{85}b 748*22dc650dSSadaf Ebrahimi a\x0bb 749*22dc650dSSadaf Ebrahimi 0: a\x{0b}b 750*22dc650dSSadaf Ebrahimi 751*22dc650dSSadaf Ebrahimi/a\R?b/I,bsr=anycrlf,utf 752*22dc650dSSadaf EbrahimiCapture group count = 0 753*22dc650dSSadaf EbrahimiOptions: utf 754*22dc650dSSadaf Ebrahimi\R matches CR, LF, or CRLF 755*22dc650dSSadaf EbrahimiFirst code unit = 'a' 756*22dc650dSSadaf EbrahimiLast code unit = 'b' 757*22dc650dSSadaf EbrahimiSubject length lower bound = 2 758*22dc650dSSadaf Ebrahimi a\rb 759*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 760*22dc650dSSadaf Ebrahimi a\nb 761*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 762*22dc650dSSadaf Ebrahimi a\r\nb 763*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 764*22dc650dSSadaf Ebrahimi\= Expect no match 765*22dc650dSSadaf Ebrahimi a\x{85}b 766*22dc650dSSadaf EbrahimiNo match 767*22dc650dSSadaf Ebrahimi a\x0bb 768*22dc650dSSadaf EbrahimiNo match 769*22dc650dSSadaf Ebrahimi 770*22dc650dSSadaf Ebrahimi/a\R?b/I,bsr=unicode,utf 771*22dc650dSSadaf EbrahimiCapture group count = 0 772*22dc650dSSadaf EbrahimiOptions: utf 773*22dc650dSSadaf Ebrahimi\R matches any Unicode newline 774*22dc650dSSadaf EbrahimiFirst code unit = 'a' 775*22dc650dSSadaf EbrahimiLast code unit = 'b' 776*22dc650dSSadaf EbrahimiSubject length lower bound = 2 777*22dc650dSSadaf Ebrahimi a\rb 778*22dc650dSSadaf Ebrahimi 0: a\x{0d}b 779*22dc650dSSadaf Ebrahimi a\nb 780*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 781*22dc650dSSadaf Ebrahimi a\r\nb 782*22dc650dSSadaf Ebrahimi 0: a\x{0d}\x{0a}b 783*22dc650dSSadaf Ebrahimi a\x{85}b 784*22dc650dSSadaf Ebrahimi 0: a\x{85}b 785*22dc650dSSadaf Ebrahimi a\x0bb 786*22dc650dSSadaf Ebrahimi 0: a\x{0b}b 787*22dc650dSSadaf Ebrahimi 788*22dc650dSSadaf Ebrahimi/.*a.*=.b.*/utf,newline=any 789*22dc650dSSadaf Ebrahimi QQQ\x{2029}ABCaXYZ=!bPQR 790*22dc650dSSadaf Ebrahimi 0: ABCaXYZ=!bPQR 791*22dc650dSSadaf Ebrahimi\= Expect no match 792*22dc650dSSadaf Ebrahimi a\x{2029}b 793*22dc650dSSadaf EbrahimiNo match 794*22dc650dSSadaf Ebrahimi \x61\xe2\x80\xa9\x62 795*22dc650dSSadaf EbrahimiNo match 796*22dc650dSSadaf Ebrahimi 797*22dc650dSSadaf Ebrahimi/[[:a\x{100}b:]]/utf 798*22dc650dSSadaf EbrahimiFailed: error 130 at offset 3: unknown POSIX class name 799*22dc650dSSadaf Ebrahimi 800*22dc650dSSadaf Ebrahimi/a[^]b/utf,allow_empty_class,match_unset_backref 801*22dc650dSSadaf Ebrahimi a\x{1234}b 802*22dc650dSSadaf Ebrahimi 0: a\x{1234}b 803*22dc650dSSadaf Ebrahimi a\nb 804*22dc650dSSadaf Ebrahimi 0: a\x{0a}b 805*22dc650dSSadaf Ebrahimi\= Expect no match 806*22dc650dSSadaf Ebrahimi ab 807*22dc650dSSadaf EbrahimiNo match 808*22dc650dSSadaf Ebrahimi 809*22dc650dSSadaf Ebrahimi/a[^]+b/utf,allow_empty_class,match_unset_backref 810*22dc650dSSadaf Ebrahimi aXb 811*22dc650dSSadaf Ebrahimi 0: aXb 812*22dc650dSSadaf Ebrahimi a\nX\nX\x{1234}b 813*22dc650dSSadaf Ebrahimi 0: a\x{0a}X\x{0a}X\x{1234}b 814*22dc650dSSadaf Ebrahimi\= Expect no match 815*22dc650dSSadaf Ebrahimi ab 816*22dc650dSSadaf EbrahimiNo match 817*22dc650dSSadaf Ebrahimi 818*22dc650dSSadaf Ebrahimi/(\x{de})\1/ 819*22dc650dSSadaf Ebrahimi \x{de}\x{de} 820*22dc650dSSadaf Ebrahimi 0: \xde\xde 821*22dc650dSSadaf Ebrahimi 1: \xde 822*22dc650dSSadaf Ebrahimi 823*22dc650dSSadaf Ebrahimi/X/newline=any,utf,firstline 824*22dc650dSSadaf Ebrahimi A\x{1ec5}ABCXYZ 825*22dc650dSSadaf Ebrahimi 0: X 826*22dc650dSSadaf Ebrahimi 827*22dc650dSSadaf Ebrahimi/Xa{2,4}b/utf 828*22dc650dSSadaf Ebrahimi X\=ps 829*22dc650dSSadaf EbrahimiPartial match: X 830*22dc650dSSadaf Ebrahimi Xa\=ps 831*22dc650dSSadaf EbrahimiPartial match: Xa 832*22dc650dSSadaf Ebrahimi Xaa\=ps 833*22dc650dSSadaf EbrahimiPartial match: Xaa 834*22dc650dSSadaf Ebrahimi Xaaa\=ps 835*22dc650dSSadaf EbrahimiPartial match: Xaaa 836*22dc650dSSadaf Ebrahimi Xaaaa\=ps 837*22dc650dSSadaf EbrahimiPartial match: Xaaaa 838*22dc650dSSadaf Ebrahimi 839*22dc650dSSadaf Ebrahimi/Xa{2,4}?b/utf 840*22dc650dSSadaf Ebrahimi X\=ps 841*22dc650dSSadaf EbrahimiPartial match: X 842*22dc650dSSadaf Ebrahimi Xa\=ps 843*22dc650dSSadaf EbrahimiPartial match: Xa 844*22dc650dSSadaf Ebrahimi Xaa\=ps 845*22dc650dSSadaf EbrahimiPartial match: Xaa 846*22dc650dSSadaf Ebrahimi Xaaa\=ps 847*22dc650dSSadaf EbrahimiPartial match: Xaaa 848*22dc650dSSadaf Ebrahimi Xaaaa\=ps 849*22dc650dSSadaf EbrahimiPartial match: Xaaaa 850*22dc650dSSadaf Ebrahimi 851*22dc650dSSadaf Ebrahimi/Xa{2,4}+b/utf 852*22dc650dSSadaf Ebrahimi X\=ps 853*22dc650dSSadaf EbrahimiPartial match: X 854*22dc650dSSadaf Ebrahimi Xa\=ps 855*22dc650dSSadaf EbrahimiPartial match: Xa 856*22dc650dSSadaf Ebrahimi Xaa\=ps 857*22dc650dSSadaf EbrahimiPartial match: Xaa 858*22dc650dSSadaf Ebrahimi Xaaa\=ps 859*22dc650dSSadaf EbrahimiPartial match: Xaaa 860*22dc650dSSadaf Ebrahimi Xaaaa\=ps 861*22dc650dSSadaf EbrahimiPartial match: Xaaaa 862*22dc650dSSadaf Ebrahimi 863*22dc650dSSadaf Ebrahimi/X\x{123}{2,4}b/utf 864*22dc650dSSadaf Ebrahimi X\=ps 865*22dc650dSSadaf EbrahimiPartial match: X 866*22dc650dSSadaf Ebrahimi X\x{123}\=ps 867*22dc650dSSadaf EbrahimiPartial match: X\x{123} 868*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 869*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 870*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 871*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 872*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 873*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 874*22dc650dSSadaf Ebrahimi 875*22dc650dSSadaf Ebrahimi/X\x{123}{2,4}?b/utf 876*22dc650dSSadaf Ebrahimi X\=ps 877*22dc650dSSadaf EbrahimiPartial match: X 878*22dc650dSSadaf Ebrahimi X\x{123}\=ps 879*22dc650dSSadaf EbrahimiPartial match: X\x{123} 880*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 881*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 882*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 883*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 884*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 885*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 886*22dc650dSSadaf Ebrahimi 887*22dc650dSSadaf Ebrahimi/X\x{123}{2,4}+b/utf 888*22dc650dSSadaf Ebrahimi X\=ps 889*22dc650dSSadaf EbrahimiPartial match: X 890*22dc650dSSadaf Ebrahimi X\x{123}\=ps 891*22dc650dSSadaf EbrahimiPartial match: X\x{123} 892*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 893*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 894*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 895*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 896*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 897*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 898*22dc650dSSadaf Ebrahimi 899*22dc650dSSadaf Ebrahimi/X\x{123}{2,4}b/utf 900*22dc650dSSadaf Ebrahimi\= Expect no match 901*22dc650dSSadaf Ebrahimi Xx\=ps 902*22dc650dSSadaf EbrahimiNo match 903*22dc650dSSadaf Ebrahimi X\x{123}x\=ps 904*22dc650dSSadaf EbrahimiNo match 905*22dc650dSSadaf Ebrahimi X\x{123}\x{123}x\=ps 906*22dc650dSSadaf EbrahimiNo match 907*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}x\=ps 908*22dc650dSSadaf EbrahimiNo match 909*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}x\=ps 910*22dc650dSSadaf EbrahimiNo match 911*22dc650dSSadaf Ebrahimi 912*22dc650dSSadaf Ebrahimi/X\x{123}{2,4}?b/utf 913*22dc650dSSadaf Ebrahimi\= Expect no match 914*22dc650dSSadaf Ebrahimi Xx\=ps 915*22dc650dSSadaf EbrahimiNo match 916*22dc650dSSadaf Ebrahimi X\x{123}x\=ps 917*22dc650dSSadaf EbrahimiNo match 918*22dc650dSSadaf Ebrahimi X\x{123}\x{123}x\=ps 919*22dc650dSSadaf EbrahimiNo match 920*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}x\=ps 921*22dc650dSSadaf EbrahimiNo match 922*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}x\=ps 923*22dc650dSSadaf EbrahimiNo match 924*22dc650dSSadaf Ebrahimi 925*22dc650dSSadaf Ebrahimi/X\x{123}{2,4}+b/utf 926*22dc650dSSadaf Ebrahimi\= Expect no match 927*22dc650dSSadaf Ebrahimi Xx\=ps 928*22dc650dSSadaf EbrahimiNo match 929*22dc650dSSadaf Ebrahimi X\x{123}x\=ps 930*22dc650dSSadaf EbrahimiNo match 931*22dc650dSSadaf Ebrahimi X\x{123}\x{123}x\=ps 932*22dc650dSSadaf EbrahimiNo match 933*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}x\=ps 934*22dc650dSSadaf EbrahimiNo match 935*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}x\=ps 936*22dc650dSSadaf EbrahimiNo match 937*22dc650dSSadaf Ebrahimi 938*22dc650dSSadaf Ebrahimi/X\d{2,4}b/utf 939*22dc650dSSadaf Ebrahimi X\=ps 940*22dc650dSSadaf EbrahimiPartial match: X 941*22dc650dSSadaf Ebrahimi X3\=ps 942*22dc650dSSadaf EbrahimiPartial match: X3 943*22dc650dSSadaf Ebrahimi X33\=ps 944*22dc650dSSadaf EbrahimiPartial match: X33 945*22dc650dSSadaf Ebrahimi X333\=ps 946*22dc650dSSadaf EbrahimiPartial match: X333 947*22dc650dSSadaf Ebrahimi X3333\=ps 948*22dc650dSSadaf EbrahimiPartial match: X3333 949*22dc650dSSadaf Ebrahimi 950*22dc650dSSadaf Ebrahimi/X\d{2,4}?b/utf 951*22dc650dSSadaf Ebrahimi X\=ps 952*22dc650dSSadaf EbrahimiPartial match: X 953*22dc650dSSadaf Ebrahimi X3\=ps 954*22dc650dSSadaf EbrahimiPartial match: X3 955*22dc650dSSadaf Ebrahimi X33\=ps 956*22dc650dSSadaf EbrahimiPartial match: X33 957*22dc650dSSadaf Ebrahimi X333\=ps 958*22dc650dSSadaf EbrahimiPartial match: X333 959*22dc650dSSadaf Ebrahimi X3333\=ps 960*22dc650dSSadaf EbrahimiPartial match: X3333 961*22dc650dSSadaf Ebrahimi 962*22dc650dSSadaf Ebrahimi/X\d{2,4}+b/utf 963*22dc650dSSadaf Ebrahimi X\=ps 964*22dc650dSSadaf EbrahimiPartial match: X 965*22dc650dSSadaf Ebrahimi X3\=ps 966*22dc650dSSadaf EbrahimiPartial match: X3 967*22dc650dSSadaf Ebrahimi X33\=ps 968*22dc650dSSadaf EbrahimiPartial match: X33 969*22dc650dSSadaf Ebrahimi X333\=ps 970*22dc650dSSadaf EbrahimiPartial match: X333 971*22dc650dSSadaf Ebrahimi X3333\=ps 972*22dc650dSSadaf EbrahimiPartial match: X3333 973*22dc650dSSadaf Ebrahimi 974*22dc650dSSadaf Ebrahimi/X\D{2,4}b/utf 975*22dc650dSSadaf Ebrahimi X\=ps 976*22dc650dSSadaf EbrahimiPartial match: X 977*22dc650dSSadaf Ebrahimi Xa\=ps 978*22dc650dSSadaf EbrahimiPartial match: Xa 979*22dc650dSSadaf Ebrahimi Xaa\=ps 980*22dc650dSSadaf EbrahimiPartial match: Xaa 981*22dc650dSSadaf Ebrahimi Xaaa\=ps 982*22dc650dSSadaf EbrahimiPartial match: Xaaa 983*22dc650dSSadaf Ebrahimi Xaaaa\=ps 984*22dc650dSSadaf EbrahimiPartial match: Xaaaa 985*22dc650dSSadaf Ebrahimi 986*22dc650dSSadaf Ebrahimi/X\D{2,4}?b/utf 987*22dc650dSSadaf Ebrahimi X\=ps 988*22dc650dSSadaf EbrahimiPartial match: X 989*22dc650dSSadaf Ebrahimi Xa\=ps 990*22dc650dSSadaf EbrahimiPartial match: Xa 991*22dc650dSSadaf Ebrahimi Xaa\=ps 992*22dc650dSSadaf EbrahimiPartial match: Xaa 993*22dc650dSSadaf Ebrahimi Xaaa\=ps 994*22dc650dSSadaf EbrahimiPartial match: Xaaa 995*22dc650dSSadaf Ebrahimi Xaaaa\=ps 996*22dc650dSSadaf EbrahimiPartial match: Xaaaa 997*22dc650dSSadaf Ebrahimi 998*22dc650dSSadaf Ebrahimi/X\D{2,4}+b/utf 999*22dc650dSSadaf Ebrahimi X\=ps 1000*22dc650dSSadaf EbrahimiPartial match: X 1001*22dc650dSSadaf Ebrahimi Xa\=ps 1002*22dc650dSSadaf EbrahimiPartial match: Xa 1003*22dc650dSSadaf Ebrahimi Xaa\=ps 1004*22dc650dSSadaf EbrahimiPartial match: Xaa 1005*22dc650dSSadaf Ebrahimi Xaaa\=ps 1006*22dc650dSSadaf EbrahimiPartial match: Xaaa 1007*22dc650dSSadaf Ebrahimi Xaaaa\=ps 1008*22dc650dSSadaf EbrahimiPartial match: Xaaaa 1009*22dc650dSSadaf Ebrahimi 1010*22dc650dSSadaf Ebrahimi/X\D{2,4}b/utf 1011*22dc650dSSadaf Ebrahimi X\=ps 1012*22dc650dSSadaf EbrahimiPartial match: X 1013*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1014*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1015*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1016*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1017*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1018*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1019*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1020*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1021*22dc650dSSadaf Ebrahimi 1022*22dc650dSSadaf Ebrahimi/X\D{2,4}?b/utf 1023*22dc650dSSadaf Ebrahimi X\=ps 1024*22dc650dSSadaf EbrahimiPartial match: X 1025*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1026*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1027*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1028*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1029*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1030*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1031*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1032*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1033*22dc650dSSadaf Ebrahimi 1034*22dc650dSSadaf Ebrahimi/X\D{2,4}+b/utf 1035*22dc650dSSadaf Ebrahimi X\=ps 1036*22dc650dSSadaf EbrahimiPartial match: X 1037*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1038*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1039*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1040*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1041*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1042*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1043*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1044*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1045*22dc650dSSadaf Ebrahimi 1046*22dc650dSSadaf Ebrahimi/X[abc]{2,4}b/utf 1047*22dc650dSSadaf Ebrahimi X\=ps 1048*22dc650dSSadaf EbrahimiPartial match: X 1049*22dc650dSSadaf Ebrahimi Xa\=ps 1050*22dc650dSSadaf EbrahimiPartial match: Xa 1051*22dc650dSSadaf Ebrahimi Xaa\=ps 1052*22dc650dSSadaf EbrahimiPartial match: Xaa 1053*22dc650dSSadaf Ebrahimi Xaaa\=ps 1054*22dc650dSSadaf EbrahimiPartial match: Xaaa 1055*22dc650dSSadaf Ebrahimi Xaaaa\=ps 1056*22dc650dSSadaf EbrahimiPartial match: Xaaaa 1057*22dc650dSSadaf Ebrahimi 1058*22dc650dSSadaf Ebrahimi/X[abc]{2,4}?b/utf 1059*22dc650dSSadaf Ebrahimi X\=ps 1060*22dc650dSSadaf EbrahimiPartial match: X 1061*22dc650dSSadaf Ebrahimi Xa\=ps 1062*22dc650dSSadaf EbrahimiPartial match: Xa 1063*22dc650dSSadaf Ebrahimi Xaa\=ps 1064*22dc650dSSadaf EbrahimiPartial match: Xaa 1065*22dc650dSSadaf Ebrahimi Xaaa\=ps 1066*22dc650dSSadaf EbrahimiPartial match: Xaaa 1067*22dc650dSSadaf Ebrahimi Xaaaa\=ps 1068*22dc650dSSadaf EbrahimiPartial match: Xaaaa 1069*22dc650dSSadaf Ebrahimi 1070*22dc650dSSadaf Ebrahimi/X[abc]{2,4}+b/utf 1071*22dc650dSSadaf Ebrahimi X\=ps 1072*22dc650dSSadaf EbrahimiPartial match: X 1073*22dc650dSSadaf Ebrahimi Xa\=ps 1074*22dc650dSSadaf EbrahimiPartial match: Xa 1075*22dc650dSSadaf Ebrahimi Xaa\=ps 1076*22dc650dSSadaf EbrahimiPartial match: Xaa 1077*22dc650dSSadaf Ebrahimi Xaaa\=ps 1078*22dc650dSSadaf EbrahimiPartial match: Xaaa 1079*22dc650dSSadaf Ebrahimi Xaaaa\=ps 1080*22dc650dSSadaf EbrahimiPartial match: Xaaaa 1081*22dc650dSSadaf Ebrahimi 1082*22dc650dSSadaf Ebrahimi/X[abc\x{123}]{2,4}b/utf 1083*22dc650dSSadaf Ebrahimi X\=ps 1084*22dc650dSSadaf EbrahimiPartial match: X 1085*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1086*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1087*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1088*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1089*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1090*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1091*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1092*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1093*22dc650dSSadaf Ebrahimi 1094*22dc650dSSadaf Ebrahimi/X[abc\x{123}]{2,4}?b/utf 1095*22dc650dSSadaf Ebrahimi X\=ps 1096*22dc650dSSadaf EbrahimiPartial match: X 1097*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1098*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1099*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1100*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1101*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1102*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1103*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1104*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1105*22dc650dSSadaf Ebrahimi 1106*22dc650dSSadaf Ebrahimi/X[abc\x{123}]{2,4}+b/utf 1107*22dc650dSSadaf Ebrahimi X\=ps 1108*22dc650dSSadaf EbrahimiPartial match: X 1109*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1110*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1111*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1112*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1113*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1114*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1115*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1116*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1117*22dc650dSSadaf Ebrahimi 1118*22dc650dSSadaf Ebrahimi/X[^a]{2,4}b/utf 1119*22dc650dSSadaf Ebrahimi X\=ps 1120*22dc650dSSadaf EbrahimiPartial match: X 1121*22dc650dSSadaf Ebrahimi Xz\=ps 1122*22dc650dSSadaf EbrahimiPartial match: Xz 1123*22dc650dSSadaf Ebrahimi Xzz\=ps 1124*22dc650dSSadaf EbrahimiPartial match: Xzz 1125*22dc650dSSadaf Ebrahimi Xzzz\=ps 1126*22dc650dSSadaf EbrahimiPartial match: Xzzz 1127*22dc650dSSadaf Ebrahimi Xzzzz\=ps 1128*22dc650dSSadaf EbrahimiPartial match: Xzzzz 1129*22dc650dSSadaf Ebrahimi 1130*22dc650dSSadaf Ebrahimi/X[^a]{2,4}?b/utf 1131*22dc650dSSadaf Ebrahimi X\=ps 1132*22dc650dSSadaf EbrahimiPartial match: X 1133*22dc650dSSadaf Ebrahimi Xz\=ps 1134*22dc650dSSadaf EbrahimiPartial match: Xz 1135*22dc650dSSadaf Ebrahimi Xzz\=ps 1136*22dc650dSSadaf EbrahimiPartial match: Xzz 1137*22dc650dSSadaf Ebrahimi Xzzz\=ps 1138*22dc650dSSadaf EbrahimiPartial match: Xzzz 1139*22dc650dSSadaf Ebrahimi Xzzzz\=ps 1140*22dc650dSSadaf EbrahimiPartial match: Xzzzz 1141*22dc650dSSadaf Ebrahimi 1142*22dc650dSSadaf Ebrahimi/X[^a]{2,4}+b/utf 1143*22dc650dSSadaf Ebrahimi X\=ps 1144*22dc650dSSadaf EbrahimiPartial match: X 1145*22dc650dSSadaf Ebrahimi Xz\=ps 1146*22dc650dSSadaf EbrahimiPartial match: Xz 1147*22dc650dSSadaf Ebrahimi Xzz\=ps 1148*22dc650dSSadaf EbrahimiPartial match: Xzz 1149*22dc650dSSadaf Ebrahimi Xzzz\=ps 1150*22dc650dSSadaf EbrahimiPartial match: Xzzz 1151*22dc650dSSadaf Ebrahimi Xzzzz\=ps 1152*22dc650dSSadaf EbrahimiPartial match: Xzzzz 1153*22dc650dSSadaf Ebrahimi 1154*22dc650dSSadaf Ebrahimi/X[^a]{2,4}b/utf 1155*22dc650dSSadaf Ebrahimi X\=ps 1156*22dc650dSSadaf EbrahimiPartial match: X 1157*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1158*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1159*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1160*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1161*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1162*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1163*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1164*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1165*22dc650dSSadaf Ebrahimi 1166*22dc650dSSadaf Ebrahimi/X[^a]{2,4}?b/utf 1167*22dc650dSSadaf Ebrahimi X\=ps 1168*22dc650dSSadaf EbrahimiPartial match: X 1169*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1170*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1171*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1172*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1173*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1174*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1175*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1176*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1177*22dc650dSSadaf Ebrahimi 1178*22dc650dSSadaf Ebrahimi/X[^a]{2,4}+b/utf 1179*22dc650dSSadaf Ebrahimi X\=ps 1180*22dc650dSSadaf EbrahimiPartial match: X 1181*22dc650dSSadaf Ebrahimi X\x{123}\=ps 1182*22dc650dSSadaf EbrahimiPartial match: X\x{123} 1183*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\=ps 1184*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123} 1185*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\=ps 1186*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123} 1187*22dc650dSSadaf Ebrahimi X\x{123}\x{123}\x{123}\x{123}\=ps 1188*22dc650dSSadaf EbrahimiPartial match: X\x{123}\x{123}\x{123}\x{123} 1189*22dc650dSSadaf Ebrahimi 1190*22dc650dSSadaf Ebrahimi/(Y)X\1{2,4}b/utf 1191*22dc650dSSadaf Ebrahimi YX\=ps 1192*22dc650dSSadaf EbrahimiPartial match: YX 1193*22dc650dSSadaf Ebrahimi YXY\=ps 1194*22dc650dSSadaf EbrahimiPartial match: YXY 1195*22dc650dSSadaf Ebrahimi YXYY\=ps 1196*22dc650dSSadaf EbrahimiPartial match: YXYY 1197*22dc650dSSadaf Ebrahimi YXYYY\=ps 1198*22dc650dSSadaf EbrahimiPartial match: YXYYY 1199*22dc650dSSadaf Ebrahimi YXYYYY\=ps 1200*22dc650dSSadaf EbrahimiPartial match: YXYYYY 1201*22dc650dSSadaf Ebrahimi 1202*22dc650dSSadaf Ebrahimi/(Y)X\1{2,4}?b/utf 1203*22dc650dSSadaf Ebrahimi YX\=ps 1204*22dc650dSSadaf EbrahimiPartial match: YX 1205*22dc650dSSadaf Ebrahimi YXY\=ps 1206*22dc650dSSadaf EbrahimiPartial match: YXY 1207*22dc650dSSadaf Ebrahimi YXYY\=ps 1208*22dc650dSSadaf EbrahimiPartial match: YXYY 1209*22dc650dSSadaf Ebrahimi YXYYY\=ps 1210*22dc650dSSadaf EbrahimiPartial match: YXYYY 1211*22dc650dSSadaf Ebrahimi YXYYYY\=ps 1212*22dc650dSSadaf EbrahimiPartial match: YXYYYY 1213*22dc650dSSadaf Ebrahimi 1214*22dc650dSSadaf Ebrahimi/(Y)X\1{2,4}+b/utf 1215*22dc650dSSadaf Ebrahimi YX\=ps 1216*22dc650dSSadaf EbrahimiPartial match: YX 1217*22dc650dSSadaf Ebrahimi YXY\=ps 1218*22dc650dSSadaf EbrahimiPartial match: YXY 1219*22dc650dSSadaf Ebrahimi YXYY\=ps 1220*22dc650dSSadaf EbrahimiPartial match: YXYY 1221*22dc650dSSadaf Ebrahimi YXYYY\=ps 1222*22dc650dSSadaf EbrahimiPartial match: YXYYY 1223*22dc650dSSadaf Ebrahimi YXYYYY\=ps 1224*22dc650dSSadaf EbrahimiPartial match: YXYYYY 1225*22dc650dSSadaf Ebrahimi 1226*22dc650dSSadaf Ebrahimi/(\x{123})X\1{2,4}b/utf 1227*22dc650dSSadaf Ebrahimi \x{123}X\=ps 1228*22dc650dSSadaf EbrahimiPartial match: \x{123}X 1229*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\=ps 1230*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123} 1231*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\=ps 1232*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123} 1233*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\x{123}\=ps 1234*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123}\x{123} 1235*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\x{123}\x{123}\=ps 1236*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123}\x{123}\x{123} 1237*22dc650dSSadaf Ebrahimi 1238*22dc650dSSadaf Ebrahimi/(\x{123})X\1{2,4}?b/utf 1239*22dc650dSSadaf Ebrahimi \x{123}X\=ps 1240*22dc650dSSadaf EbrahimiPartial match: \x{123}X 1241*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\=ps 1242*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123} 1243*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\=ps 1244*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123} 1245*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\x{123}\=ps 1246*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123}\x{123} 1247*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\x{123}\x{123}\=ps 1248*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123}\x{123}\x{123} 1249*22dc650dSSadaf Ebrahimi 1250*22dc650dSSadaf Ebrahimi/(\x{123})X\1{2,4}+b/utf 1251*22dc650dSSadaf Ebrahimi \x{123}X\=ps 1252*22dc650dSSadaf EbrahimiPartial match: \x{123}X 1253*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\=ps 1254*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123} 1255*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\=ps 1256*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123} 1257*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\x{123}\=ps 1258*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123}\x{123} 1259*22dc650dSSadaf Ebrahimi \x{123}X\x{123}\x{123}\x{123}\x{123}\=ps 1260*22dc650dSSadaf EbrahimiPartial match: \x{123}X\x{123}\x{123}\x{123}\x{123} 1261*22dc650dSSadaf Ebrahimi 1262*22dc650dSSadaf Ebrahimi/\bthe cat\b/utf 1263*22dc650dSSadaf Ebrahimi the cat\=ps 1264*22dc650dSSadaf Ebrahimi 0: the cat 1265*22dc650dSSadaf Ebrahimi the cat\=ph 1266*22dc650dSSadaf EbrahimiPartial match: the cat 1267*22dc650dSSadaf Ebrahimi 1268*22dc650dSSadaf Ebrahimi/abcd*/utf 1269*22dc650dSSadaf Ebrahimi xxxxabcd\=ps 1270*22dc650dSSadaf Ebrahimi 0: abcd 1271*22dc650dSSadaf Ebrahimi xxxxabcd\=ph 1272*22dc650dSSadaf EbrahimiPartial match: abcd 1273*22dc650dSSadaf Ebrahimi 1274*22dc650dSSadaf Ebrahimi/abcd*/i,utf 1275*22dc650dSSadaf Ebrahimi xxxxabcd\=ps 1276*22dc650dSSadaf Ebrahimi 0: abcd 1277*22dc650dSSadaf Ebrahimi xxxxabcd\=ph 1278*22dc650dSSadaf EbrahimiPartial match: abcd 1279*22dc650dSSadaf Ebrahimi XXXXABCD\=ps 1280*22dc650dSSadaf Ebrahimi 0: ABCD 1281*22dc650dSSadaf Ebrahimi XXXXABCD\=ph 1282*22dc650dSSadaf EbrahimiPartial match: ABCD 1283*22dc650dSSadaf Ebrahimi 1284*22dc650dSSadaf Ebrahimi/abc\d*/utf 1285*22dc650dSSadaf Ebrahimi xxxxabc1\=ps 1286*22dc650dSSadaf Ebrahimi 0: abc1 1287*22dc650dSSadaf Ebrahimi xxxxabc1\=ph 1288*22dc650dSSadaf EbrahimiPartial match: abc1 1289*22dc650dSSadaf Ebrahimi 1290*22dc650dSSadaf Ebrahimi/(a)bc\1*/utf 1291*22dc650dSSadaf Ebrahimi xxxxabca\=ps 1292*22dc650dSSadaf Ebrahimi 0: abca 1293*22dc650dSSadaf Ebrahimi 1: a 1294*22dc650dSSadaf Ebrahimi xxxxabca\=ph 1295*22dc650dSSadaf EbrahimiPartial match: abca 1296*22dc650dSSadaf Ebrahimi 1297*22dc650dSSadaf Ebrahimi/abc[de]*/utf 1298*22dc650dSSadaf Ebrahimi xxxxabcde\=ps 1299*22dc650dSSadaf Ebrahimi 0: abcde 1300*22dc650dSSadaf Ebrahimi xxxxabcde\=ph 1301*22dc650dSSadaf EbrahimiPartial match: abcde 1302*22dc650dSSadaf Ebrahimi 1303*22dc650dSSadaf Ebrahimi/X\W{3}X/utf 1304*22dc650dSSadaf Ebrahimi X\=ps 1305*22dc650dSSadaf EbrahimiPartial match: X 1306*22dc650dSSadaf Ebrahimi 1307*22dc650dSSadaf Ebrahimi/\sxxx\s/utf,tables=2 1308*22dc650dSSadaf Ebrahimi AB\x{85}xxx\x{a0}XYZ 1309*22dc650dSSadaf Ebrahimi 0: \x{85}xxx\x{a0} 1310*22dc650dSSadaf Ebrahimi AB\x{a0}xxx\x{85}XYZ 1311*22dc650dSSadaf Ebrahimi 0: \x{a0}xxx\x{85} 1312*22dc650dSSadaf Ebrahimi 1313*22dc650dSSadaf Ebrahimi/\S \S/utf,tables=2 1314*22dc650dSSadaf Ebrahimi \x{a2} \x{84} 1315*22dc650dSSadaf Ebrahimi 0: \x{a2} \x{84} 1316*22dc650dSSadaf Ebrahimi 1317*22dc650dSSadaf Ebrahimi'A#хц'Bx,newline=any,utf 1318*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1319*22dc650dSSadaf Ebrahimi Bra 1320*22dc650dSSadaf Ebrahimi A 1321*22dc650dSSadaf Ebrahimi Ket 1322*22dc650dSSadaf Ebrahimi End 1323*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1324*22dc650dSSadaf Ebrahimi 1325*22dc650dSSadaf Ebrahimi'A#хц 1326*22dc650dSSadaf Ebrahimi PQ'Bx,newline=any,utf 1327*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1328*22dc650dSSadaf Ebrahimi Bra 1329*22dc650dSSadaf Ebrahimi APQ 1330*22dc650dSSadaf Ebrahimi Ket 1331*22dc650dSSadaf Ebrahimi End 1332*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1333*22dc650dSSadaf Ebrahimi 1334*22dc650dSSadaf Ebrahimi/a+#хaa 1335*22dc650dSSadaf Ebrahimi z#XX?/Bx,newline=any,utf 1336*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1337*22dc650dSSadaf Ebrahimi Bra 1338*22dc650dSSadaf Ebrahimi a++ 1339*22dc650dSSadaf Ebrahimi z 1340*22dc650dSSadaf Ebrahimi Ket 1341*22dc650dSSadaf Ebrahimi End 1342*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1343*22dc650dSSadaf Ebrahimi 1344*22dc650dSSadaf Ebrahimi/a+#хaa 1345*22dc650dSSadaf Ebrahimi z#х?/Bx,newline=any,utf 1346*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1347*22dc650dSSadaf Ebrahimi Bra 1348*22dc650dSSadaf Ebrahimi a++ 1349*22dc650dSSadaf Ebrahimi z 1350*22dc650dSSadaf Ebrahimi Ket 1351*22dc650dSSadaf Ebrahimi End 1352*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1353*22dc650dSSadaf Ebrahimi 1354*22dc650dSSadaf Ebrahimi/\g{A}xxx#bXX(?'A'123) 1355*22dc650dSSadaf Ebrahimi(?'A'456)/Bx,newline=any,utf 1356*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1357*22dc650dSSadaf Ebrahimi Bra 1358*22dc650dSSadaf Ebrahimi \1 1359*22dc650dSSadaf Ebrahimi xxx 1360*22dc650dSSadaf Ebrahimi CBra 1 1361*22dc650dSSadaf Ebrahimi 456 1362*22dc650dSSadaf Ebrahimi Ket 1363*22dc650dSSadaf Ebrahimi Ket 1364*22dc650dSSadaf Ebrahimi End 1365*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1366*22dc650dSSadaf Ebrahimi 1367*22dc650dSSadaf Ebrahimi/\g{A}xxx#bх(?'A'123) 1368*22dc650dSSadaf Ebrahimi(?'A'456)/Bx,newline=any,utf 1369*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1370*22dc650dSSadaf Ebrahimi Bra 1371*22dc650dSSadaf Ebrahimi \1 1372*22dc650dSSadaf Ebrahimi xxx 1373*22dc650dSSadaf Ebrahimi CBra 1 1374*22dc650dSSadaf Ebrahimi 456 1375*22dc650dSSadaf Ebrahimi Ket 1376*22dc650dSSadaf Ebrahimi Ket 1377*22dc650dSSadaf Ebrahimi End 1378*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1379*22dc650dSSadaf Ebrahimi 1380*22dc650dSSadaf Ebrahimi/^\cģ/utf 1381*22dc650dSSadaf EbrahimiFailed: error 168 at offset 3: \c must be followed by a printable ASCII character 1382*22dc650dSSadaf Ebrahimi 1383*22dc650dSSadaf Ebrahimi/(\R*)(.)/s,utf 1384*22dc650dSSadaf Ebrahimi \r\n 1385*22dc650dSSadaf Ebrahimi 0: \x{0d} 1386*22dc650dSSadaf Ebrahimi 1: 1387*22dc650dSSadaf Ebrahimi 2: \x{0d} 1388*22dc650dSSadaf Ebrahimi \r\r\n\n\r 1389*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d} 1390*22dc650dSSadaf Ebrahimi 1: \x{0d}\x{0d}\x{0a}\x{0a} 1391*22dc650dSSadaf Ebrahimi 2: \x{0d} 1392*22dc650dSSadaf Ebrahimi \r\r\n\n\r\n 1393*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d} 1394*22dc650dSSadaf Ebrahimi 1: \x{0d}\x{0d}\x{0a}\x{0a} 1395*22dc650dSSadaf Ebrahimi 2: \x{0d} 1396*22dc650dSSadaf Ebrahimi 1397*22dc650dSSadaf Ebrahimi/(\R)*(.)/s,utf 1398*22dc650dSSadaf Ebrahimi \r\n 1399*22dc650dSSadaf Ebrahimi 0: \x{0d} 1400*22dc650dSSadaf Ebrahimi 1: <unset> 1401*22dc650dSSadaf Ebrahimi 2: \x{0d} 1402*22dc650dSSadaf Ebrahimi \r\r\n\n\r 1403*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d} 1404*22dc650dSSadaf Ebrahimi 1: \x{0a} 1405*22dc650dSSadaf Ebrahimi 2: \x{0d} 1406*22dc650dSSadaf Ebrahimi \r\r\n\n\r\n 1407*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d} 1408*22dc650dSSadaf Ebrahimi 1: \x{0a} 1409*22dc650dSSadaf Ebrahimi 2: \x{0d} 1410*22dc650dSSadaf Ebrahimi 1411*22dc650dSSadaf Ebrahimi/[^\x{1234}]+/Ii,utf 1412*22dc650dSSadaf EbrahimiCapture group count = 0 1413*22dc650dSSadaf EbrahimiOptions: caseless utf 1414*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1415*22dc650dSSadaf Ebrahimi 1416*22dc650dSSadaf Ebrahimi/[^\x{1234}]+?/Ii,utf 1417*22dc650dSSadaf EbrahimiCapture group count = 0 1418*22dc650dSSadaf EbrahimiOptions: caseless utf 1419*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1420*22dc650dSSadaf Ebrahimi 1421*22dc650dSSadaf Ebrahimi/[^\x{1234}]++/Ii,utf 1422*22dc650dSSadaf EbrahimiCapture group count = 0 1423*22dc650dSSadaf EbrahimiOptions: caseless utf 1424*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1425*22dc650dSSadaf Ebrahimi 1426*22dc650dSSadaf Ebrahimi/[^\x{1234}]{2}/Ii,utf 1427*22dc650dSSadaf EbrahimiCapture group count = 0 1428*22dc650dSSadaf EbrahimiOptions: caseless utf 1429*22dc650dSSadaf EbrahimiSubject length lower bound = 2 1430*22dc650dSSadaf Ebrahimi 1431*22dc650dSSadaf Ebrahimi/f.*/ 1432*22dc650dSSadaf Ebrahimi for\=ph 1433*22dc650dSSadaf EbrahimiPartial match: for 1434*22dc650dSSadaf Ebrahimi 1435*22dc650dSSadaf Ebrahimi/f.*/s 1436*22dc650dSSadaf Ebrahimi for\=ph 1437*22dc650dSSadaf EbrahimiPartial match: for 1438*22dc650dSSadaf Ebrahimi 1439*22dc650dSSadaf Ebrahimi/f.*/utf 1440*22dc650dSSadaf Ebrahimi for\=ph 1441*22dc650dSSadaf EbrahimiPartial match: for 1442*22dc650dSSadaf Ebrahimi 1443*22dc650dSSadaf Ebrahimi/f.*/s,utf 1444*22dc650dSSadaf Ebrahimi for\=ph 1445*22dc650dSSadaf EbrahimiPartial match: for 1446*22dc650dSSadaf Ebrahimi 1447*22dc650dSSadaf Ebrahimi/\x{d7ff}\x{e000}/utf 1448*22dc650dSSadaf Ebrahimi 1449*22dc650dSSadaf Ebrahimi/\x{d800}/utf 1450*22dc650dSSadaf EbrahimiFailed: error 173 at offset 7: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 1451*22dc650dSSadaf Ebrahimi 1452*22dc650dSSadaf Ebrahimi/\x{dfff}/utf 1453*22dc650dSSadaf EbrahimiFailed: error 173 at offset 7: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 1454*22dc650dSSadaf Ebrahimi 1455*22dc650dSSadaf Ebrahimi/\h+/utf 1456*22dc650dSSadaf Ebrahimi \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000} 1457*22dc650dSSadaf Ebrahimi 0: \x{1680}\x{2000}\x{202f}\x{3000} 1458*22dc650dSSadaf Ebrahimi \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000} 1459*22dc650dSSadaf Ebrahimi 0: \x{200a}\x{a0}\x{2000} 1460*22dc650dSSadaf Ebrahimi 1461*22dc650dSSadaf Ebrahimi/[\h\x{e000}]+/B,utf 1462*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1463*22dc650dSSadaf Ebrahimi Bra 1464*22dc650dSSadaf Ebrahimi [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}\x{e000}]++ 1465*22dc650dSSadaf Ebrahimi Ket 1466*22dc650dSSadaf Ebrahimi End 1467*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1468*22dc650dSSadaf Ebrahimi \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000} 1469*22dc650dSSadaf Ebrahimi 0: \x{1680}\x{2000}\x{202f}\x{3000} 1470*22dc650dSSadaf Ebrahimi \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000} 1471*22dc650dSSadaf Ebrahimi 0: \x{200a}\x{a0}\x{2000} 1472*22dc650dSSadaf Ebrahimi 1473*22dc650dSSadaf Ebrahimi/\H+/utf 1474*22dc650dSSadaf Ebrahimi \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f} 1475*22dc650dSSadaf Ebrahimi 0: \x{167f}\x{1681}\x{180d}\x{180f} 1476*22dc650dSSadaf Ebrahimi \x{2000}\x{200a}\x{1fff}\x{200b} 1477*22dc650dSSadaf Ebrahimi 0: \x{1fff}\x{200b} 1478*22dc650dSSadaf Ebrahimi \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060} 1479*22dc650dSSadaf Ebrahimi 0: \x{202e}\x{2030}\x{205e}\x{2060} 1480*22dc650dSSadaf Ebrahimi \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001} 1481*22dc650dSSadaf Ebrahimi 0: \x{9f}\x{a1}\x{2fff}\x{3001} 1482*22dc650dSSadaf Ebrahimi 1483*22dc650dSSadaf Ebrahimi/[\H\x{d7ff}]+/B,utf 1484*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1485*22dc650dSSadaf Ebrahimi Bra 1486*22dc650dSSadaf Ebrahimi [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}\x{d7ff}]++ 1487*22dc650dSSadaf Ebrahimi Ket 1488*22dc650dSSadaf Ebrahimi End 1489*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1490*22dc650dSSadaf Ebrahimi \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f} 1491*22dc650dSSadaf Ebrahimi 0: \x{167f}\x{1681}\x{180d}\x{180f} 1492*22dc650dSSadaf Ebrahimi \x{2000}\x{200a}\x{1fff}\x{200b} 1493*22dc650dSSadaf Ebrahimi 0: \x{1fff}\x{200b} 1494*22dc650dSSadaf Ebrahimi \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060} 1495*22dc650dSSadaf Ebrahimi 0: \x{202e}\x{2030}\x{205e}\x{2060} 1496*22dc650dSSadaf Ebrahimi \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001} 1497*22dc650dSSadaf Ebrahimi 0: \x{9f}\x{a1}\x{2fff}\x{3001} 1498*22dc650dSSadaf Ebrahimi 1499*22dc650dSSadaf Ebrahimi/\v+/utf 1500*22dc650dSSadaf Ebrahimi \x{2027}\x{2030}\x{2028}\x{2029} 1501*22dc650dSSadaf Ebrahimi 0: \x{2028}\x{2029} 1502*22dc650dSSadaf Ebrahimi \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d 1503*22dc650dSSadaf Ebrahimi 0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d} 1504*22dc650dSSadaf Ebrahimi 1505*22dc650dSSadaf Ebrahimi/[\v\x{e000}]+/B,utf 1506*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1507*22dc650dSSadaf Ebrahimi Bra 1508*22dc650dSSadaf Ebrahimi [\x0a-\x0d\x85\x{2028}-\x{2029}\x{e000}]++ 1509*22dc650dSSadaf Ebrahimi Ket 1510*22dc650dSSadaf Ebrahimi End 1511*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1512*22dc650dSSadaf Ebrahimi \x{2027}\x{2030}\x{2028}\x{2029} 1513*22dc650dSSadaf Ebrahimi 0: \x{2028}\x{2029} 1514*22dc650dSSadaf Ebrahimi \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d 1515*22dc650dSSadaf Ebrahimi 0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d} 1516*22dc650dSSadaf Ebrahimi 1517*22dc650dSSadaf Ebrahimi/\V+/utf 1518*22dc650dSSadaf Ebrahimi \x{2028}\x{2029}\x{2027}\x{2030} 1519*22dc650dSSadaf Ebrahimi 0: \x{2027}\x{2030} 1520*22dc650dSSadaf Ebrahimi \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86} 1521*22dc650dSSadaf Ebrahimi 0: \x{09}\x{0e}\x{84}\x{86} 1522*22dc650dSSadaf Ebrahimi 1523*22dc650dSSadaf Ebrahimi/[\V\x{d7ff}]+/B,utf 1524*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1525*22dc650dSSadaf Ebrahimi Bra 1526*22dc650dSSadaf Ebrahimi [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{202a}-\x{10ffff}\x{d7ff}]++ 1527*22dc650dSSadaf Ebrahimi Ket 1528*22dc650dSSadaf Ebrahimi End 1529*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1530*22dc650dSSadaf Ebrahimi \x{2028}\x{2029}\x{2027}\x{2030} 1531*22dc650dSSadaf Ebrahimi 0: \x{2027}\x{2030} 1532*22dc650dSSadaf Ebrahimi \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86} 1533*22dc650dSSadaf Ebrahimi 0: \x{09}\x{0e}\x{84}\x{86} 1534*22dc650dSSadaf Ebrahimi 1535*22dc650dSSadaf Ebrahimi/\R+/bsr=unicode,utf 1536*22dc650dSSadaf Ebrahimi \x{2027}\x{2030}\x{2028}\x{2029} 1537*22dc650dSSadaf Ebrahimi 0: \x{2028}\x{2029} 1538*22dc650dSSadaf Ebrahimi \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d 1539*22dc650dSSadaf Ebrahimi 0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d} 1540*22dc650dSSadaf Ebrahimi 1541*22dc650dSSadaf Ebrahimi/(..)\1/utf 1542*22dc650dSSadaf Ebrahimi ab\=ps 1543*22dc650dSSadaf EbrahimiPartial match: ab 1544*22dc650dSSadaf Ebrahimi aba\=ps 1545*22dc650dSSadaf EbrahimiPartial match: aba 1546*22dc650dSSadaf Ebrahimi abab\=ps 1547*22dc650dSSadaf Ebrahimi 0: abab 1548*22dc650dSSadaf Ebrahimi 1: ab 1549*22dc650dSSadaf Ebrahimi 1550*22dc650dSSadaf Ebrahimi/(..)\1/i,utf 1551*22dc650dSSadaf Ebrahimi ab\=ps 1552*22dc650dSSadaf EbrahimiPartial match: ab 1553*22dc650dSSadaf Ebrahimi abA\=ps 1554*22dc650dSSadaf EbrahimiPartial match: abA 1555*22dc650dSSadaf Ebrahimi aBAb\=ps 1556*22dc650dSSadaf Ebrahimi 0: aBAb 1557*22dc650dSSadaf Ebrahimi 1: aB 1558*22dc650dSSadaf Ebrahimi 1559*22dc650dSSadaf Ebrahimi/(..)\1{2,}/utf 1560*22dc650dSSadaf Ebrahimi ab\=ps 1561*22dc650dSSadaf EbrahimiPartial match: ab 1562*22dc650dSSadaf Ebrahimi aba\=ps 1563*22dc650dSSadaf EbrahimiPartial match: aba 1564*22dc650dSSadaf Ebrahimi abab\=ps 1565*22dc650dSSadaf EbrahimiPartial match: abab 1566*22dc650dSSadaf Ebrahimi ababa\=ps 1567*22dc650dSSadaf EbrahimiPartial match: ababa 1568*22dc650dSSadaf Ebrahimi ababab\=ps 1569*22dc650dSSadaf Ebrahimi 0: ababab 1570*22dc650dSSadaf Ebrahimi 1: ab 1571*22dc650dSSadaf Ebrahimi ababab\=ph 1572*22dc650dSSadaf EbrahimiPartial match: ababab 1573*22dc650dSSadaf Ebrahimi abababa\=ps 1574*22dc650dSSadaf Ebrahimi 0: ababab 1575*22dc650dSSadaf Ebrahimi 1: ab 1576*22dc650dSSadaf Ebrahimi abababa\=ph 1577*22dc650dSSadaf EbrahimiPartial match: abababa 1578*22dc650dSSadaf Ebrahimi 1579*22dc650dSSadaf Ebrahimi/(..)\1{2,}/i,utf 1580*22dc650dSSadaf Ebrahimi ab\=ps 1581*22dc650dSSadaf EbrahimiPartial match: ab 1582*22dc650dSSadaf Ebrahimi aBa\=ps 1583*22dc650dSSadaf EbrahimiPartial match: aBa 1584*22dc650dSSadaf Ebrahimi aBAb\=ps 1585*22dc650dSSadaf EbrahimiPartial match: aBAb 1586*22dc650dSSadaf Ebrahimi AbaBA\=ps 1587*22dc650dSSadaf EbrahimiPartial match: AbaBA 1588*22dc650dSSadaf Ebrahimi abABAb\=ps 1589*22dc650dSSadaf Ebrahimi 0: abABAb 1590*22dc650dSSadaf Ebrahimi 1: ab 1591*22dc650dSSadaf Ebrahimi aBAbaB\=ph 1592*22dc650dSSadaf EbrahimiPartial match: aBAbaB 1593*22dc650dSSadaf Ebrahimi abABabA\=ps 1594*22dc650dSSadaf Ebrahimi 0: abABab 1595*22dc650dSSadaf Ebrahimi 1: ab 1596*22dc650dSSadaf Ebrahimi abaBABa\=ph 1597*22dc650dSSadaf EbrahimiPartial match: abaBABa 1598*22dc650dSSadaf Ebrahimi 1599*22dc650dSSadaf Ebrahimi/(..)\1{2,}?x/i,utf 1600*22dc650dSSadaf Ebrahimi ab\=ps 1601*22dc650dSSadaf EbrahimiPartial match: ab 1602*22dc650dSSadaf Ebrahimi abA\=ps 1603*22dc650dSSadaf EbrahimiPartial match: abA 1604*22dc650dSSadaf Ebrahimi aBAb\=ps 1605*22dc650dSSadaf EbrahimiPartial match: aBAb 1606*22dc650dSSadaf Ebrahimi abaBA\=ps 1607*22dc650dSSadaf EbrahimiPartial match: abaBA 1608*22dc650dSSadaf Ebrahimi abAbaB\=ps 1609*22dc650dSSadaf EbrahimiPartial match: abAbaB 1610*22dc650dSSadaf Ebrahimi abaBabA\=ps 1611*22dc650dSSadaf EbrahimiPartial match: abaBabA 1612*22dc650dSSadaf Ebrahimi abAbABaBx\=ps 1613*22dc650dSSadaf Ebrahimi 0: abAbABaBx 1614*22dc650dSSadaf Ebrahimi 1: ab 1615*22dc650dSSadaf Ebrahimi 1616*22dc650dSSadaf Ebrahimi/./utf,newline=crlf 1617*22dc650dSSadaf Ebrahimi \r\=ps 1618*22dc650dSSadaf Ebrahimi 0: \x{0d} 1619*22dc650dSSadaf Ebrahimi \r\=ph 1620*22dc650dSSadaf EbrahimiPartial match: \x{0d} 1621*22dc650dSSadaf Ebrahimi 1622*22dc650dSSadaf Ebrahimi/.{2,3}/utf,newline=crlf 1623*22dc650dSSadaf Ebrahimi \r\=ps 1624*22dc650dSSadaf EbrahimiPartial match: \x{0d} 1625*22dc650dSSadaf Ebrahimi \r\=ph 1626*22dc650dSSadaf EbrahimiPartial match: \x{0d} 1627*22dc650dSSadaf Ebrahimi \r\r\=ps 1628*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d} 1629*22dc650dSSadaf Ebrahimi \r\r\=ph 1630*22dc650dSSadaf EbrahimiPartial match: \x{0d}\x{0d} 1631*22dc650dSSadaf Ebrahimi \r\r\r\=ps 1632*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d}\x{0d} 1633*22dc650dSSadaf Ebrahimi \r\r\r\=ph 1634*22dc650dSSadaf EbrahimiPartial match: \x{0d}\x{0d}\x{0d} 1635*22dc650dSSadaf Ebrahimi 1636*22dc650dSSadaf Ebrahimi/.{2,3}?/utf,newline=crlf 1637*22dc650dSSadaf Ebrahimi \r\=ps 1638*22dc650dSSadaf EbrahimiPartial match: \x{0d} 1639*22dc650dSSadaf Ebrahimi \r\=ph 1640*22dc650dSSadaf EbrahimiPartial match: \x{0d} 1641*22dc650dSSadaf Ebrahimi \r\r\=ps 1642*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d} 1643*22dc650dSSadaf Ebrahimi \r\r\=ph 1644*22dc650dSSadaf EbrahimiPartial match: \x{0d}\x{0d} 1645*22dc650dSSadaf Ebrahimi \r\r\r\=ps 1646*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d} 1647*22dc650dSSadaf Ebrahimi \r\r\r\=ph 1648*22dc650dSSadaf Ebrahimi 0: \x{0d}\x{0d} 1649*22dc650dSSadaf Ebrahimi 1650*22dc650dSSadaf Ebrahimi/[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/B,utf 1651*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1652*22dc650dSSadaf Ebrahimi Bra 1653*22dc650dSSadaf Ebrahimi [^\x{100}] 1654*22dc650dSSadaf Ebrahimi [^\x{1234}] 1655*22dc650dSSadaf Ebrahimi [^\x{ffff}] 1656*22dc650dSSadaf Ebrahimi [^\x{10000}] 1657*22dc650dSSadaf Ebrahimi [^\x{10ffff}] 1658*22dc650dSSadaf Ebrahimi Ket 1659*22dc650dSSadaf Ebrahimi End 1660*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1661*22dc650dSSadaf Ebrahimi 1662*22dc650dSSadaf Ebrahimi/[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/Bi,utf 1663*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1664*22dc650dSSadaf Ebrahimi Bra 1665*22dc650dSSadaf Ebrahimi /i [^\x{100}] 1666*22dc650dSSadaf Ebrahimi /i [^\x{1234}] 1667*22dc650dSSadaf Ebrahimi /i [^\x{ffff}] 1668*22dc650dSSadaf Ebrahimi /i [^\x{10000}] 1669*22dc650dSSadaf Ebrahimi /i [^\x{10ffff}] 1670*22dc650dSSadaf Ebrahimi Ket 1671*22dc650dSSadaf Ebrahimi End 1672*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1673*22dc650dSSadaf Ebrahimi 1674*22dc650dSSadaf Ebrahimi/[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/B,utf 1675*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1676*22dc650dSSadaf Ebrahimi Bra 1677*22dc650dSSadaf Ebrahimi [^\x{100}]* 1678*22dc650dSSadaf Ebrahimi [^\x{10000}]+ 1679*22dc650dSSadaf Ebrahimi [^\x{10ffff}]?? 1680*22dc650dSSadaf Ebrahimi [^\x{8000}]{4} 1681*22dc650dSSadaf Ebrahimi [^\x{8000}]* 1682*22dc650dSSadaf Ebrahimi [^\x{7fff}]{2} 1683*22dc650dSSadaf Ebrahimi [^\x{7fff}]{0,7}? 1684*22dc650dSSadaf Ebrahimi [^\x{fffff}]{5} 1685*22dc650dSSadaf Ebrahimi [^\x{fffff}]?+ 1686*22dc650dSSadaf Ebrahimi Ket 1687*22dc650dSSadaf Ebrahimi End 1688*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1689*22dc650dSSadaf Ebrahimi 1690*22dc650dSSadaf Ebrahimi/[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/Bi,utf 1691*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1692*22dc650dSSadaf Ebrahimi Bra 1693*22dc650dSSadaf Ebrahimi /i [^\x{100}]* 1694*22dc650dSSadaf Ebrahimi /i [^\x{10000}]+ 1695*22dc650dSSadaf Ebrahimi /i [^\x{10ffff}]?? 1696*22dc650dSSadaf Ebrahimi /i [^\x{8000}]{4} 1697*22dc650dSSadaf Ebrahimi /i [^\x{8000}]* 1698*22dc650dSSadaf Ebrahimi /i [^\x{7fff}]{2} 1699*22dc650dSSadaf Ebrahimi /i [^\x{7fff}]{0,7}? 1700*22dc650dSSadaf Ebrahimi /i [^\x{fffff}]{5} 1701*22dc650dSSadaf Ebrahimi /i [^\x{fffff}]?+ 1702*22dc650dSSadaf Ebrahimi Ket 1703*22dc650dSSadaf Ebrahimi End 1704*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1705*22dc650dSSadaf Ebrahimi 1706*22dc650dSSadaf Ebrahimi/(?<=\x{1234}\x{1234})\bxy/I,utf 1707*22dc650dSSadaf EbrahimiCapture group count = 0 1708*22dc650dSSadaf EbrahimiMax lookbehind = 2 1709*22dc650dSSadaf EbrahimiOptions: utf 1710*22dc650dSSadaf EbrahimiFirst code unit = 'x' 1711*22dc650dSSadaf EbrahimiLast code unit = 'y' 1712*22dc650dSSadaf EbrahimiSubject length lower bound = 2 1713*22dc650dSSadaf Ebrahimi 1714*22dc650dSSadaf Ebrahimi/(?<!^)ETA/utf 1715*22dc650dSSadaf Ebrahimi\= Expect no match 1716*22dc650dSSadaf Ebrahimi ETA 1717*22dc650dSSadaf EbrahimiNo match 1718*22dc650dSSadaf Ebrahimi 1719*22dc650dSSadaf Ebrahimi/\u0100/B,utf,alt_bsux,allow_empty_class,match_unset_backref 1720*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1721*22dc650dSSadaf Ebrahimi Bra 1722*22dc650dSSadaf Ebrahimi \x{100} 1723*22dc650dSSadaf Ebrahimi Ket 1724*22dc650dSSadaf Ebrahimi End 1725*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1726*22dc650dSSadaf Ebrahimi 1727*22dc650dSSadaf Ebrahimi/[\u0100-\u0200]/B,utf,alt_bsux,allow_empty_class,match_unset_backref 1728*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1729*22dc650dSSadaf Ebrahimi Bra 1730*22dc650dSSadaf Ebrahimi [\x{100}-\x{200}] 1731*22dc650dSSadaf Ebrahimi Ket 1732*22dc650dSSadaf Ebrahimi End 1733*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1734*22dc650dSSadaf Ebrahimi 1735*22dc650dSSadaf Ebrahimi/\ud800/utf,alt_bsux,allow_empty_class,match_unset_backref 1736*22dc650dSSadaf EbrahimiFailed: error 173 at offset 6: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) 1737*22dc650dSSadaf Ebrahimi 1738*22dc650dSSadaf Ebrahimi/^\u{0000000000010ffff}/utf,extra_alt_bsux 1739*22dc650dSSadaf Ebrahimi \x{10ffff} 1740*22dc650dSSadaf Ebrahimi 0: \x{10ffff} 1741*22dc650dSSadaf Ebrahimi 1742*22dc650dSSadaf Ebrahimi/\u{ 1bb1}/utf,extra_alt_bsux 1743*22dc650dSSadaf Ebrahimi u{ 1bb1} 1744*22dc650dSSadaf Ebrahimi 0: u{ 1bb1} 1745*22dc650dSSadaf Ebrahimi\= Expect no match 1746*22dc650dSSadaf Ebrahimi \x{1bb1} 1747*22dc650dSSadaf EbrahimiNo match 1748*22dc650dSSadaf Ebrahimi 1749*22dc650dSSadaf Ebrahimi/\u/utf,alt_bsux 1750*22dc650dSSadaf Ebrahimi \\u 1751*22dc650dSSadaf Ebrahimi 0: u 1752*22dc650dSSadaf Ebrahimi 1753*22dc650dSSadaf Ebrahimi/^a+[a\x{200}]/B,utf 1754*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1755*22dc650dSSadaf Ebrahimi Bra 1756*22dc650dSSadaf Ebrahimi ^ 1757*22dc650dSSadaf Ebrahimi a+ 1758*22dc650dSSadaf Ebrahimi [a\x{200}] 1759*22dc650dSSadaf Ebrahimi Ket 1760*22dc650dSSadaf Ebrahimi End 1761*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1762*22dc650dSSadaf Ebrahimi aa 1763*22dc650dSSadaf Ebrahimi 0: aa 1764*22dc650dSSadaf Ebrahimi 1765*22dc650dSSadaf Ebrahimi/[b-d\x{200}-\x{250}]*[ae-h]?#[\x{200}-\x{250}]{0,8}[\x00-\xff]*#[\x{200}-\x{250}]+[a-z]/B,utf 1766*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1767*22dc650dSSadaf Ebrahimi Bra 1768*22dc650dSSadaf Ebrahimi [b-d\x{200}-\x{250}]*+ 1769*22dc650dSSadaf Ebrahimi [ae-h]?+ 1770*22dc650dSSadaf Ebrahimi # 1771*22dc650dSSadaf Ebrahimi [\x{200}-\x{250}]{0,8}+ 1772*22dc650dSSadaf Ebrahimi [\x00-\xff]* 1773*22dc650dSSadaf Ebrahimi # 1774*22dc650dSSadaf Ebrahimi [\x{200}-\x{250}]++ 1775*22dc650dSSadaf Ebrahimi [a-z] 1776*22dc650dSSadaf Ebrahimi Ket 1777*22dc650dSSadaf Ebrahimi End 1778*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1779*22dc650dSSadaf Ebrahimi 1780*22dc650dSSadaf Ebrahimi/[\p{L}]/IB 1781*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1782*22dc650dSSadaf Ebrahimi Bra 1783*22dc650dSSadaf Ebrahimi [\p{L}] 1784*22dc650dSSadaf Ebrahimi Ket 1785*22dc650dSSadaf Ebrahimi End 1786*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1787*22dc650dSSadaf EbrahimiCapture group count = 0 1788*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1789*22dc650dSSadaf Ebrahimi 1790*22dc650dSSadaf Ebrahimi/[\p{^L}]/IB 1791*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1792*22dc650dSSadaf Ebrahimi Bra 1793*22dc650dSSadaf Ebrahimi [\P{L}] 1794*22dc650dSSadaf Ebrahimi Ket 1795*22dc650dSSadaf Ebrahimi End 1796*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1797*22dc650dSSadaf EbrahimiCapture group count = 0 1798*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1799*22dc650dSSadaf Ebrahimi 1800*22dc650dSSadaf Ebrahimi/[\P{L}]/IB 1801*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1802*22dc650dSSadaf Ebrahimi Bra 1803*22dc650dSSadaf Ebrahimi [\P{L}] 1804*22dc650dSSadaf Ebrahimi Ket 1805*22dc650dSSadaf Ebrahimi End 1806*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1807*22dc650dSSadaf EbrahimiCapture group count = 0 1808*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1809*22dc650dSSadaf Ebrahimi 1810*22dc650dSSadaf Ebrahimi/[\P{^L}]/IB 1811*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1812*22dc650dSSadaf Ebrahimi Bra 1813*22dc650dSSadaf Ebrahimi [\p{L}] 1814*22dc650dSSadaf Ebrahimi Ket 1815*22dc650dSSadaf Ebrahimi End 1816*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1817*22dc650dSSadaf EbrahimiCapture group count = 0 1818*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1819*22dc650dSSadaf Ebrahimi 1820*22dc650dSSadaf Ebrahimi/[abc\p{L}\x{0660}]/IB,utf 1821*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1822*22dc650dSSadaf Ebrahimi Bra 1823*22dc650dSSadaf Ebrahimi [a-c\p{L}\x{660}] 1824*22dc650dSSadaf Ebrahimi Ket 1825*22dc650dSSadaf Ebrahimi End 1826*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1827*22dc650dSSadaf EbrahimiCapture group count = 0 1828*22dc650dSSadaf EbrahimiOptions: utf 1829*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1830*22dc650dSSadaf Ebrahimi 1831*22dc650dSSadaf Ebrahimi/[\p{Nd}]/IB,utf 1832*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1833*22dc650dSSadaf Ebrahimi Bra 1834*22dc650dSSadaf Ebrahimi [\p{Nd}] 1835*22dc650dSSadaf Ebrahimi Ket 1836*22dc650dSSadaf Ebrahimi End 1837*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1838*22dc650dSSadaf EbrahimiCapture group count = 0 1839*22dc650dSSadaf EbrahimiOptions: utf 1840*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1841*22dc650dSSadaf Ebrahimi 1234 1842*22dc650dSSadaf Ebrahimi 0: 1 1843*22dc650dSSadaf Ebrahimi 1844*22dc650dSSadaf Ebrahimi/[\p{Nd}+-]+/IB,utf 1845*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1846*22dc650dSSadaf Ebrahimi Bra 1847*22dc650dSSadaf Ebrahimi [+\-\p{Nd}]++ 1848*22dc650dSSadaf Ebrahimi Ket 1849*22dc650dSSadaf Ebrahimi End 1850*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1851*22dc650dSSadaf EbrahimiCapture group count = 0 1852*22dc650dSSadaf EbrahimiOptions: utf 1853*22dc650dSSadaf EbrahimiSubject length lower bound = 1 1854*22dc650dSSadaf Ebrahimi 1234 1855*22dc650dSSadaf Ebrahimi 0: 1234 1856*22dc650dSSadaf Ebrahimi 12-34 1857*22dc650dSSadaf Ebrahimi 0: 12-34 1858*22dc650dSSadaf Ebrahimi 12+\x{661}-34 1859*22dc650dSSadaf Ebrahimi 0: 12+\x{661}-34 1860*22dc650dSSadaf Ebrahimi\= Expect no match 1861*22dc650dSSadaf Ebrahimi abcd 1862*22dc650dSSadaf EbrahimiNo match 1863*22dc650dSSadaf Ebrahimi 1864*22dc650dSSadaf Ebrahimi/(?:[\PPa*]*){8,}/ 1865*22dc650dSSadaf Ebrahimi 1866*22dc650dSSadaf Ebrahimi/[\P{Any}]/B 1867*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1868*22dc650dSSadaf Ebrahimi Bra 1869*22dc650dSSadaf Ebrahimi [\P{Any}] 1870*22dc650dSSadaf Ebrahimi Ket 1871*22dc650dSSadaf Ebrahimi End 1872*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1873*22dc650dSSadaf Ebrahimi 1874*22dc650dSSadaf Ebrahimi/[\P{Any}\E]/B 1875*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1876*22dc650dSSadaf Ebrahimi Bra 1877*22dc650dSSadaf Ebrahimi [\P{Any}] 1878*22dc650dSSadaf Ebrahimi Ket 1879*22dc650dSSadaf Ebrahimi End 1880*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1881*22dc650dSSadaf Ebrahimi 1882*22dc650dSSadaf Ebrahimi/(\P{Yi}+\277)/ 1883*22dc650dSSadaf Ebrahimi 1884*22dc650dSSadaf Ebrahimi/(\P{Yi}+\277)?/ 1885*22dc650dSSadaf Ebrahimi 1886*22dc650dSSadaf Ebrahimi/(?<=\P{Yi}{3}A)X/ 1887*22dc650dSSadaf Ebrahimi 1888*22dc650dSSadaf Ebrahimi/\p{Yi}+(\P{Yi}+)(?1)/ 1889*22dc650dSSadaf Ebrahimi 1890*22dc650dSSadaf Ebrahimi/(\P{Yi}{2}\277)?/ 1891*22dc650dSSadaf Ebrahimi 1892*22dc650dSSadaf Ebrahimi/[\P{Yi}A]/ 1893*22dc650dSSadaf Ebrahimi 1894*22dc650dSSadaf Ebrahimi/[\P{Yi}\P{Yi}\P{Yi}A]/ 1895*22dc650dSSadaf Ebrahimi 1896*22dc650dSSadaf Ebrahimi/[^\P{Yi}A]/ 1897*22dc650dSSadaf Ebrahimi 1898*22dc650dSSadaf Ebrahimi/[^\P{Yi}\P{Yi}\P{Yi}A]/ 1899*22dc650dSSadaf Ebrahimi 1900*22dc650dSSadaf Ebrahimi/(\P{Yi}*\277)*/ 1901*22dc650dSSadaf Ebrahimi 1902*22dc650dSSadaf Ebrahimi/(\P{Yi}*?\277)*/ 1903*22dc650dSSadaf Ebrahimi 1904*22dc650dSSadaf Ebrahimi/(\p{Yi}*+\277)*/ 1905*22dc650dSSadaf Ebrahimi 1906*22dc650dSSadaf Ebrahimi/(\P{Yi}?\277)*/ 1907*22dc650dSSadaf Ebrahimi 1908*22dc650dSSadaf Ebrahimi/(\P{Yi}??\277)*/ 1909*22dc650dSSadaf Ebrahimi 1910*22dc650dSSadaf Ebrahimi/(\p{Yi}?+\277)*/ 1911*22dc650dSSadaf Ebrahimi 1912*22dc650dSSadaf Ebrahimi/(\P{Yi}{0,3}\277)*/ 1913*22dc650dSSadaf Ebrahimi 1914*22dc650dSSadaf Ebrahimi/(\P{Yi}{0,3}?\277)*/ 1915*22dc650dSSadaf Ebrahimi 1916*22dc650dSSadaf Ebrahimi/(\p{Yi}{0,3}+\277)*/ 1917*22dc650dSSadaf Ebrahimi 1918*22dc650dSSadaf Ebrahimi/\p{Zl}{2,3}+/B,utf 1919*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1920*22dc650dSSadaf Ebrahimi Bra 1921*22dc650dSSadaf Ebrahimi prop Zl {2} 1922*22dc650dSSadaf Ebrahimi prop Zl ?+ 1923*22dc650dSSadaf Ebrahimi Ket 1924*22dc650dSSadaf Ebrahimi End 1925*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1926*22dc650dSSadaf Ebrahimi 1927*22dc650dSSadaf Ebrahimi 0: \x{2028}\x{2028} 1928*22dc650dSSadaf Ebrahimi \x{2028}\x{2028}\x{2028} 1929*22dc650dSSadaf Ebrahimi 0: \x{2028}\x{2028}\x{2028} 1930*22dc650dSSadaf Ebrahimi 1931*22dc650dSSadaf Ebrahimi/\p{Zl}/B,utf 1932*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1933*22dc650dSSadaf Ebrahimi Bra 1934*22dc650dSSadaf Ebrahimi prop Zl 1935*22dc650dSSadaf Ebrahimi Ket 1936*22dc650dSSadaf Ebrahimi End 1937*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1938*22dc650dSSadaf Ebrahimi 1939*22dc650dSSadaf Ebrahimi/\p{Lu}{3}+/B,utf 1940*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1941*22dc650dSSadaf Ebrahimi Bra 1942*22dc650dSSadaf Ebrahimi prop Lu {3} 1943*22dc650dSSadaf Ebrahimi Ket 1944*22dc650dSSadaf Ebrahimi End 1945*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1946*22dc650dSSadaf Ebrahimi 1947*22dc650dSSadaf Ebrahimi/\pL{2}+/B,utf 1948*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1949*22dc650dSSadaf Ebrahimi Bra 1950*22dc650dSSadaf Ebrahimi prop L {2} 1951*22dc650dSSadaf Ebrahimi Ket 1952*22dc650dSSadaf Ebrahimi End 1953*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1954*22dc650dSSadaf Ebrahimi 1955*22dc650dSSadaf Ebrahimi/\p{Cc}{2}+/B,utf 1956*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1957*22dc650dSSadaf Ebrahimi Bra 1958*22dc650dSSadaf Ebrahimi prop Cc {2} 1959*22dc650dSSadaf Ebrahimi Ket 1960*22dc650dSSadaf Ebrahimi End 1961*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 1962*22dc650dSSadaf Ebrahimi 1963*22dc650dSSadaf Ebrahimi/^\p{Cf}/utf 1964*22dc650dSSadaf Ebrahimi \x{180e} 1965*22dc650dSSadaf Ebrahimi 0: \x{180e} 1966*22dc650dSSadaf Ebrahimi \x{061c} 1967*22dc650dSSadaf Ebrahimi 0: \x{61c} 1968*22dc650dSSadaf Ebrahimi \x{2066} 1969*22dc650dSSadaf Ebrahimi 0: \x{2066} 1970*22dc650dSSadaf Ebrahimi \x{2067} 1971*22dc650dSSadaf Ebrahimi 0: \x{2067} 1972*22dc650dSSadaf Ebrahimi \x{2068} 1973*22dc650dSSadaf Ebrahimi 0: \x{2068} 1974*22dc650dSSadaf Ebrahimi \x{2069} 1975*22dc650dSSadaf Ebrahimi 0: \x{2069} 1976*22dc650dSSadaf Ebrahimi 1977*22dc650dSSadaf Ebrahimi/^\p{Cs}/utf 1978*22dc650dSSadaf Ebrahimi \x{dfff}\=no_utf_check 1979*22dc650dSSadaf Ebrahimi 0: \x{dfff} 1980*22dc650dSSadaf Ebrahimi\= Expect no match 1981*22dc650dSSadaf Ebrahimi \x{09f} 1982*22dc650dSSadaf EbrahimiNo match 1983*22dc650dSSadaf Ebrahimi 1984*22dc650dSSadaf Ebrahimi/^\p{Mn}/utf 1985*22dc650dSSadaf Ebrahimi \x{1a1b} 1986*22dc650dSSadaf Ebrahimi 0: \x{1a1b} 1987*22dc650dSSadaf Ebrahimi 1988*22dc650dSSadaf Ebrahimi/^\p{Pe}/utf 1989*22dc650dSSadaf Ebrahimi \x{2309} 1990*22dc650dSSadaf Ebrahimi 0: \x{2309} 1991*22dc650dSSadaf Ebrahimi \x{230b} 1992*22dc650dSSadaf Ebrahimi 0: \x{230b} 1993*22dc650dSSadaf Ebrahimi 1994*22dc650dSSadaf Ebrahimi/^\p{Ps}/utf 1995*22dc650dSSadaf Ebrahimi \x{2308} 1996*22dc650dSSadaf Ebrahimi 0: \x{2308} 1997*22dc650dSSadaf Ebrahimi \x{230a} 1998*22dc650dSSadaf Ebrahimi 0: \x{230a} 1999*22dc650dSSadaf Ebrahimi 2000*22dc650dSSadaf Ebrahimi/^\p{Sc}+/utf 2001*22dc650dSSadaf Ebrahimi $\x{a2}\x{a3}\x{a4}\x{a5}\x{a6} 2002*22dc650dSSadaf Ebrahimi 0: $\x{a2}\x{a3}\x{a4}\x{a5} 2003*22dc650dSSadaf Ebrahimi \x{9f2} 2004*22dc650dSSadaf Ebrahimi 0: \x{9f2} 2005*22dc650dSSadaf Ebrahimi\= Expect no match 2006*22dc650dSSadaf Ebrahimi X 2007*22dc650dSSadaf EbrahimiNo match 2008*22dc650dSSadaf Ebrahimi \x{2c2} 2009*22dc650dSSadaf EbrahimiNo match 2010*22dc650dSSadaf Ebrahimi 2011*22dc650dSSadaf Ebrahimi/^\p{Zs}/utf 2012*22dc650dSSadaf Ebrahimi \ \ 2013*22dc650dSSadaf Ebrahimi 0: 2014*22dc650dSSadaf Ebrahimi \x{a0} 2015*22dc650dSSadaf Ebrahimi 0: \x{a0} 2016*22dc650dSSadaf Ebrahimi \x{1680} 2017*22dc650dSSadaf Ebrahimi 0: \x{1680} 2018*22dc650dSSadaf Ebrahimi \x{2000} 2019*22dc650dSSadaf Ebrahimi 0: \x{2000} 2020*22dc650dSSadaf Ebrahimi \x{2001} 2021*22dc650dSSadaf Ebrahimi 0: \x{2001} 2022*22dc650dSSadaf Ebrahimi\= Expect no match 2023*22dc650dSSadaf Ebrahimi \x{2028} 2024*22dc650dSSadaf EbrahimiNo match 2025*22dc650dSSadaf Ebrahimi \x{200d} 2026*22dc650dSSadaf EbrahimiNo match 2027*22dc650dSSadaf Ebrahimi 2028*22dc650dSSadaf Ebrahimi# These are here because Perl has problems with the negative versions of the 2029*22dc650dSSadaf Ebrahimi# properties and has changed how it behaves for caseless matching. 2030*22dc650dSSadaf Ebrahimi 2031*22dc650dSSadaf Ebrahimi/\p{^Lu}/i,utf 2032*22dc650dSSadaf Ebrahimi 1234 2033*22dc650dSSadaf Ebrahimi 0: 1 2034*22dc650dSSadaf Ebrahimi\= Expect no match 2035*22dc650dSSadaf Ebrahimi ABC 2036*22dc650dSSadaf EbrahimiNo match 2037*22dc650dSSadaf Ebrahimi 2038*22dc650dSSadaf Ebrahimi/\P{Lu}/i,utf 2039*22dc650dSSadaf Ebrahimi 1234 2040*22dc650dSSadaf Ebrahimi 0: 1 2041*22dc650dSSadaf Ebrahimi\= Expect no match 2042*22dc650dSSadaf Ebrahimi ABC 2043*22dc650dSSadaf EbrahimiNo match 2044*22dc650dSSadaf Ebrahimi 2045*22dc650dSSadaf Ebrahimi/\p{Ll}/i,utf 2046*22dc650dSSadaf Ebrahimi a 2047*22dc650dSSadaf Ebrahimi 0: a 2048*22dc650dSSadaf Ebrahimi Az 2049*22dc650dSSadaf Ebrahimi 0: z 2050*22dc650dSSadaf Ebrahimi\= Expect no match 2051*22dc650dSSadaf Ebrahimi ABC 2052*22dc650dSSadaf EbrahimiNo match 2053*22dc650dSSadaf Ebrahimi 2054*22dc650dSSadaf Ebrahimi/\p{Lu}/i,utf 2055*22dc650dSSadaf Ebrahimi A 2056*22dc650dSSadaf Ebrahimi 0: A 2057*22dc650dSSadaf Ebrahimi a\x{10a0}B 2058*22dc650dSSadaf Ebrahimi 0: \x{10a0} 2059*22dc650dSSadaf Ebrahimi\= Expect no match 2060*22dc650dSSadaf Ebrahimi a 2061*22dc650dSSadaf EbrahimiNo match 2062*22dc650dSSadaf Ebrahimi \x{1d00} 2063*22dc650dSSadaf EbrahimiNo match 2064*22dc650dSSadaf Ebrahimi 2065*22dc650dSSadaf Ebrahimi/\p{Lu}/i,utf 2066*22dc650dSSadaf Ebrahimi A 2067*22dc650dSSadaf Ebrahimi 0: A 2068*22dc650dSSadaf Ebrahimi aZ 2069*22dc650dSSadaf Ebrahimi 0: Z 2070*22dc650dSSadaf Ebrahimi\= Expect no match 2071*22dc650dSSadaf Ebrahimi abc 2072*22dc650dSSadaf EbrahimiNo match 2073*22dc650dSSadaf Ebrahimi 2074*22dc650dSSadaf Ebrahimi/[\x{c0}\x{391}]/i,utf 2075*22dc650dSSadaf Ebrahimi \x{c0} 2076*22dc650dSSadaf Ebrahimi 0: \x{c0} 2077*22dc650dSSadaf Ebrahimi \x{e0} 2078*22dc650dSSadaf Ebrahimi 0: \x{e0} 2079*22dc650dSSadaf Ebrahimi 2080*22dc650dSSadaf Ebrahimi# The next two are special cases where the lengths of the different cases of 2081*22dc650dSSadaf Ebrahimi# the same character differ. The first went wrong with heap frame storage; the 2082*22dc650dSSadaf Ebrahimi# second was broken in all cases. 2083*22dc650dSSadaf Ebrahimi 2084*22dc650dSSadaf Ebrahimi/^\x{023a}+?(\x{0130}+)/i,utf 2085*22dc650dSSadaf Ebrahimi \x{023a}\x{2c65}\x{0130} 2086*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{2c65}\x{130} 2087*22dc650dSSadaf Ebrahimi 1: \x{130} 2088*22dc650dSSadaf Ebrahimi 2089*22dc650dSSadaf Ebrahimi/^\x{023a}+([^X])/i,utf 2090*22dc650dSSadaf Ebrahimi \x{023a}\x{2c65}X 2091*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{2c65} 2092*22dc650dSSadaf Ebrahimi 1: \x{2c65} 2093*22dc650dSSadaf Ebrahimi 2094*22dc650dSSadaf Ebrahimi/\x{c0}+\x{116}+/i,utf 2095*22dc650dSSadaf Ebrahimi \x{c0}\x{e0}\x{116}\x{117} 2096*22dc650dSSadaf Ebrahimi 0: \x{c0}\x{e0}\x{116}\x{117} 2097*22dc650dSSadaf Ebrahimi 2098*22dc650dSSadaf Ebrahimi/[\x{c0}\x{116}]+/i,utf 2099*22dc650dSSadaf Ebrahimi \x{c0}\x{e0}\x{116}\x{117} 2100*22dc650dSSadaf Ebrahimi 0: \x{c0}\x{e0}\x{116}\x{117} 2101*22dc650dSSadaf Ebrahimi 2102*22dc650dSSadaf Ebrahimi/(\x{de})\1/i,utf 2103*22dc650dSSadaf Ebrahimi \x{de}\x{de} 2104*22dc650dSSadaf Ebrahimi 0: \x{de}\x{de} 2105*22dc650dSSadaf Ebrahimi 1: \x{de} 2106*22dc650dSSadaf Ebrahimi \x{de}\x{fe} 2107*22dc650dSSadaf Ebrahimi 0: \x{de}\x{fe} 2108*22dc650dSSadaf Ebrahimi 1: \x{de} 2109*22dc650dSSadaf Ebrahimi \x{fe}\x{fe} 2110*22dc650dSSadaf Ebrahimi 0: \x{fe}\x{fe} 2111*22dc650dSSadaf Ebrahimi 1: \x{fe} 2112*22dc650dSSadaf Ebrahimi \x{fe}\x{de} 2113*22dc650dSSadaf Ebrahimi 0: \x{fe}\x{de} 2114*22dc650dSSadaf Ebrahimi 1: \x{fe} 2115*22dc650dSSadaf Ebrahimi 2116*22dc650dSSadaf Ebrahimi/^\x{c0}$/i,utf 2117*22dc650dSSadaf Ebrahimi \x{c0} 2118*22dc650dSSadaf Ebrahimi 0: \x{c0} 2119*22dc650dSSadaf Ebrahimi \x{e0} 2120*22dc650dSSadaf Ebrahimi 0: \x{e0} 2121*22dc650dSSadaf Ebrahimi 2122*22dc650dSSadaf Ebrahimi/^\x{e0}$/i,utf 2123*22dc650dSSadaf Ebrahimi \x{c0} 2124*22dc650dSSadaf Ebrahimi 0: \x{c0} 2125*22dc650dSSadaf Ebrahimi \x{e0} 2126*22dc650dSSadaf Ebrahimi 0: \x{e0} 2127*22dc650dSSadaf Ebrahimi 2128*22dc650dSSadaf Ebrahimi# The next two should be Perl-compatible, but it fails to match \x{e0}. PCRE 2129*22dc650dSSadaf Ebrahimi# will match it only with UCP support, because without that it has no notion 2130*22dc650dSSadaf Ebrahimi# of case for anything other than the ASCII letters. 2131*22dc650dSSadaf Ebrahimi 2132*22dc650dSSadaf Ebrahimi/((?i)[\x{c0}])/utf 2133*22dc650dSSadaf Ebrahimi \x{c0} 2134*22dc650dSSadaf Ebrahimi 0: \x{c0} 2135*22dc650dSSadaf Ebrahimi 1: \x{c0} 2136*22dc650dSSadaf Ebrahimi \x{e0} 2137*22dc650dSSadaf Ebrahimi 0: \x{e0} 2138*22dc650dSSadaf Ebrahimi 1: \x{e0} 2139*22dc650dSSadaf Ebrahimi 2140*22dc650dSSadaf Ebrahimi/(?i:[\x{c0}])/utf 2141*22dc650dSSadaf Ebrahimi \x{c0} 2142*22dc650dSSadaf Ebrahimi 0: \x{c0} 2143*22dc650dSSadaf Ebrahimi \x{e0} 2144*22dc650dSSadaf Ebrahimi 0: \x{e0} 2145*22dc650dSSadaf Ebrahimi 2146*22dc650dSSadaf Ebrahimi# These are PCRE's extra properties to help with Unicodizing \d etc. 2147*22dc650dSSadaf Ebrahimi 2148*22dc650dSSadaf Ebrahimi/^\p{Xan}/utf 2149*22dc650dSSadaf Ebrahimi ABCD 2150*22dc650dSSadaf Ebrahimi 0: A 2151*22dc650dSSadaf Ebrahimi 1234 2152*22dc650dSSadaf Ebrahimi 0: 1 2153*22dc650dSSadaf Ebrahimi \x{6ca} 2154*22dc650dSSadaf Ebrahimi 0: \x{6ca} 2155*22dc650dSSadaf Ebrahimi \x{a6c} 2156*22dc650dSSadaf Ebrahimi 0: \x{a6c} 2157*22dc650dSSadaf Ebrahimi \x{10a7} 2158*22dc650dSSadaf Ebrahimi 0: \x{10a7} 2159*22dc650dSSadaf Ebrahimi\= Expect no match 2160*22dc650dSSadaf Ebrahimi _ABC 2161*22dc650dSSadaf EbrahimiNo match 2162*22dc650dSSadaf Ebrahimi 2163*22dc650dSSadaf Ebrahimi/^\p{Xan}+/utf 2164*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2165*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca}\x{a6c}\x{10a7} 2166*22dc650dSSadaf Ebrahimi\= Expect no match 2167*22dc650dSSadaf Ebrahimi _ABC 2168*22dc650dSSadaf EbrahimiNo match 2169*22dc650dSSadaf Ebrahimi 2170*22dc650dSSadaf Ebrahimi/^\p{Xan}+?/utf 2171*22dc650dSSadaf Ebrahimi \x{6ca}\x{a6c}\x{10a7}_ 2172*22dc650dSSadaf Ebrahimi 0: \x{6ca} 2173*22dc650dSSadaf Ebrahimi 2174*22dc650dSSadaf Ebrahimi/^\p{Xan}*/utf 2175*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2176*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca}\x{a6c}\x{10a7} 2177*22dc650dSSadaf Ebrahimi 2178*22dc650dSSadaf Ebrahimi/^\p{Xan}{2,9}/utf 2179*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2180*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca} 2181*22dc650dSSadaf Ebrahimi 2182*22dc650dSSadaf Ebrahimi/^\p{Xan}{2,9}?/utf 2183*22dc650dSSadaf Ebrahimi \x{6ca}\x{a6c}\x{10a7}_ 2184*22dc650dSSadaf Ebrahimi 0: \x{6ca}\x{a6c} 2185*22dc650dSSadaf Ebrahimi 2186*22dc650dSSadaf Ebrahimi/^[\p{Xan}]/utf 2187*22dc650dSSadaf Ebrahimi ABCD1234_ 2188*22dc650dSSadaf Ebrahimi 0: A 2189*22dc650dSSadaf Ebrahimi 1234abcd_ 2190*22dc650dSSadaf Ebrahimi 0: 1 2191*22dc650dSSadaf Ebrahimi \x{6ca} 2192*22dc650dSSadaf Ebrahimi 0: \x{6ca} 2193*22dc650dSSadaf Ebrahimi \x{a6c} 2194*22dc650dSSadaf Ebrahimi 0: \x{a6c} 2195*22dc650dSSadaf Ebrahimi \x{10a7} 2196*22dc650dSSadaf Ebrahimi 0: \x{10a7} 2197*22dc650dSSadaf Ebrahimi\= Expect no match 2198*22dc650dSSadaf Ebrahimi _ABC 2199*22dc650dSSadaf EbrahimiNo match 2200*22dc650dSSadaf Ebrahimi 2201*22dc650dSSadaf Ebrahimi/^[\p{Xan}]+/utf 2202*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2203*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca}\x{a6c}\x{10a7} 2204*22dc650dSSadaf Ebrahimi\= Expect no match 2205*22dc650dSSadaf Ebrahimi _ABC 2206*22dc650dSSadaf EbrahimiNo match 2207*22dc650dSSadaf Ebrahimi 2208*22dc650dSSadaf Ebrahimi/^>\p{Xsp}/utf 2209*22dc650dSSadaf Ebrahimi >\x{1680}\x{2028}\x{0b} 2210*22dc650dSSadaf Ebrahimi 0: >\x{1680} 2211*22dc650dSSadaf Ebrahimi >\x{a0} 2212*22dc650dSSadaf Ebrahimi 0: >\x{a0} 2213*22dc650dSSadaf Ebrahimi\= Expect no match 2214*22dc650dSSadaf Ebrahimi \x{0b} 2215*22dc650dSSadaf EbrahimiNo match 2216*22dc650dSSadaf Ebrahimi 2217*22dc650dSSadaf Ebrahimi/^>\p{Xsp}+/utf 2218*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2219*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2220*22dc650dSSadaf Ebrahimi 2221*22dc650dSSadaf Ebrahimi/^>\p{Xsp}+?/utf 2222*22dc650dSSadaf Ebrahimi >\x{1680}\x{2028}\x{0b} 2223*22dc650dSSadaf Ebrahimi 0: >\x{1680} 2224*22dc650dSSadaf Ebrahimi 2225*22dc650dSSadaf Ebrahimi/^>\p{Xsp}*/utf 2226*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2227*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2228*22dc650dSSadaf Ebrahimi 2229*22dc650dSSadaf Ebrahimi/^>\p{Xsp}{2,9}/utf 2230*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2231*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2232*22dc650dSSadaf Ebrahimi 2233*22dc650dSSadaf Ebrahimi/^>\p{Xsp}{2,9}?/utf 2234*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2235*22dc650dSSadaf Ebrahimi 0: > \x{09} 2236*22dc650dSSadaf Ebrahimi 2237*22dc650dSSadaf Ebrahimi/^>[\p{Xsp}]/utf 2238*22dc650dSSadaf Ebrahimi >\x{2028}\x{0b} 2239*22dc650dSSadaf Ebrahimi 0: >\x{2028} 2240*22dc650dSSadaf Ebrahimi 2241*22dc650dSSadaf Ebrahimi/^>[\p{Xsp}]+/utf 2242*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2243*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2244*22dc650dSSadaf Ebrahimi 2245*22dc650dSSadaf Ebrahimi/^>\p{Xps}/utf 2246*22dc650dSSadaf Ebrahimi >\x{1680}\x{2028}\x{0b} 2247*22dc650dSSadaf Ebrahimi 0: >\x{1680} 2248*22dc650dSSadaf Ebrahimi >\x{a0} 2249*22dc650dSSadaf Ebrahimi 0: >\x{a0} 2250*22dc650dSSadaf Ebrahimi\= Expect no match 2251*22dc650dSSadaf Ebrahimi \x{0b} 2252*22dc650dSSadaf EbrahimiNo match 2253*22dc650dSSadaf Ebrahimi 2254*22dc650dSSadaf Ebrahimi/^>\p{Xps}+/utf 2255*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2256*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2257*22dc650dSSadaf Ebrahimi 2258*22dc650dSSadaf Ebrahimi/^>\p{Xps}+?/utf 2259*22dc650dSSadaf Ebrahimi >\x{1680}\x{2028}\x{0b} 2260*22dc650dSSadaf Ebrahimi 0: >\x{1680} 2261*22dc650dSSadaf Ebrahimi 2262*22dc650dSSadaf Ebrahimi/^>\p{Xps}*/utf 2263*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2264*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2265*22dc650dSSadaf Ebrahimi 2266*22dc650dSSadaf Ebrahimi/^>\p{Xps}{2,9}/utf 2267*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2268*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2269*22dc650dSSadaf Ebrahimi 2270*22dc650dSSadaf Ebrahimi/^>\p{Xps}{2,9}?/utf 2271*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2272*22dc650dSSadaf Ebrahimi 0: > \x{09} 2273*22dc650dSSadaf Ebrahimi 2274*22dc650dSSadaf Ebrahimi/^>[\p{Xps}]/utf 2275*22dc650dSSadaf Ebrahimi >\x{2028}\x{0b} 2276*22dc650dSSadaf Ebrahimi 0: >\x{2028} 2277*22dc650dSSadaf Ebrahimi 2278*22dc650dSSadaf Ebrahimi/^>[\p{Xps}]+/utf 2279*22dc650dSSadaf Ebrahimi > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2280*22dc650dSSadaf Ebrahimi 0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b} 2281*22dc650dSSadaf Ebrahimi 2282*22dc650dSSadaf Ebrahimi/^\p{Xwd}/utf 2283*22dc650dSSadaf Ebrahimi ABCD 2284*22dc650dSSadaf Ebrahimi 0: A 2285*22dc650dSSadaf Ebrahimi 1234 2286*22dc650dSSadaf Ebrahimi 0: 1 2287*22dc650dSSadaf Ebrahimi \x{6ca} 2288*22dc650dSSadaf Ebrahimi 0: \x{6ca} 2289*22dc650dSSadaf Ebrahimi \x{a6c} 2290*22dc650dSSadaf Ebrahimi 0: \x{a6c} 2291*22dc650dSSadaf Ebrahimi \x{10a7} 2292*22dc650dSSadaf Ebrahimi 0: \x{10a7} 2293*22dc650dSSadaf Ebrahimi _ABC 2294*22dc650dSSadaf Ebrahimi 0: _ 2295*22dc650dSSadaf Ebrahimi\= Expect no match 2296*22dc650dSSadaf Ebrahimi [] 2297*22dc650dSSadaf EbrahimiNo match 2298*22dc650dSSadaf Ebrahimi 2299*22dc650dSSadaf Ebrahimi/^\p{Xwd}+/utf 2300*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2301*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2302*22dc650dSSadaf Ebrahimi 2303*22dc650dSSadaf Ebrahimi/^\p{Xwd}+?/utf 2304*22dc650dSSadaf Ebrahimi \x{6ca}\x{a6c}\x{10a7}_ 2305*22dc650dSSadaf Ebrahimi 0: \x{6ca} 2306*22dc650dSSadaf Ebrahimi 2307*22dc650dSSadaf Ebrahimi/^\p{Xwd}*/utf 2308*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2309*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2310*22dc650dSSadaf Ebrahimi 2311*22dc650dSSadaf Ebrahimi/^\p{Xwd}{2,9}/utf 2312*22dc650dSSadaf Ebrahimi A_B12\x{6ca}\x{a6c}\x{10a7} 2313*22dc650dSSadaf Ebrahimi 0: A_B12\x{6ca}\x{a6c}\x{10a7} 2314*22dc650dSSadaf Ebrahimi 2315*22dc650dSSadaf Ebrahimi/^\p{Xwd}{2,9}?/utf 2316*22dc650dSSadaf Ebrahimi \x{6ca}\x{a6c}\x{10a7}_ 2317*22dc650dSSadaf Ebrahimi 0: \x{6ca}\x{a6c} 2318*22dc650dSSadaf Ebrahimi 2319*22dc650dSSadaf Ebrahimi/^[\p{Xwd}]/utf 2320*22dc650dSSadaf Ebrahimi ABCD1234_ 2321*22dc650dSSadaf Ebrahimi 0: A 2322*22dc650dSSadaf Ebrahimi 1234abcd_ 2323*22dc650dSSadaf Ebrahimi 0: 1 2324*22dc650dSSadaf Ebrahimi \x{6ca} 2325*22dc650dSSadaf Ebrahimi 0: \x{6ca} 2326*22dc650dSSadaf Ebrahimi \x{a6c} 2327*22dc650dSSadaf Ebrahimi 0: \x{a6c} 2328*22dc650dSSadaf Ebrahimi \x{10a7} 2329*22dc650dSSadaf Ebrahimi 0: \x{10a7} 2330*22dc650dSSadaf Ebrahimi _ABC 2331*22dc650dSSadaf Ebrahimi 0: _ 2332*22dc650dSSadaf Ebrahimi\= Expect no match 2333*22dc650dSSadaf Ebrahimi [] 2334*22dc650dSSadaf EbrahimiNo match 2335*22dc650dSSadaf Ebrahimi 2336*22dc650dSSadaf Ebrahimi/^[\p{Xwd}]+/utf 2337*22dc650dSSadaf Ebrahimi ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2338*22dc650dSSadaf Ebrahimi 0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_ 2339*22dc650dSSadaf Ebrahimi 2340*22dc650dSSadaf Ebrahimi# A check not in UTF-8 mode 2341*22dc650dSSadaf Ebrahimi 2342*22dc650dSSadaf Ebrahimi/^[\p{Xwd}]+/ 2343*22dc650dSSadaf Ebrahimi ABCD1234_ 2344*22dc650dSSadaf Ebrahimi 0: ABCD1234_ 2345*22dc650dSSadaf Ebrahimi 2346*22dc650dSSadaf Ebrahimi# Some negative checks 2347*22dc650dSSadaf Ebrahimi 2348*22dc650dSSadaf Ebrahimi/^[\P{Xwd}]+/utf 2349*22dc650dSSadaf Ebrahimi !.+\x{019}\x{482}AB 2350*22dc650dSSadaf Ebrahimi 0: !.+\x{19}\x{482} 2351*22dc650dSSadaf Ebrahimi 2352*22dc650dSSadaf Ebrahimi/^[\p{^Xwd}]+/utf 2353*22dc650dSSadaf Ebrahimi !.+\x{019}\x{589}AB 2354*22dc650dSSadaf Ebrahimi 0: !.+\x{19}\x{589} 2355*22dc650dSSadaf Ebrahimi 2356*22dc650dSSadaf Ebrahimi/[\D]/B,utf,ucp 2357*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2358*22dc650dSSadaf Ebrahimi Bra 2359*22dc650dSSadaf Ebrahimi [\P{Nd}] 2360*22dc650dSSadaf Ebrahimi Ket 2361*22dc650dSSadaf Ebrahimi End 2362*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2363*22dc650dSSadaf Ebrahimi 1\x{3c8}2 2364*22dc650dSSadaf Ebrahimi 0: \x{3c8} 2365*22dc650dSSadaf Ebrahimi 2366*22dc650dSSadaf Ebrahimi/[\d]/B,utf,ucp 2367*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2368*22dc650dSSadaf Ebrahimi Bra 2369*22dc650dSSadaf Ebrahimi [\p{Nd}] 2370*22dc650dSSadaf Ebrahimi Ket 2371*22dc650dSSadaf Ebrahimi End 2372*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2373*22dc650dSSadaf Ebrahimi >\x{6f4}< 2374*22dc650dSSadaf Ebrahimi 0: \x{6f4} 2375*22dc650dSSadaf Ebrahimi 2376*22dc650dSSadaf Ebrahimi/[\S]/B,utf,ucp 2377*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2378*22dc650dSSadaf Ebrahimi Bra 2379*22dc650dSSadaf Ebrahimi [\P{Xsp}] 2380*22dc650dSSadaf Ebrahimi Ket 2381*22dc650dSSadaf Ebrahimi End 2382*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2383*22dc650dSSadaf Ebrahimi \x{1680}\x{6f4}\x{1680} 2384*22dc650dSSadaf Ebrahimi 0: \x{6f4} 2385*22dc650dSSadaf Ebrahimi 2386*22dc650dSSadaf Ebrahimi/[\s]/B,utf,ucp 2387*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2388*22dc650dSSadaf Ebrahimi Bra 2389*22dc650dSSadaf Ebrahimi [\p{Xsp}] 2390*22dc650dSSadaf Ebrahimi Ket 2391*22dc650dSSadaf Ebrahimi End 2392*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2393*22dc650dSSadaf Ebrahimi >\x{1680}< 2394*22dc650dSSadaf Ebrahimi 0: \x{1680} 2395*22dc650dSSadaf Ebrahimi 2396*22dc650dSSadaf Ebrahimi/[\W]/B,utf,ucp 2397*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2398*22dc650dSSadaf Ebrahimi Bra 2399*22dc650dSSadaf Ebrahimi [\P{Xwd}] 2400*22dc650dSSadaf Ebrahimi Ket 2401*22dc650dSSadaf Ebrahimi End 2402*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2403*22dc650dSSadaf Ebrahimi A\x{1735}B 2404*22dc650dSSadaf Ebrahimi 0: \x{1735} 2405*22dc650dSSadaf Ebrahimi 2406*22dc650dSSadaf Ebrahimi/[\w]/B,utf,ucp 2407*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2408*22dc650dSSadaf Ebrahimi Bra 2409*22dc650dSSadaf Ebrahimi [\p{Xwd}] 2410*22dc650dSSadaf Ebrahimi Ket 2411*22dc650dSSadaf Ebrahimi End 2412*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2413*22dc650dSSadaf Ebrahimi >\x{1723}< 2414*22dc650dSSadaf Ebrahimi 0: \x{1723} 2415*22dc650dSSadaf Ebrahimi 2416*22dc650dSSadaf Ebrahimi/\D/B,utf,ucp 2417*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2418*22dc650dSSadaf Ebrahimi Bra 2419*22dc650dSSadaf Ebrahimi notprop Nd 2420*22dc650dSSadaf Ebrahimi Ket 2421*22dc650dSSadaf Ebrahimi End 2422*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2423*22dc650dSSadaf Ebrahimi 1\x{3c8}2 2424*22dc650dSSadaf Ebrahimi 0: \x{3c8} 2425*22dc650dSSadaf Ebrahimi 2426*22dc650dSSadaf Ebrahimi/\d/B,utf,ucp 2427*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2428*22dc650dSSadaf Ebrahimi Bra 2429*22dc650dSSadaf Ebrahimi prop Nd 2430*22dc650dSSadaf Ebrahimi Ket 2431*22dc650dSSadaf Ebrahimi End 2432*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2433*22dc650dSSadaf Ebrahimi >\x{6f4}< 2434*22dc650dSSadaf Ebrahimi 0: \x{6f4} 2435*22dc650dSSadaf Ebrahimi 2436*22dc650dSSadaf Ebrahimi/\S/B,utf,ucp 2437*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2438*22dc650dSSadaf Ebrahimi Bra 2439*22dc650dSSadaf Ebrahimi notprop Xsp 2440*22dc650dSSadaf Ebrahimi Ket 2441*22dc650dSSadaf Ebrahimi End 2442*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2443*22dc650dSSadaf Ebrahimi \x{1680}\x{6f4}\x{1680} 2444*22dc650dSSadaf Ebrahimi 0: \x{6f4} 2445*22dc650dSSadaf Ebrahimi 2446*22dc650dSSadaf Ebrahimi/\s/B,utf,ucp 2447*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2448*22dc650dSSadaf Ebrahimi Bra 2449*22dc650dSSadaf Ebrahimi prop Xsp 2450*22dc650dSSadaf Ebrahimi Ket 2451*22dc650dSSadaf Ebrahimi End 2452*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2453*22dc650dSSadaf Ebrahimi >\x{1680}> 2454*22dc650dSSadaf Ebrahimi 0: \x{1680} 2455*22dc650dSSadaf Ebrahimi 2456*22dc650dSSadaf Ebrahimi/\W/B,utf,ucp 2457*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2458*22dc650dSSadaf Ebrahimi Bra 2459*22dc650dSSadaf Ebrahimi notprop Xwd 2460*22dc650dSSadaf Ebrahimi Ket 2461*22dc650dSSadaf Ebrahimi End 2462*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2463*22dc650dSSadaf Ebrahimi A\x{1735}B 2464*22dc650dSSadaf Ebrahimi 0: \x{1735} 2465*22dc650dSSadaf Ebrahimi 2466*22dc650dSSadaf Ebrahimi/\w/B,utf,ucp 2467*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2468*22dc650dSSadaf Ebrahimi Bra 2469*22dc650dSSadaf Ebrahimi prop Xwd 2470*22dc650dSSadaf Ebrahimi Ket 2471*22dc650dSSadaf Ebrahimi End 2472*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2473*22dc650dSSadaf Ebrahimi >\x{1723}< 2474*22dc650dSSadaf Ebrahimi 0: \x{1723} 2475*22dc650dSSadaf Ebrahimi 2476*22dc650dSSadaf Ebrahimi/[[:alpha:]]/B,ucp 2477*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2478*22dc650dSSadaf Ebrahimi Bra 2479*22dc650dSSadaf Ebrahimi [\p{L}] 2480*22dc650dSSadaf Ebrahimi Ket 2481*22dc650dSSadaf Ebrahimi End 2482*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2483*22dc650dSSadaf Ebrahimi 2484*22dc650dSSadaf Ebrahimi/[[:lower:]]/B,ucp 2485*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2486*22dc650dSSadaf Ebrahimi Bra 2487*22dc650dSSadaf Ebrahimi [\p{Ll}] 2488*22dc650dSSadaf Ebrahimi Ket 2489*22dc650dSSadaf Ebrahimi End 2490*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2491*22dc650dSSadaf Ebrahimi 2492*22dc650dSSadaf Ebrahimi/[[:upper:]]/B,ucp 2493*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2494*22dc650dSSadaf Ebrahimi Bra 2495*22dc650dSSadaf Ebrahimi [\p{Lu}] 2496*22dc650dSSadaf Ebrahimi Ket 2497*22dc650dSSadaf Ebrahimi End 2498*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2499*22dc650dSSadaf Ebrahimi 2500*22dc650dSSadaf Ebrahimi/[[:alnum:]]/B,ucp 2501*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2502*22dc650dSSadaf Ebrahimi Bra 2503*22dc650dSSadaf Ebrahimi [\p{Xan}] 2504*22dc650dSSadaf Ebrahimi Ket 2505*22dc650dSSadaf Ebrahimi End 2506*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2507*22dc650dSSadaf Ebrahimi 2508*22dc650dSSadaf Ebrahimi/[[:ascii:]]/B,ucp 2509*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2510*22dc650dSSadaf Ebrahimi Bra 2511*22dc650dSSadaf Ebrahimi [\x00-\x7f] 2512*22dc650dSSadaf Ebrahimi Ket 2513*22dc650dSSadaf Ebrahimi End 2514*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2515*22dc650dSSadaf Ebrahimi 2516*22dc650dSSadaf Ebrahimi/[[:cntrl:]]/B,ucp 2517*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2518*22dc650dSSadaf Ebrahimi Bra 2519*22dc650dSSadaf Ebrahimi [\p{Cc}] 2520*22dc650dSSadaf Ebrahimi Ket 2521*22dc650dSSadaf Ebrahimi End 2522*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2523*22dc650dSSadaf Ebrahimi 2524*22dc650dSSadaf Ebrahimi/[[:digit:]]/B,ucp 2525*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2526*22dc650dSSadaf Ebrahimi Bra 2527*22dc650dSSadaf Ebrahimi [\p{Nd}] 2528*22dc650dSSadaf Ebrahimi Ket 2529*22dc650dSSadaf Ebrahimi End 2530*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2531*22dc650dSSadaf Ebrahimi 2532*22dc650dSSadaf Ebrahimi/[[:digit:]]/B,ucp,ascii_digit 2533*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2534*22dc650dSSadaf Ebrahimi Bra 2535*22dc650dSSadaf Ebrahimi [0-9] 2536*22dc650dSSadaf Ebrahimi Ket 2537*22dc650dSSadaf Ebrahimi End 2538*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2539*22dc650dSSadaf Ebrahimi 2540*22dc650dSSadaf Ebrahimi/[[:graph:]]/B,ucp 2541*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2542*22dc650dSSadaf Ebrahimi Bra 2543*22dc650dSSadaf Ebrahimi [[:graph:]] 2544*22dc650dSSadaf Ebrahimi Ket 2545*22dc650dSSadaf Ebrahimi End 2546*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2547*22dc650dSSadaf Ebrahimi 2548*22dc650dSSadaf Ebrahimi/[[:print:]]/B,ucp 2549*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2550*22dc650dSSadaf Ebrahimi Bra 2551*22dc650dSSadaf Ebrahimi [[:print:]] 2552*22dc650dSSadaf Ebrahimi Ket 2553*22dc650dSSadaf Ebrahimi End 2554*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2555*22dc650dSSadaf Ebrahimi 2556*22dc650dSSadaf Ebrahimi/[[:punct:]]/B,ucp 2557*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2558*22dc650dSSadaf Ebrahimi Bra 2559*22dc650dSSadaf Ebrahimi [[:punct:]] 2560*22dc650dSSadaf Ebrahimi Ket 2561*22dc650dSSadaf Ebrahimi End 2562*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2563*22dc650dSSadaf Ebrahimi 2564*22dc650dSSadaf Ebrahimi/[[:space:]]/B,ucp 2565*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2566*22dc650dSSadaf Ebrahimi Bra 2567*22dc650dSSadaf Ebrahimi [\p{Xps}] 2568*22dc650dSSadaf Ebrahimi Ket 2569*22dc650dSSadaf Ebrahimi End 2570*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2571*22dc650dSSadaf Ebrahimi 2572*22dc650dSSadaf Ebrahimi/[[:word:]]/B,ucp 2573*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2574*22dc650dSSadaf Ebrahimi Bra 2575*22dc650dSSadaf Ebrahimi [\p{Xwd}] 2576*22dc650dSSadaf Ebrahimi Ket 2577*22dc650dSSadaf Ebrahimi End 2578*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2579*22dc650dSSadaf Ebrahimi 2580*22dc650dSSadaf Ebrahimi/[[:xdigit:]]/B,ucp 2581*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2582*22dc650dSSadaf Ebrahimi Bra 2583*22dc650dSSadaf Ebrahimi [[:xdigit:]] 2584*22dc650dSSadaf Ebrahimi Ket 2585*22dc650dSSadaf Ebrahimi End 2586*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2587*22dc650dSSadaf Ebrahimi 2588*22dc650dSSadaf Ebrahimi/[[:xdigit:]]/B,ucp,ascii_digit 2589*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2590*22dc650dSSadaf Ebrahimi Bra 2591*22dc650dSSadaf Ebrahimi [0-9A-Fa-f] 2592*22dc650dSSadaf Ebrahimi Ket 2593*22dc650dSSadaf Ebrahimi End 2594*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2595*22dc650dSSadaf Ebrahimi 2596*22dc650dSSadaf Ebrahimi# Unicode properties for \b and \B 2597*22dc650dSSadaf Ebrahimi 2598*22dc650dSSadaf Ebrahimi/\b...\B/utf,ucp 2599*22dc650dSSadaf Ebrahimi abc_ 2600*22dc650dSSadaf Ebrahimi 0: abc 2601*22dc650dSSadaf Ebrahimi \x{37e}abc\x{376} 2602*22dc650dSSadaf Ebrahimi 0: abc 2603*22dc650dSSadaf Ebrahimi \x{37e}\x{376}\x{371}\x{393}\x{394} 2604*22dc650dSSadaf Ebrahimi 0: \x{376}\x{371}\x{393} 2605*22dc650dSSadaf Ebrahimi !\x{c0}++\x{c1}\x{c2} 2606*22dc650dSSadaf Ebrahimi 0: ++\x{c1} 2607*22dc650dSSadaf Ebrahimi !\x{c0}+++++ 2608*22dc650dSSadaf Ebrahimi 0: \x{c0}++ 2609*22dc650dSSadaf Ebrahimi 2610*22dc650dSSadaf Ebrahimi# Without PCRE_UCP, non-ASCII always fail, even if < 256 2611*22dc650dSSadaf Ebrahimi 2612*22dc650dSSadaf Ebrahimi/\b...\B/utf 2613*22dc650dSSadaf Ebrahimi abc_ 2614*22dc650dSSadaf Ebrahimi 0: abc 2615*22dc650dSSadaf Ebrahimi\= Expect no match 2616*22dc650dSSadaf Ebrahimi \x{37e}abc\x{376} 2617*22dc650dSSadaf EbrahimiNo match 2618*22dc650dSSadaf Ebrahimi \x{37e}\x{376}\x{371}\x{393}\x{394} 2619*22dc650dSSadaf EbrahimiNo match 2620*22dc650dSSadaf Ebrahimi !\x{c0}++\x{c1}\x{c2} 2621*22dc650dSSadaf EbrahimiNo match 2622*22dc650dSSadaf Ebrahimi !\x{c0}+++++ 2623*22dc650dSSadaf EbrahimiNo match 2624*22dc650dSSadaf Ebrahimi 2625*22dc650dSSadaf Ebrahimi# With PCRE_UCP, non-UTF8 chars that are < 256 still check properties 2626*22dc650dSSadaf Ebrahimi 2627*22dc650dSSadaf Ebrahimi/\b...\B/ucp 2628*22dc650dSSadaf Ebrahimi abc_ 2629*22dc650dSSadaf Ebrahimi 0: abc 2630*22dc650dSSadaf Ebrahimi !\x{c0}++\x{c1}\x{c2} 2631*22dc650dSSadaf Ebrahimi 0: ++\xc1 2632*22dc650dSSadaf Ebrahimi !\x{c0}+++++ 2633*22dc650dSSadaf Ebrahimi 0: \xc0++ 2634*22dc650dSSadaf Ebrahimi 2635*22dc650dSSadaf Ebrahimi# Some of these are silly, but they check various combinations 2636*22dc650dSSadaf Ebrahimi 2637*22dc650dSSadaf Ebrahimi/[[:^alpha:][:^cntrl:]]+/B,utf,ucp 2638*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2639*22dc650dSSadaf Ebrahimi Bra 2640*22dc650dSSadaf Ebrahimi [\P{L}\P{Cc}]++ 2641*22dc650dSSadaf Ebrahimi Ket 2642*22dc650dSSadaf Ebrahimi End 2643*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2644*22dc650dSSadaf Ebrahimi 123 2645*22dc650dSSadaf Ebrahimi 0: 123 2646*22dc650dSSadaf Ebrahimi abc 2647*22dc650dSSadaf Ebrahimi 0: abc 2648*22dc650dSSadaf Ebrahimi 2649*22dc650dSSadaf Ebrahimi/[[:^cntrl:][:^alpha:]]+/B,utf,ucp 2650*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2651*22dc650dSSadaf Ebrahimi Bra 2652*22dc650dSSadaf Ebrahimi [\P{Cc}\P{L}]++ 2653*22dc650dSSadaf Ebrahimi Ket 2654*22dc650dSSadaf Ebrahimi End 2655*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2656*22dc650dSSadaf Ebrahimi 123 2657*22dc650dSSadaf Ebrahimi 0: 123 2658*22dc650dSSadaf Ebrahimi abc 2659*22dc650dSSadaf Ebrahimi 0: abc 2660*22dc650dSSadaf Ebrahimi 2661*22dc650dSSadaf Ebrahimi/[[:alpha:]]+/B,utf,ucp 2662*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2663*22dc650dSSadaf Ebrahimi Bra 2664*22dc650dSSadaf Ebrahimi [\p{L}]++ 2665*22dc650dSSadaf Ebrahimi Ket 2666*22dc650dSSadaf Ebrahimi End 2667*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2668*22dc650dSSadaf Ebrahimi abc 2669*22dc650dSSadaf Ebrahimi 0: abc 2670*22dc650dSSadaf Ebrahimi 2671*22dc650dSSadaf Ebrahimi/[[:^alpha:]\S]+/B,utf,ucp 2672*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2673*22dc650dSSadaf Ebrahimi Bra 2674*22dc650dSSadaf Ebrahimi [\P{L}\P{Xsp}]++ 2675*22dc650dSSadaf Ebrahimi Ket 2676*22dc650dSSadaf Ebrahimi End 2677*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2678*22dc650dSSadaf Ebrahimi 123 2679*22dc650dSSadaf Ebrahimi 0: 123 2680*22dc650dSSadaf Ebrahimi abc 2681*22dc650dSSadaf Ebrahimi 0: abc 2682*22dc650dSSadaf Ebrahimi 2683*22dc650dSSadaf Ebrahimi/[^\d]+/B,utf,ucp 2684*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2685*22dc650dSSadaf Ebrahimi Bra 2686*22dc650dSSadaf Ebrahimi [^\p{Nd}]++ 2687*22dc650dSSadaf Ebrahimi Ket 2688*22dc650dSSadaf Ebrahimi End 2689*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2690*22dc650dSSadaf Ebrahimi abc123 2691*22dc650dSSadaf Ebrahimi 0: abc 2692*22dc650dSSadaf Ebrahimi abc\x{123} 2693*22dc650dSSadaf Ebrahimi 0: abc\x{123} 2694*22dc650dSSadaf Ebrahimi \x{660}abc 2695*22dc650dSSadaf Ebrahimi 0: abc 2696*22dc650dSSadaf Ebrahimi 2697*22dc650dSSadaf Ebrahimi/\p{Lu}+9\p{Lu}+B\p{Lu}+b/B 2698*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2699*22dc650dSSadaf Ebrahimi Bra 2700*22dc650dSSadaf Ebrahimi prop Lu ++ 2701*22dc650dSSadaf Ebrahimi 9 2702*22dc650dSSadaf Ebrahimi prop Lu + 2703*22dc650dSSadaf Ebrahimi B 2704*22dc650dSSadaf Ebrahimi prop Lu ++ 2705*22dc650dSSadaf Ebrahimi b 2706*22dc650dSSadaf Ebrahimi Ket 2707*22dc650dSSadaf Ebrahimi End 2708*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2709*22dc650dSSadaf Ebrahimi 2710*22dc650dSSadaf Ebrahimi/\p{^Lu}+9\p{^Lu}+B\p{^Lu}+b/B 2711*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2712*22dc650dSSadaf Ebrahimi Bra 2713*22dc650dSSadaf Ebrahimi notprop Lu + 2714*22dc650dSSadaf Ebrahimi 9 2715*22dc650dSSadaf Ebrahimi notprop Lu ++ 2716*22dc650dSSadaf Ebrahimi B 2717*22dc650dSSadaf Ebrahimi notprop Lu + 2718*22dc650dSSadaf Ebrahimi b 2719*22dc650dSSadaf Ebrahimi Ket 2720*22dc650dSSadaf Ebrahimi End 2721*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2722*22dc650dSSadaf Ebrahimi 2723*22dc650dSSadaf Ebrahimi/\P{Lu}+9\P{Lu}+B\P{Lu}+b/B 2724*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2725*22dc650dSSadaf Ebrahimi Bra 2726*22dc650dSSadaf Ebrahimi notprop Lu + 2727*22dc650dSSadaf Ebrahimi 9 2728*22dc650dSSadaf Ebrahimi notprop Lu ++ 2729*22dc650dSSadaf Ebrahimi B 2730*22dc650dSSadaf Ebrahimi notprop Lu + 2731*22dc650dSSadaf Ebrahimi b 2732*22dc650dSSadaf Ebrahimi Ket 2733*22dc650dSSadaf Ebrahimi End 2734*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2735*22dc650dSSadaf Ebrahimi 2736*22dc650dSSadaf Ebrahimi/\p{Han}+X\p{Greek}+\x{370}/B,utf 2737*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2738*22dc650dSSadaf Ebrahimi Bra 2739*22dc650dSSadaf Ebrahimi prop Han ++ 2740*22dc650dSSadaf Ebrahimi X 2741*22dc650dSSadaf Ebrahimi prop Greek + 2742*22dc650dSSadaf Ebrahimi \x{370} 2743*22dc650dSSadaf Ebrahimi Ket 2744*22dc650dSSadaf Ebrahimi End 2745*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2746*22dc650dSSadaf Ebrahimi 2747*22dc650dSSadaf Ebrahimi/\p{Xan}+!\p{Xan}+A/B 2748*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2749*22dc650dSSadaf Ebrahimi Bra 2750*22dc650dSSadaf Ebrahimi prop Xan ++ 2751*22dc650dSSadaf Ebrahimi ! 2752*22dc650dSSadaf Ebrahimi prop Xan + 2753*22dc650dSSadaf Ebrahimi A 2754*22dc650dSSadaf Ebrahimi Ket 2755*22dc650dSSadaf Ebrahimi End 2756*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2757*22dc650dSSadaf Ebrahimi 2758*22dc650dSSadaf Ebrahimi/\p{Xsp}+!\p{Xsp}\t/B 2759*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2760*22dc650dSSadaf Ebrahimi Bra 2761*22dc650dSSadaf Ebrahimi prop Xsp ++ 2762*22dc650dSSadaf Ebrahimi ! 2763*22dc650dSSadaf Ebrahimi prop Xsp 2764*22dc650dSSadaf Ebrahimi \x09 2765*22dc650dSSadaf Ebrahimi Ket 2766*22dc650dSSadaf Ebrahimi End 2767*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2768*22dc650dSSadaf Ebrahimi 2769*22dc650dSSadaf Ebrahimi/\p{Xps}+!\p{Xps}\t/B 2770*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2771*22dc650dSSadaf Ebrahimi Bra 2772*22dc650dSSadaf Ebrahimi prop Xps ++ 2773*22dc650dSSadaf Ebrahimi ! 2774*22dc650dSSadaf Ebrahimi prop Xps 2775*22dc650dSSadaf Ebrahimi \x09 2776*22dc650dSSadaf Ebrahimi Ket 2777*22dc650dSSadaf Ebrahimi End 2778*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2779*22dc650dSSadaf Ebrahimi 2780*22dc650dSSadaf Ebrahimi/\p{Xwd}+!\p{Xwd}_/B 2781*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2782*22dc650dSSadaf Ebrahimi Bra 2783*22dc650dSSadaf Ebrahimi prop Xwd ++ 2784*22dc650dSSadaf Ebrahimi ! 2785*22dc650dSSadaf Ebrahimi prop Xwd 2786*22dc650dSSadaf Ebrahimi _ 2787*22dc650dSSadaf Ebrahimi Ket 2788*22dc650dSSadaf Ebrahimi End 2789*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2790*22dc650dSSadaf Ebrahimi 2791*22dc650dSSadaf Ebrahimi/A+\p{N}A+\dB+\p{N}*B+\d*/B,ucp 2792*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2793*22dc650dSSadaf Ebrahimi Bra 2794*22dc650dSSadaf Ebrahimi A++ 2795*22dc650dSSadaf Ebrahimi prop N 2796*22dc650dSSadaf Ebrahimi A++ 2797*22dc650dSSadaf Ebrahimi prop Nd 2798*22dc650dSSadaf Ebrahimi B+ 2799*22dc650dSSadaf Ebrahimi prop N *+ 2800*22dc650dSSadaf Ebrahimi B++ 2801*22dc650dSSadaf Ebrahimi prop Nd *+ 2802*22dc650dSSadaf Ebrahimi Ket 2803*22dc650dSSadaf Ebrahimi End 2804*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 2805*22dc650dSSadaf Ebrahimi 2806*22dc650dSSadaf Ebrahimi# These behaved oddly in Perl, so they are kept in this test 2807*22dc650dSSadaf Ebrahimi 2808*22dc650dSSadaf Ebrahimi/(\x{23a}\x{23a}\x{23a})?\1/i,utf 2809*22dc650dSSadaf Ebrahimi\= Expect no match 2810*22dc650dSSadaf Ebrahimi \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65} 2811*22dc650dSSadaf EbrahimiNo match 2812*22dc650dSSadaf Ebrahimi 2813*22dc650dSSadaf Ebrahimi/(ȺȺȺ)?\1/i,utf 2814*22dc650dSSadaf Ebrahimi\= Expect no match 2815*22dc650dSSadaf Ebrahimi ȺȺȺⱥⱥ 2816*22dc650dSSadaf EbrahimiNo match 2817*22dc650dSSadaf Ebrahimi 2818*22dc650dSSadaf Ebrahimi/(\x{23a}\x{23a}\x{23a})?\1/i,utf 2819*22dc650dSSadaf Ebrahimi \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65} 2820*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65} 2821*22dc650dSSadaf Ebrahimi 1: \x{23a}\x{23a}\x{23a} 2822*22dc650dSSadaf Ebrahimi 2823*22dc650dSSadaf Ebrahimi/(ȺȺȺ)?\1/i,utf 2824*22dc650dSSadaf Ebrahimi ȺȺȺⱥⱥⱥ 2825*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65} 2826*22dc650dSSadaf Ebrahimi 1: \x{23a}\x{23a}\x{23a} 2827*22dc650dSSadaf Ebrahimi 2828*22dc650dSSadaf Ebrahimi/(\x{23a}\x{23a}\x{23a})\1/i,utf 2829*22dc650dSSadaf Ebrahimi\= Expect no match 2830*22dc650dSSadaf Ebrahimi \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65} 2831*22dc650dSSadaf EbrahimiNo match 2832*22dc650dSSadaf Ebrahimi 2833*22dc650dSSadaf Ebrahimi/(ȺȺȺ)\1/i,utf 2834*22dc650dSSadaf Ebrahimi\= Expect no match 2835*22dc650dSSadaf Ebrahimi ȺȺȺⱥⱥ 2836*22dc650dSSadaf EbrahimiNo match 2837*22dc650dSSadaf Ebrahimi 2838*22dc650dSSadaf Ebrahimi/(\x{23a}\x{23a}\x{23a})\1/i,utf 2839*22dc650dSSadaf Ebrahimi \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65} 2840*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65} 2841*22dc650dSSadaf Ebrahimi 1: \x{23a}\x{23a}\x{23a} 2842*22dc650dSSadaf Ebrahimi 2843*22dc650dSSadaf Ebrahimi/(ȺȺȺ)\1/i,utf 2844*22dc650dSSadaf Ebrahimi ȺȺȺⱥⱥⱥ 2845*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65} 2846*22dc650dSSadaf Ebrahimi 1: \x{23a}\x{23a}\x{23a} 2847*22dc650dSSadaf Ebrahimi 2848*22dc650dSSadaf Ebrahimi/(\x{2c65}\x{2c65})\1/i,utf 2849*22dc650dSSadaf Ebrahimi \x{2c65}\x{2c65}\x{23a}\x{23a} 2850*22dc650dSSadaf Ebrahimi 0: \x{2c65}\x{2c65}\x{23a}\x{23a} 2851*22dc650dSSadaf Ebrahimi 1: \x{2c65}\x{2c65} 2852*22dc650dSSadaf Ebrahimi 2853*22dc650dSSadaf Ebrahimi/(ⱥⱥ)\1/i,utf 2854*22dc650dSSadaf Ebrahimi ⱥⱥȺȺ 2855*22dc650dSSadaf Ebrahimi 0: \x{2c65}\x{2c65}\x{23a}\x{23a} 2856*22dc650dSSadaf Ebrahimi 1: \x{2c65}\x{2c65} 2857*22dc650dSSadaf Ebrahimi 2858*22dc650dSSadaf Ebrahimi/(\x{23a}\x{23a}\x{23a})\1Y/i,utf 2859*22dc650dSSadaf Ebrahimi X\x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}YZ 2860*22dc650dSSadaf Ebrahimi 0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}Y 2861*22dc650dSSadaf Ebrahimi 1: \x{23a}\x{23a}\x{23a} 2862*22dc650dSSadaf Ebrahimi 2863*22dc650dSSadaf Ebrahimi/(\x{2c65}\x{2c65})\1Y/i,utf 2864*22dc650dSSadaf Ebrahimi X\x{2c65}\x{2c65}\x{23a}\x{23a}YZ 2865*22dc650dSSadaf Ebrahimi 0: \x{2c65}\x{2c65}\x{23a}\x{23a}Y 2866*22dc650dSSadaf Ebrahimi 1: \x{2c65}\x{2c65} 2867*22dc650dSSadaf Ebrahimi 2868*22dc650dSSadaf Ebrahimi# These scripts weren't yet in Perl when I added Unicode 6.0.0 to PCRE 2869*22dc650dSSadaf Ebrahimi 2870*22dc650dSSadaf Ebrahimi/^[\p{Batak}]/utf 2871*22dc650dSSadaf Ebrahimi \x{1bc0} 2872*22dc650dSSadaf Ebrahimi 0: \x{1bc0} 2873*22dc650dSSadaf Ebrahimi \x{1bff} 2874*22dc650dSSadaf Ebrahimi 0: \x{1bff} 2875*22dc650dSSadaf Ebrahimi\= Expect no match 2876*22dc650dSSadaf Ebrahimi \x{1bf4} 2877*22dc650dSSadaf EbrahimiNo match 2878*22dc650dSSadaf Ebrahimi 2879*22dc650dSSadaf Ebrahimi/^[\p{Brahmi}]/utf 2880*22dc650dSSadaf Ebrahimi \x{11000} 2881*22dc650dSSadaf Ebrahimi 0: \x{11000} 2882*22dc650dSSadaf Ebrahimi \x{1106f} 2883*22dc650dSSadaf Ebrahimi 0: \x{1106f} 2884*22dc650dSSadaf Ebrahimi\= Expect no match 2885*22dc650dSSadaf Ebrahimi \x{1104e} 2886*22dc650dSSadaf EbrahimiNo match 2887*22dc650dSSadaf Ebrahimi 2888*22dc650dSSadaf Ebrahimi/^[\p{Mandaic}]/utf 2889*22dc650dSSadaf Ebrahimi \x{840} 2890*22dc650dSSadaf Ebrahimi 0: \x{840} 2891*22dc650dSSadaf Ebrahimi \x{85e} 2892*22dc650dSSadaf Ebrahimi 0: \x{85e} 2893*22dc650dSSadaf Ebrahimi\= Expect no match 2894*22dc650dSSadaf Ebrahimi \x{85c} 2895*22dc650dSSadaf EbrahimiNo match 2896*22dc650dSSadaf Ebrahimi \x{85d} 2897*22dc650dSSadaf EbrahimiNo match 2898*22dc650dSSadaf Ebrahimi 2899*22dc650dSSadaf Ebrahimi/(\X*)(.)/s,utf 2900*22dc650dSSadaf Ebrahimi A\x{300} 2901*22dc650dSSadaf Ebrahimi 0: A 2902*22dc650dSSadaf Ebrahimi 1: 2903*22dc650dSSadaf Ebrahimi 2: A 2904*22dc650dSSadaf Ebrahimi 2905*22dc650dSSadaf Ebrahimi/^S(\X*)e(\X*)$/utf 2906*22dc650dSSadaf Ebrahimi Stéréo 2907*22dc650dSSadaf Ebrahimi 0: Ste\x{301}re\x{301}o 2908*22dc650dSSadaf Ebrahimi 1: te\x{301}r 2909*22dc650dSSadaf Ebrahimi 2: \x{301}o 2910*22dc650dSSadaf Ebrahimi 2911*22dc650dSSadaf Ebrahimi/^\X/utf 2912*22dc650dSSadaf Ebrahimi ́réo 2913*22dc650dSSadaf Ebrahimi 0: \x{301} 2914*22dc650dSSadaf Ebrahimi 2915*22dc650dSSadaf Ebrahimi/^a\X41z/alt_bsux,allow_empty_class,match_unset_backref,dupnames 2916*22dc650dSSadaf Ebrahimi aX41z 2917*22dc650dSSadaf Ebrahimi 0: aX41z 2918*22dc650dSSadaf Ebrahimi\= Expect no match 2919*22dc650dSSadaf Ebrahimi aAz 2920*22dc650dSSadaf EbrahimiNo match 2921*22dc650dSSadaf Ebrahimi 2922*22dc650dSSadaf Ebrahimi/\X/ 2923*22dc650dSSadaf Ebrahimi a\=ps 2924*22dc650dSSadaf Ebrahimi 0: a 2925*22dc650dSSadaf Ebrahimi a\=ph 2926*22dc650dSSadaf EbrahimiPartial match: a 2927*22dc650dSSadaf Ebrahimi 2928*22dc650dSSadaf Ebrahimi/\Xa/ 2929*22dc650dSSadaf Ebrahimi aa\=ps 2930*22dc650dSSadaf Ebrahimi 0: aa 2931*22dc650dSSadaf Ebrahimi aa\=ph 2932*22dc650dSSadaf Ebrahimi 0: aa 2933*22dc650dSSadaf Ebrahimi 2934*22dc650dSSadaf Ebrahimi/\X{2}/ 2935*22dc650dSSadaf Ebrahimi aa\=ps 2936*22dc650dSSadaf Ebrahimi 0: aa 2937*22dc650dSSadaf Ebrahimi aa\=ph 2938*22dc650dSSadaf EbrahimiPartial match: aa 2939*22dc650dSSadaf Ebrahimi 2940*22dc650dSSadaf Ebrahimi/\X+a/ 2941*22dc650dSSadaf Ebrahimi a\=ps 2942*22dc650dSSadaf EbrahimiPartial match: a 2943*22dc650dSSadaf Ebrahimi aa\=ps 2944*22dc650dSSadaf Ebrahimi 0: aa 2945*22dc650dSSadaf Ebrahimi aa\=ph 2946*22dc650dSSadaf EbrahimiPartial match: aa 2947*22dc650dSSadaf Ebrahimi 2948*22dc650dSSadaf Ebrahimi/\X+?a/ 2949*22dc650dSSadaf Ebrahimi a\=ps 2950*22dc650dSSadaf EbrahimiPartial match: a 2951*22dc650dSSadaf Ebrahimi ab\=ps 2952*22dc650dSSadaf EbrahimiPartial match: ab 2953*22dc650dSSadaf Ebrahimi aa\=ps 2954*22dc650dSSadaf Ebrahimi 0: aa 2955*22dc650dSSadaf Ebrahimi aa\=ph 2956*22dc650dSSadaf Ebrahimi 0: aa 2957*22dc650dSSadaf Ebrahimi aba\=ps 2958*22dc650dSSadaf Ebrahimi 0: aba 2959*22dc650dSSadaf Ebrahimi 2960*22dc650dSSadaf Ebrahimi# These Unicode 6.1.0 scripts are not known to Perl. 2961*22dc650dSSadaf Ebrahimi 2962*22dc650dSSadaf Ebrahimi/\p{Chakma}\d/utf,ucp 2963*22dc650dSSadaf Ebrahimi \x{11100}\x{1113c} 2964*22dc650dSSadaf Ebrahimi 0: \x{11100}\x{1113c} 2965*22dc650dSSadaf Ebrahimi 2966*22dc650dSSadaf Ebrahimi/\p{Takri}\d/utf,ucp 2967*22dc650dSSadaf Ebrahimi \x{11680}\x{116c0} 2968*22dc650dSSadaf Ebrahimi 0: \x{11680}\x{116c0} 2969*22dc650dSSadaf Ebrahimi 2970*22dc650dSSadaf Ebrahimi/^\X/utf 2971*22dc650dSSadaf Ebrahimi A\=ps 2972*22dc650dSSadaf Ebrahimi 0: A 2973*22dc650dSSadaf Ebrahimi A\=ph 2974*22dc650dSSadaf EbrahimiPartial match: A 2975*22dc650dSSadaf Ebrahimi A\x{300}\x{301}\=ps 2976*22dc650dSSadaf Ebrahimi 0: A\x{300}\x{301} 2977*22dc650dSSadaf Ebrahimi A\x{300}\x{301}\=ph 2978*22dc650dSSadaf EbrahimiPartial match: A\x{300}\x{301} 2979*22dc650dSSadaf Ebrahimi A\x{301}\=ps 2980*22dc650dSSadaf Ebrahimi 0: A\x{301} 2981*22dc650dSSadaf Ebrahimi A\x{301}\=ph 2982*22dc650dSSadaf EbrahimiPartial match: A\x{301} 2983*22dc650dSSadaf Ebrahimi 2984*22dc650dSSadaf Ebrahimi/^\X{2,3}/utf 2985*22dc650dSSadaf Ebrahimi A\=ps 2986*22dc650dSSadaf EbrahimiPartial match: A 2987*22dc650dSSadaf Ebrahimi A\=ph 2988*22dc650dSSadaf EbrahimiPartial match: A 2989*22dc650dSSadaf Ebrahimi AA\=ps 2990*22dc650dSSadaf Ebrahimi 0: AA 2991*22dc650dSSadaf Ebrahimi AA\=ph 2992*22dc650dSSadaf EbrahimiPartial match: AA 2993*22dc650dSSadaf Ebrahimi A\x{300}\x{301}\=ps 2994*22dc650dSSadaf EbrahimiPartial match: A\x{300}\x{301} 2995*22dc650dSSadaf Ebrahimi A\x{300}\x{301}\=ph 2996*22dc650dSSadaf EbrahimiPartial match: A\x{300}\x{301} 2997*22dc650dSSadaf Ebrahimi A\x{300}\x{301}A\x{300}\x{301}\=ps 2998*22dc650dSSadaf Ebrahimi 0: A\x{300}\x{301}A\x{300}\x{301} 2999*22dc650dSSadaf Ebrahimi A\x{300}\x{301}A\x{300}\x{301}\=ph 3000*22dc650dSSadaf EbrahimiPartial match: A\x{300}\x{301}A\x{300}\x{301} 3001*22dc650dSSadaf Ebrahimi 3002*22dc650dSSadaf Ebrahimi/^\X{2}/utf 3003*22dc650dSSadaf Ebrahimi AA\=ps 3004*22dc650dSSadaf Ebrahimi 0: AA 3005*22dc650dSSadaf Ebrahimi AA\=ph 3006*22dc650dSSadaf EbrahimiPartial match: AA 3007*22dc650dSSadaf Ebrahimi A\x{300}\x{301}A\x{300}\x{301}\=ps 3008*22dc650dSSadaf Ebrahimi 0: A\x{300}\x{301}A\x{300}\x{301} 3009*22dc650dSSadaf Ebrahimi A\x{300}\x{301}A\x{300}\x{301}\=ph 3010*22dc650dSSadaf EbrahimiPartial match: A\x{300}\x{301}A\x{300}\x{301} 3011*22dc650dSSadaf Ebrahimi 3012*22dc650dSSadaf Ebrahimi/^\X+/utf 3013*22dc650dSSadaf Ebrahimi AA\=ps 3014*22dc650dSSadaf Ebrahimi 0: AA 3015*22dc650dSSadaf Ebrahimi AA\=ph 3016*22dc650dSSadaf EbrahimiPartial match: AA 3017*22dc650dSSadaf Ebrahimi 3018*22dc650dSSadaf Ebrahimi/^\X+?Z/utf 3019*22dc650dSSadaf Ebrahimi AA\=ps 3020*22dc650dSSadaf EbrahimiPartial match: AA 3021*22dc650dSSadaf Ebrahimi AA\=ph 3022*22dc650dSSadaf EbrahimiPartial match: AA 3023*22dc650dSSadaf Ebrahimi 3024*22dc650dSSadaf Ebrahimi/A\x{3a3}B/IBi,utf 3025*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3026*22dc650dSSadaf Ebrahimi Bra 3027*22dc650dSSadaf Ebrahimi /i A 3028*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3029*22dc650dSSadaf Ebrahimi /i B 3030*22dc650dSSadaf Ebrahimi Ket 3031*22dc650dSSadaf Ebrahimi End 3032*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3033*22dc650dSSadaf EbrahimiCapture group count = 0 3034*22dc650dSSadaf EbrahimiOptions: caseless utf 3035*22dc650dSSadaf EbrahimiFirst code unit = 'A' (caseless) 3036*22dc650dSSadaf EbrahimiLast code unit = 'B' (caseless) 3037*22dc650dSSadaf EbrahimiSubject length lower bound = 3 3038*22dc650dSSadaf Ebrahimi 3039*22dc650dSSadaf Ebrahimi/[\x{3a3}]/Bi,utf 3040*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3041*22dc650dSSadaf Ebrahimi Bra 3042*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3043*22dc650dSSadaf Ebrahimi Ket 3044*22dc650dSSadaf Ebrahimi End 3045*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3046*22dc650dSSadaf Ebrahimi 3047*22dc650dSSadaf Ebrahimi/[^\x{3a3}]/Bi,utf 3048*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3049*22dc650dSSadaf Ebrahimi Bra 3050*22dc650dSSadaf Ebrahimi not clist 03a3 03c2 03c3 3051*22dc650dSSadaf Ebrahimi Ket 3052*22dc650dSSadaf Ebrahimi End 3053*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3054*22dc650dSSadaf Ebrahimi 3055*22dc650dSSadaf Ebrahimi/[\x{3a3}]+/Bi,utf 3056*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3057*22dc650dSSadaf Ebrahimi Bra 3058*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 ++ 3059*22dc650dSSadaf Ebrahimi Ket 3060*22dc650dSSadaf Ebrahimi End 3061*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3062*22dc650dSSadaf Ebrahimi 3063*22dc650dSSadaf Ebrahimi/[^\x{3a3}]+/Bi,utf 3064*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3065*22dc650dSSadaf Ebrahimi Bra 3066*22dc650dSSadaf Ebrahimi not clist 03a3 03c2 03c3 ++ 3067*22dc650dSSadaf Ebrahimi Ket 3068*22dc650dSSadaf Ebrahimi End 3069*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3070*22dc650dSSadaf Ebrahimi 3071*22dc650dSSadaf Ebrahimi/a*\x{3a3}/Bi,utf 3072*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3073*22dc650dSSadaf Ebrahimi Bra 3074*22dc650dSSadaf Ebrahimi /i a*+ 3075*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3076*22dc650dSSadaf Ebrahimi Ket 3077*22dc650dSSadaf Ebrahimi End 3078*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3079*22dc650dSSadaf Ebrahimi 3080*22dc650dSSadaf Ebrahimi/\x{3a3}+a/Bi,utf 3081*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3082*22dc650dSSadaf Ebrahimi Bra 3083*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 ++ 3084*22dc650dSSadaf Ebrahimi /i a 3085*22dc650dSSadaf Ebrahimi Ket 3086*22dc650dSSadaf Ebrahimi End 3087*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3088*22dc650dSSadaf Ebrahimi 3089*22dc650dSSadaf Ebrahimi/\x{3a3}*\x{3c2}/Bi,utf 3090*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3091*22dc650dSSadaf Ebrahimi Bra 3092*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 * 3093*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3094*22dc650dSSadaf Ebrahimi Ket 3095*22dc650dSSadaf Ebrahimi End 3096*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3097*22dc650dSSadaf Ebrahimi 3098*22dc650dSSadaf Ebrahimi/\x{3a3}{3}/i,utf,aftertext 3099*22dc650dSSadaf Ebrahimi \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2} 3100*22dc650dSSadaf Ebrahimi 0: \x{3a3}\x{3c3}\x{3c2} 3101*22dc650dSSadaf Ebrahimi 0+ \x{3a3}\x{3c3}\x{3c2} 3102*22dc650dSSadaf Ebrahimi 3103*22dc650dSSadaf Ebrahimi/\x{3a3}{2,4}/i,utf,aftertext 3104*22dc650dSSadaf Ebrahimi \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2} 3105*22dc650dSSadaf Ebrahimi 0: \x{3a3}\x{3c3}\x{3c2}\x{3a3} 3106*22dc650dSSadaf Ebrahimi 0+ \x{3c3}\x{3c2} 3107*22dc650dSSadaf Ebrahimi 3108*22dc650dSSadaf Ebrahimi/\x{3a3}{2,4}?/i,utf,aftertext 3109*22dc650dSSadaf Ebrahimi \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2} 3110*22dc650dSSadaf Ebrahimi 0: \x{3a3}\x{3c3} 3111*22dc650dSSadaf Ebrahimi 0+ \x{3c2}\x{3a3}\x{3c3}\x{3c2} 3112*22dc650dSSadaf Ebrahimi 3113*22dc650dSSadaf Ebrahimi/\x{3a3}+./i,utf,aftertext 3114*22dc650dSSadaf Ebrahimi \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2} 3115*22dc650dSSadaf Ebrahimi 0: \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2} 3116*22dc650dSSadaf Ebrahimi 0+ 3117*22dc650dSSadaf Ebrahimi 3118*22dc650dSSadaf Ebrahimi/\x{3a3}++./i,utf,aftertext 3119*22dc650dSSadaf Ebrahimi\= Expect no match 3120*22dc650dSSadaf Ebrahimi \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2} 3121*22dc650dSSadaf EbrahimiNo match 3122*22dc650dSSadaf Ebrahimi 3123*22dc650dSSadaf Ebrahimi/\x{3a3}*\x{3c2}/Bi,utf 3124*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3125*22dc650dSSadaf Ebrahimi Bra 3126*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 * 3127*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3128*22dc650dSSadaf Ebrahimi Ket 3129*22dc650dSSadaf Ebrahimi End 3130*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3131*22dc650dSSadaf Ebrahimi 3132*22dc650dSSadaf Ebrahimi/[^\x{3a3}]*\x{3c2}/Bi,utf 3133*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3134*22dc650dSSadaf Ebrahimi Bra 3135*22dc650dSSadaf Ebrahimi not clist 03a3 03c2 03c3 *+ 3136*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3137*22dc650dSSadaf Ebrahimi Ket 3138*22dc650dSSadaf Ebrahimi End 3139*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3140*22dc650dSSadaf Ebrahimi 3141*22dc650dSSadaf Ebrahimi/[^a]*\x{3c2}/Bi,utf 3142*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3143*22dc650dSSadaf Ebrahimi Bra 3144*22dc650dSSadaf Ebrahimi /i [^a]* 3145*22dc650dSSadaf Ebrahimi clist 03a3 03c2 03c3 3146*22dc650dSSadaf Ebrahimi Ket 3147*22dc650dSSadaf Ebrahimi End 3148*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3149*22dc650dSSadaf Ebrahimi 3150*22dc650dSSadaf Ebrahimi/ist/Bi,utf 3151*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3152*22dc650dSSadaf Ebrahimi Bra 3153*22dc650dSSadaf Ebrahimi /i i 3154*22dc650dSSadaf Ebrahimi clist 0053 0073 017f 3155*22dc650dSSadaf Ebrahimi /i t 3156*22dc650dSSadaf Ebrahimi Ket 3157*22dc650dSSadaf Ebrahimi End 3158*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3159*22dc650dSSadaf Ebrahimi\= Expect no match 3160*22dc650dSSadaf Ebrahimi ikt 3161*22dc650dSSadaf EbrahimiNo match 3162*22dc650dSSadaf Ebrahimi 3163*22dc650dSSadaf Ebrahimi/is+t/i,utf 3164*22dc650dSSadaf Ebrahimi iSs\x{17f}t 3165*22dc650dSSadaf Ebrahimi 0: iSs\x{17f}t 3166*22dc650dSSadaf Ebrahimi\= Expect no match 3167*22dc650dSSadaf Ebrahimi ikt 3168*22dc650dSSadaf EbrahimiNo match 3169*22dc650dSSadaf Ebrahimi 3170*22dc650dSSadaf Ebrahimi/is+?t/i,utf 3171*22dc650dSSadaf Ebrahimi\= Expect no match 3172*22dc650dSSadaf Ebrahimi ikt 3173*22dc650dSSadaf EbrahimiNo match 3174*22dc650dSSadaf Ebrahimi 3175*22dc650dSSadaf Ebrahimi/is?t/i,utf 3176*22dc650dSSadaf Ebrahimi\= Expect no match 3177*22dc650dSSadaf Ebrahimi ikt 3178*22dc650dSSadaf EbrahimiNo match 3179*22dc650dSSadaf Ebrahimi 3180*22dc650dSSadaf Ebrahimi/is{2}t/i,utf 3181*22dc650dSSadaf Ebrahimi\= Expect no match 3182*22dc650dSSadaf Ebrahimi iskt 3183*22dc650dSSadaf EbrahimiNo match 3184*22dc650dSSadaf Ebrahimi 3185*22dc650dSSadaf Ebrahimi# This property is a PCRE special 3186*22dc650dSSadaf Ebrahimi 3187*22dc650dSSadaf Ebrahimi/^\p{Xuc}/utf 3188*22dc650dSSadaf Ebrahimi $abc 3189*22dc650dSSadaf Ebrahimi 0: $ 3190*22dc650dSSadaf Ebrahimi @abc 3191*22dc650dSSadaf Ebrahimi 0: @ 3192*22dc650dSSadaf Ebrahimi `abc 3193*22dc650dSSadaf Ebrahimi 0: ` 3194*22dc650dSSadaf Ebrahimi \x{1234}abc 3195*22dc650dSSadaf Ebrahimi 0: \x{1234} 3196*22dc650dSSadaf Ebrahimi\= Expect no match 3197*22dc650dSSadaf Ebrahimi abc 3198*22dc650dSSadaf EbrahimiNo match 3199*22dc650dSSadaf Ebrahimi 3200*22dc650dSSadaf Ebrahimi/^\p{Xuc}+/utf 3201*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3202*22dc650dSSadaf Ebrahimi 0: $@`\x{a0}\x{1234}\x{e000} 3203*22dc650dSSadaf Ebrahimi\= Expect no match 3204*22dc650dSSadaf Ebrahimi \x{9f} 3205*22dc650dSSadaf EbrahimiNo match 3206*22dc650dSSadaf Ebrahimi 3207*22dc650dSSadaf Ebrahimi/^\p{Xuc}+?/utf 3208*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3209*22dc650dSSadaf Ebrahimi 0: $ 3210*22dc650dSSadaf Ebrahimi\= Expect no match 3211*22dc650dSSadaf Ebrahimi \x{9f} 3212*22dc650dSSadaf EbrahimiNo match 3213*22dc650dSSadaf Ebrahimi 3214*22dc650dSSadaf Ebrahimi/^\p{Xuc}+?\*/utf 3215*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3216*22dc650dSSadaf Ebrahimi 0: $@`\x{a0}\x{1234}\x{e000}* 3217*22dc650dSSadaf Ebrahimi\= Expect no match 3218*22dc650dSSadaf Ebrahimi \x{9f} 3219*22dc650dSSadaf EbrahimiNo match 3220*22dc650dSSadaf Ebrahimi 3221*22dc650dSSadaf Ebrahimi/^\p{Xuc}++/utf 3222*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3223*22dc650dSSadaf Ebrahimi 0: $@`\x{a0}\x{1234}\x{e000} 3224*22dc650dSSadaf Ebrahimi\= Expect no match 3225*22dc650dSSadaf Ebrahimi \x{9f} 3226*22dc650dSSadaf EbrahimiNo match 3227*22dc650dSSadaf Ebrahimi 3228*22dc650dSSadaf Ebrahimi/^\p{Xuc}{3,5}/utf 3229*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3230*22dc650dSSadaf Ebrahimi 0: $@`\x{a0}\x{1234} 3231*22dc650dSSadaf Ebrahimi\= Expect no match 3232*22dc650dSSadaf Ebrahimi \x{9f} 3233*22dc650dSSadaf EbrahimiNo match 3234*22dc650dSSadaf Ebrahimi 3235*22dc650dSSadaf Ebrahimi/^\p{Xuc}{3,5}?/utf 3236*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3237*22dc650dSSadaf Ebrahimi 0: $@` 3238*22dc650dSSadaf Ebrahimi\= Expect no match 3239*22dc650dSSadaf Ebrahimi \x{9f} 3240*22dc650dSSadaf EbrahimiNo match 3241*22dc650dSSadaf Ebrahimi 3242*22dc650dSSadaf Ebrahimi/^[\p{Xuc}]/utf 3243*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3244*22dc650dSSadaf Ebrahimi 0: $ 3245*22dc650dSSadaf Ebrahimi\= Expect no match 3246*22dc650dSSadaf Ebrahimi \x{9f} 3247*22dc650dSSadaf EbrahimiNo match 3248*22dc650dSSadaf Ebrahimi 3249*22dc650dSSadaf Ebrahimi/^[\p{Xuc}]+/utf 3250*22dc650dSSadaf Ebrahimi $@`\x{a0}\x{1234}\x{e000}** 3251*22dc650dSSadaf Ebrahimi 0: $@`\x{a0}\x{1234}\x{e000} 3252*22dc650dSSadaf Ebrahimi\= Expect no match 3253*22dc650dSSadaf Ebrahimi \x{9f} 3254*22dc650dSSadaf EbrahimiNo match 3255*22dc650dSSadaf Ebrahimi 3256*22dc650dSSadaf Ebrahimi/^\P{Xuc}/utf 3257*22dc650dSSadaf Ebrahimi abc 3258*22dc650dSSadaf Ebrahimi 0: a 3259*22dc650dSSadaf Ebrahimi\= Expect no match 3260*22dc650dSSadaf Ebrahimi $abc 3261*22dc650dSSadaf EbrahimiNo match 3262*22dc650dSSadaf Ebrahimi @abc 3263*22dc650dSSadaf EbrahimiNo match 3264*22dc650dSSadaf Ebrahimi `abc 3265*22dc650dSSadaf EbrahimiNo match 3266*22dc650dSSadaf Ebrahimi \x{1234}abc 3267*22dc650dSSadaf EbrahimiNo match 3268*22dc650dSSadaf Ebrahimi 3269*22dc650dSSadaf Ebrahimi/^[\P{Xuc}]/utf 3270*22dc650dSSadaf Ebrahimi abc 3271*22dc650dSSadaf Ebrahimi 0: a 3272*22dc650dSSadaf Ebrahimi\= Expect no match 3273*22dc650dSSadaf Ebrahimi $abc 3274*22dc650dSSadaf EbrahimiNo match 3275*22dc650dSSadaf Ebrahimi @abc 3276*22dc650dSSadaf EbrahimiNo match 3277*22dc650dSSadaf Ebrahimi `abc 3278*22dc650dSSadaf EbrahimiNo match 3279*22dc650dSSadaf Ebrahimi \x{1234}abc 3280*22dc650dSSadaf EbrahimiNo match 3281*22dc650dSSadaf Ebrahimi 3282*22dc650dSSadaf Ebrahimi# Some auto-possessification tests 3283*22dc650dSSadaf Ebrahimi 3284*22dc650dSSadaf Ebrahimi/\pN+\z/B 3285*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3286*22dc650dSSadaf Ebrahimi Bra 3287*22dc650dSSadaf Ebrahimi prop N ++ 3288*22dc650dSSadaf Ebrahimi \z 3289*22dc650dSSadaf Ebrahimi Ket 3290*22dc650dSSadaf Ebrahimi End 3291*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3292*22dc650dSSadaf Ebrahimi 3293*22dc650dSSadaf Ebrahimi/\PN+\z/B 3294*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3295*22dc650dSSadaf Ebrahimi Bra 3296*22dc650dSSadaf Ebrahimi notprop N ++ 3297*22dc650dSSadaf Ebrahimi \z 3298*22dc650dSSadaf Ebrahimi Ket 3299*22dc650dSSadaf Ebrahimi End 3300*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3301*22dc650dSSadaf Ebrahimi 3302*22dc650dSSadaf Ebrahimi/\pN+/B 3303*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3304*22dc650dSSadaf Ebrahimi Bra 3305*22dc650dSSadaf Ebrahimi prop N ++ 3306*22dc650dSSadaf Ebrahimi Ket 3307*22dc650dSSadaf Ebrahimi End 3308*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3309*22dc650dSSadaf Ebrahimi 3310*22dc650dSSadaf Ebrahimi/\PN+/B 3311*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3312*22dc650dSSadaf Ebrahimi Bra 3313*22dc650dSSadaf Ebrahimi notprop N ++ 3314*22dc650dSSadaf Ebrahimi Ket 3315*22dc650dSSadaf Ebrahimi End 3316*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3317*22dc650dSSadaf Ebrahimi 3318*22dc650dSSadaf Ebrahimi/\p{Any}+\p{Any} \p{Any}+\P{Any} \p{Any}+\p{L&} \p{Any}+\p{L} \p{Any}+\p{Lu} \p{Any}+\p{Han} \p{Any}+\p{Xan} \p{Any}+\p{Xsp} \p{Any}+\p{Xps} \p{Xwd}+\p{Any} \p{Any}+\p{Xuc}/Bx,ucp 3319*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3320*22dc650dSSadaf Ebrahimi Bra 3321*22dc650dSSadaf Ebrahimi AllAny+ 3322*22dc650dSSadaf Ebrahimi AllAny 3323*22dc650dSSadaf Ebrahimi AllAny+ 3324*22dc650dSSadaf Ebrahimi notprop Any 3325*22dc650dSSadaf Ebrahimi AllAny+ 3326*22dc650dSSadaf Ebrahimi prop Lc 3327*22dc650dSSadaf Ebrahimi AllAny+ 3328*22dc650dSSadaf Ebrahimi prop L 3329*22dc650dSSadaf Ebrahimi AllAny+ 3330*22dc650dSSadaf Ebrahimi prop Lu 3331*22dc650dSSadaf Ebrahimi AllAny+ 3332*22dc650dSSadaf Ebrahimi prop Han 3333*22dc650dSSadaf Ebrahimi AllAny+ 3334*22dc650dSSadaf Ebrahimi prop Xan 3335*22dc650dSSadaf Ebrahimi AllAny+ 3336*22dc650dSSadaf Ebrahimi prop Xsp 3337*22dc650dSSadaf Ebrahimi AllAny+ 3338*22dc650dSSadaf Ebrahimi prop Xps 3339*22dc650dSSadaf Ebrahimi prop Xwd + 3340*22dc650dSSadaf Ebrahimi AllAny 3341*22dc650dSSadaf Ebrahimi AllAny+ 3342*22dc650dSSadaf Ebrahimi prop Xuc 3343*22dc650dSSadaf Ebrahimi Ket 3344*22dc650dSSadaf Ebrahimi End 3345*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3346*22dc650dSSadaf Ebrahimi 3347*22dc650dSSadaf Ebrahimi/\p{L&}+\p{Any} \p{L&}+\p{L&} \P{L&}+\p{L&} \p{L&}+\p{L} \p{L&}+\p{Lu} \p{L&}+\p{Han} \p{L&}+\p{Xan} \p{L&}+\P{Xan} \p{L&}+\p{Xsp} \p{L&}+\p{Xps} \p{Xwd}+\p{L&} \p{L&}+\p{Xuc}/Bx,ucp 3348*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3349*22dc650dSSadaf Ebrahimi Bra 3350*22dc650dSSadaf Ebrahimi prop Lc + 3351*22dc650dSSadaf Ebrahimi AllAny 3352*22dc650dSSadaf Ebrahimi prop Lc + 3353*22dc650dSSadaf Ebrahimi prop Lc 3354*22dc650dSSadaf Ebrahimi notprop Lc ++ 3355*22dc650dSSadaf Ebrahimi prop Lc 3356*22dc650dSSadaf Ebrahimi prop Lc + 3357*22dc650dSSadaf Ebrahimi prop L 3358*22dc650dSSadaf Ebrahimi prop Lc + 3359*22dc650dSSadaf Ebrahimi prop Lu 3360*22dc650dSSadaf Ebrahimi prop Lc + 3361*22dc650dSSadaf Ebrahimi prop Han 3362*22dc650dSSadaf Ebrahimi prop Lc + 3363*22dc650dSSadaf Ebrahimi prop Xan 3364*22dc650dSSadaf Ebrahimi prop Lc ++ 3365*22dc650dSSadaf Ebrahimi notprop Xan 3366*22dc650dSSadaf Ebrahimi prop Lc ++ 3367*22dc650dSSadaf Ebrahimi prop Xsp 3368*22dc650dSSadaf Ebrahimi prop Lc ++ 3369*22dc650dSSadaf Ebrahimi prop Xps 3370*22dc650dSSadaf Ebrahimi prop Xwd + 3371*22dc650dSSadaf Ebrahimi prop Lc 3372*22dc650dSSadaf Ebrahimi prop Lc + 3373*22dc650dSSadaf Ebrahimi prop Xuc 3374*22dc650dSSadaf Ebrahimi Ket 3375*22dc650dSSadaf Ebrahimi End 3376*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3377*22dc650dSSadaf Ebrahimi 3378*22dc650dSSadaf Ebrahimi/\p{N}+\p{Any} \p{N}+\p{L&} \p{N}+\p{L} \p{N}+\P{L} \p{N}+\P{N} \p{N}+\p{Lu} \p{N}+\p{Han} \p{N}+\p{Xan} \p{N}+\p{Xsp} \p{N}+\p{Xps} \p{Xwd}+\p{N} \p{N}+\p{Xuc}/Bx,ucp 3379*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3380*22dc650dSSadaf Ebrahimi Bra 3381*22dc650dSSadaf Ebrahimi prop N + 3382*22dc650dSSadaf Ebrahimi AllAny 3383*22dc650dSSadaf Ebrahimi prop N + 3384*22dc650dSSadaf Ebrahimi prop Lc 3385*22dc650dSSadaf Ebrahimi prop N ++ 3386*22dc650dSSadaf Ebrahimi prop L 3387*22dc650dSSadaf Ebrahimi prop N + 3388*22dc650dSSadaf Ebrahimi notprop L 3389*22dc650dSSadaf Ebrahimi prop N ++ 3390*22dc650dSSadaf Ebrahimi notprop N 3391*22dc650dSSadaf Ebrahimi prop N ++ 3392*22dc650dSSadaf Ebrahimi prop Lu 3393*22dc650dSSadaf Ebrahimi prop N + 3394*22dc650dSSadaf Ebrahimi prop Han 3395*22dc650dSSadaf Ebrahimi prop N + 3396*22dc650dSSadaf Ebrahimi prop Xan 3397*22dc650dSSadaf Ebrahimi prop N ++ 3398*22dc650dSSadaf Ebrahimi prop Xsp 3399*22dc650dSSadaf Ebrahimi prop N ++ 3400*22dc650dSSadaf Ebrahimi prop Xps 3401*22dc650dSSadaf Ebrahimi prop Xwd + 3402*22dc650dSSadaf Ebrahimi prop N 3403*22dc650dSSadaf Ebrahimi prop N + 3404*22dc650dSSadaf Ebrahimi prop Xuc 3405*22dc650dSSadaf Ebrahimi Ket 3406*22dc650dSSadaf Ebrahimi End 3407*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3408*22dc650dSSadaf Ebrahimi 3409*22dc650dSSadaf Ebrahimi/\p{Lu}+\p{Any} \p{Lu}+\p{L&} \p{Lu}+\p{L} \p{Lu}+\p{Lu} \P{Lu}+\p{Lu} \p{Lu}+\p{Nd} \p{Lu}+\P{Nd} \p{Lu}+\p{Han} \p{Lu}+\p{Xan} \p{Lu}+\p{Xsp} \p{Lu}+\p{Xps} \p{Xwd}+\p{Lu} \p{Lu}+\p{Xuc}/Bx,ucp 3410*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3411*22dc650dSSadaf Ebrahimi Bra 3412*22dc650dSSadaf Ebrahimi prop Lu + 3413*22dc650dSSadaf Ebrahimi AllAny 3414*22dc650dSSadaf Ebrahimi prop Lu + 3415*22dc650dSSadaf Ebrahimi prop Lc 3416*22dc650dSSadaf Ebrahimi prop Lu + 3417*22dc650dSSadaf Ebrahimi prop L 3418*22dc650dSSadaf Ebrahimi prop Lu + 3419*22dc650dSSadaf Ebrahimi prop Lu 3420*22dc650dSSadaf Ebrahimi notprop Lu ++ 3421*22dc650dSSadaf Ebrahimi prop Lu 3422*22dc650dSSadaf Ebrahimi prop Lu ++ 3423*22dc650dSSadaf Ebrahimi prop Nd 3424*22dc650dSSadaf Ebrahimi prop Lu + 3425*22dc650dSSadaf Ebrahimi notprop Nd 3426*22dc650dSSadaf Ebrahimi prop Lu + 3427*22dc650dSSadaf Ebrahimi prop Han 3428*22dc650dSSadaf Ebrahimi prop Lu + 3429*22dc650dSSadaf Ebrahimi prop Xan 3430*22dc650dSSadaf Ebrahimi prop Lu ++ 3431*22dc650dSSadaf Ebrahimi prop Xsp 3432*22dc650dSSadaf Ebrahimi prop Lu ++ 3433*22dc650dSSadaf Ebrahimi prop Xps 3434*22dc650dSSadaf Ebrahimi prop Xwd + 3435*22dc650dSSadaf Ebrahimi prop Lu 3436*22dc650dSSadaf Ebrahimi prop Lu + 3437*22dc650dSSadaf Ebrahimi prop Xuc 3438*22dc650dSSadaf Ebrahimi Ket 3439*22dc650dSSadaf Ebrahimi End 3440*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3441*22dc650dSSadaf Ebrahimi 3442*22dc650dSSadaf Ebrahimi/\p{Han}+\p{Lu} \p{Han}+\p{L&} \p{Han}+\p{L} \p{Han}+\p{Lu} \p{Han}+\p{Arabic} \p{Arabic}+\p{Arabic} \p{Han}+\p{Xan} \p{Han}+\p{Xsp} \p{Han}+\p{Xps} \p{Xwd}+\p{Han} \p{Han}+\p{Xuc}/Bx,ucp 3443*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3444*22dc650dSSadaf Ebrahimi Bra 3445*22dc650dSSadaf Ebrahimi prop Han + 3446*22dc650dSSadaf Ebrahimi prop Lu 3447*22dc650dSSadaf Ebrahimi prop Han + 3448*22dc650dSSadaf Ebrahimi prop Lc 3449*22dc650dSSadaf Ebrahimi prop Han + 3450*22dc650dSSadaf Ebrahimi prop L 3451*22dc650dSSadaf Ebrahimi prop Han + 3452*22dc650dSSadaf Ebrahimi prop Lu 3453*22dc650dSSadaf Ebrahimi prop Han ++ 3454*22dc650dSSadaf Ebrahimi prop Arabic 3455*22dc650dSSadaf Ebrahimi prop Arabic + 3456*22dc650dSSadaf Ebrahimi prop Arabic 3457*22dc650dSSadaf Ebrahimi prop Han + 3458*22dc650dSSadaf Ebrahimi prop Xan 3459*22dc650dSSadaf Ebrahimi prop Han + 3460*22dc650dSSadaf Ebrahimi prop Xsp 3461*22dc650dSSadaf Ebrahimi prop Han + 3462*22dc650dSSadaf Ebrahimi prop Xps 3463*22dc650dSSadaf Ebrahimi prop Xwd + 3464*22dc650dSSadaf Ebrahimi prop Han 3465*22dc650dSSadaf Ebrahimi prop Han + 3466*22dc650dSSadaf Ebrahimi prop Xuc 3467*22dc650dSSadaf Ebrahimi Ket 3468*22dc650dSSadaf Ebrahimi End 3469*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3470*22dc650dSSadaf Ebrahimi 3471*22dc650dSSadaf Ebrahimi/\p{Xan}+\p{Any} \p{Xan}+\p{L&} \P{Xan}+\p{L&} \p{Xan}+\p{L} \p{Xan}+\p{Lu} \p{Xan}+\p{Han} \p{Xan}+\p{Xan} \p{Xan}+\P{Xan} \p{Xan}+\p{Xsp} \p{Xan}+\p{Xps} \p{Xwd}+\p{Xan} \p{Xan}+\p{Xuc}/Bx,ucp 3472*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3473*22dc650dSSadaf Ebrahimi Bra 3474*22dc650dSSadaf Ebrahimi prop Xan + 3475*22dc650dSSadaf Ebrahimi AllAny 3476*22dc650dSSadaf Ebrahimi prop Xan + 3477*22dc650dSSadaf Ebrahimi prop Lc 3478*22dc650dSSadaf Ebrahimi notprop Xan ++ 3479*22dc650dSSadaf Ebrahimi prop Lc 3480*22dc650dSSadaf Ebrahimi prop Xan + 3481*22dc650dSSadaf Ebrahimi prop L 3482*22dc650dSSadaf Ebrahimi prop Xan + 3483*22dc650dSSadaf Ebrahimi prop Lu 3484*22dc650dSSadaf Ebrahimi prop Xan + 3485*22dc650dSSadaf Ebrahimi prop Han 3486*22dc650dSSadaf Ebrahimi prop Xan + 3487*22dc650dSSadaf Ebrahimi prop Xan 3488*22dc650dSSadaf Ebrahimi prop Xan ++ 3489*22dc650dSSadaf Ebrahimi notprop Xan 3490*22dc650dSSadaf Ebrahimi prop Xan ++ 3491*22dc650dSSadaf Ebrahimi prop Xsp 3492*22dc650dSSadaf Ebrahimi prop Xan ++ 3493*22dc650dSSadaf Ebrahimi prop Xps 3494*22dc650dSSadaf Ebrahimi prop Xwd + 3495*22dc650dSSadaf Ebrahimi prop Xan 3496*22dc650dSSadaf Ebrahimi prop Xan + 3497*22dc650dSSadaf Ebrahimi prop Xuc 3498*22dc650dSSadaf Ebrahimi Ket 3499*22dc650dSSadaf Ebrahimi End 3500*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3501*22dc650dSSadaf Ebrahimi 3502*22dc650dSSadaf Ebrahimi/\p{Xsp}+\p{Any} \p{Xsp}+\p{L&} \p{Xsp}+\p{L} \p{Xsp}+\p{Lu} \p{Xsp}+\p{Han} \p{Xsp}+\p{Xan} \p{Xsp}+\p{Xsp} \P{Xsp}+\p{Xsp} \p{Xsp}+\p{Xps} \p{Xwd}+\p{Xsp} \p{Xsp}+\p{Xuc}/Bx,ucp 3503*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3504*22dc650dSSadaf Ebrahimi Bra 3505*22dc650dSSadaf Ebrahimi prop Xsp + 3506*22dc650dSSadaf Ebrahimi AllAny 3507*22dc650dSSadaf Ebrahimi prop Xsp ++ 3508*22dc650dSSadaf Ebrahimi prop Lc 3509*22dc650dSSadaf Ebrahimi prop Xsp ++ 3510*22dc650dSSadaf Ebrahimi prop L 3511*22dc650dSSadaf Ebrahimi prop Xsp ++ 3512*22dc650dSSadaf Ebrahimi prop Lu 3513*22dc650dSSadaf Ebrahimi prop Xsp + 3514*22dc650dSSadaf Ebrahimi prop Han 3515*22dc650dSSadaf Ebrahimi prop Xsp ++ 3516*22dc650dSSadaf Ebrahimi prop Xan 3517*22dc650dSSadaf Ebrahimi prop Xsp + 3518*22dc650dSSadaf Ebrahimi prop Xsp 3519*22dc650dSSadaf Ebrahimi notprop Xsp ++ 3520*22dc650dSSadaf Ebrahimi prop Xsp 3521*22dc650dSSadaf Ebrahimi prop Xsp + 3522*22dc650dSSadaf Ebrahimi prop Xps 3523*22dc650dSSadaf Ebrahimi prop Xwd ++ 3524*22dc650dSSadaf Ebrahimi prop Xsp 3525*22dc650dSSadaf Ebrahimi prop Xsp + 3526*22dc650dSSadaf Ebrahimi prop Xuc 3527*22dc650dSSadaf Ebrahimi Ket 3528*22dc650dSSadaf Ebrahimi End 3529*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3530*22dc650dSSadaf Ebrahimi 3531*22dc650dSSadaf Ebrahimi/\p{Xwd}+\p{Any} \p{Xwd}+\p{L&} \p{Xwd}+\p{L} \p{Xwd}+\p{Lu} \p{Xwd}+\p{Han} \p{Xwd}+\p{Xan} \p{Xwd}+\p{Xsp} \p{Xwd}+\p{Xps} \p{Xwd}+\p{Xwd} \p{Xwd}+\P{Xwd} \p{Xwd}+\p{Xuc}/Bx,ucp 3532*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3533*22dc650dSSadaf Ebrahimi Bra 3534*22dc650dSSadaf Ebrahimi prop Xwd + 3535*22dc650dSSadaf Ebrahimi AllAny 3536*22dc650dSSadaf Ebrahimi prop Xwd + 3537*22dc650dSSadaf Ebrahimi prop Lc 3538*22dc650dSSadaf Ebrahimi prop Xwd + 3539*22dc650dSSadaf Ebrahimi prop L 3540*22dc650dSSadaf Ebrahimi prop Xwd + 3541*22dc650dSSadaf Ebrahimi prop Lu 3542*22dc650dSSadaf Ebrahimi prop Xwd + 3543*22dc650dSSadaf Ebrahimi prop Han 3544*22dc650dSSadaf Ebrahimi prop Xwd + 3545*22dc650dSSadaf Ebrahimi prop Xan 3546*22dc650dSSadaf Ebrahimi prop Xwd ++ 3547*22dc650dSSadaf Ebrahimi prop Xsp 3548*22dc650dSSadaf Ebrahimi prop Xwd ++ 3549*22dc650dSSadaf Ebrahimi prop Xps 3550*22dc650dSSadaf Ebrahimi prop Xwd + 3551*22dc650dSSadaf Ebrahimi prop Xwd 3552*22dc650dSSadaf Ebrahimi prop Xwd ++ 3553*22dc650dSSadaf Ebrahimi notprop Xwd 3554*22dc650dSSadaf Ebrahimi prop Xwd + 3555*22dc650dSSadaf Ebrahimi prop Xuc 3556*22dc650dSSadaf Ebrahimi Ket 3557*22dc650dSSadaf Ebrahimi End 3558*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3559*22dc650dSSadaf Ebrahimi 3560*22dc650dSSadaf Ebrahimi/\p{Xuc}+\p{Any} \p{Xuc}+\p{L&} \p{Xuc}+\p{L} \p{Xuc}+\p{Lu} \p{Xuc}+\p{Han} \p{Xuc}+\p{Xan} \p{Xuc}+\p{Xsp} \p{Xuc}+\p{Xps} \p{Xwd}+\p{Xuc} \p{Xuc}+\p{Xuc} \p{Xuc}+\P{Xuc}/Bx,ucp 3561*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3562*22dc650dSSadaf Ebrahimi Bra 3563*22dc650dSSadaf Ebrahimi prop Xuc + 3564*22dc650dSSadaf Ebrahimi AllAny 3565*22dc650dSSadaf Ebrahimi prop Xuc + 3566*22dc650dSSadaf Ebrahimi prop Lc 3567*22dc650dSSadaf Ebrahimi prop Xuc + 3568*22dc650dSSadaf Ebrahimi prop L 3569*22dc650dSSadaf Ebrahimi prop Xuc + 3570*22dc650dSSadaf Ebrahimi prop Lu 3571*22dc650dSSadaf Ebrahimi prop Xuc + 3572*22dc650dSSadaf Ebrahimi prop Han 3573*22dc650dSSadaf Ebrahimi prop Xuc + 3574*22dc650dSSadaf Ebrahimi prop Xan 3575*22dc650dSSadaf Ebrahimi prop Xuc + 3576*22dc650dSSadaf Ebrahimi prop Xsp 3577*22dc650dSSadaf Ebrahimi prop Xuc + 3578*22dc650dSSadaf Ebrahimi prop Xps 3579*22dc650dSSadaf Ebrahimi prop Xwd + 3580*22dc650dSSadaf Ebrahimi prop Xuc 3581*22dc650dSSadaf Ebrahimi prop Xuc + 3582*22dc650dSSadaf Ebrahimi prop Xuc 3583*22dc650dSSadaf Ebrahimi prop Xuc ++ 3584*22dc650dSSadaf Ebrahimi notprop Xuc 3585*22dc650dSSadaf Ebrahimi Ket 3586*22dc650dSSadaf Ebrahimi End 3587*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3588*22dc650dSSadaf Ebrahimi 3589*22dc650dSSadaf Ebrahimi/\p{N}+\p{Ll} \p{N}+\p{Nd} \p{N}+\P{Nd}/Bx,ucp 3590*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3591*22dc650dSSadaf Ebrahimi Bra 3592*22dc650dSSadaf Ebrahimi prop N ++ 3593*22dc650dSSadaf Ebrahimi prop Ll 3594*22dc650dSSadaf Ebrahimi prop N + 3595*22dc650dSSadaf Ebrahimi prop Nd 3596*22dc650dSSadaf Ebrahimi prop N + 3597*22dc650dSSadaf Ebrahimi notprop Nd 3598*22dc650dSSadaf Ebrahimi Ket 3599*22dc650dSSadaf Ebrahimi End 3600*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3601*22dc650dSSadaf Ebrahimi 3602*22dc650dSSadaf Ebrahimi/\p{Xan}+\p{L} \p{Xan}+\p{N} \p{Xan}+\p{C} \p{Xan}+\P{L} \P{Xan}+\p{N} \p{Xan}+\P{C}/Bx,ucp 3603*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3604*22dc650dSSadaf Ebrahimi Bra 3605*22dc650dSSadaf Ebrahimi prop Xan + 3606*22dc650dSSadaf Ebrahimi prop L 3607*22dc650dSSadaf Ebrahimi prop Xan + 3608*22dc650dSSadaf Ebrahimi prop N 3609*22dc650dSSadaf Ebrahimi prop Xan ++ 3610*22dc650dSSadaf Ebrahimi prop C 3611*22dc650dSSadaf Ebrahimi prop Xan + 3612*22dc650dSSadaf Ebrahimi notprop L 3613*22dc650dSSadaf Ebrahimi notprop Xan ++ 3614*22dc650dSSadaf Ebrahimi prop N 3615*22dc650dSSadaf Ebrahimi prop Xan + 3616*22dc650dSSadaf Ebrahimi notprop C 3617*22dc650dSSadaf Ebrahimi Ket 3618*22dc650dSSadaf Ebrahimi End 3619*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3620*22dc650dSSadaf Ebrahimi 3621*22dc650dSSadaf Ebrahimi/\p{L}+\p{Xan} \p{N}+\p{Xan} \p{C}+\p{Xan} \P{L}+\p{Xan} \p{N}+\p{Xan} \P{C}+\p{Xan} \p{L}+\P{Xan}/Bx,ucp 3622*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3623*22dc650dSSadaf Ebrahimi Bra 3624*22dc650dSSadaf Ebrahimi prop L + 3625*22dc650dSSadaf Ebrahimi prop Xan 3626*22dc650dSSadaf Ebrahimi prop N + 3627*22dc650dSSadaf Ebrahimi prop Xan 3628*22dc650dSSadaf Ebrahimi prop C ++ 3629*22dc650dSSadaf Ebrahimi prop Xan 3630*22dc650dSSadaf Ebrahimi notprop L + 3631*22dc650dSSadaf Ebrahimi prop Xan 3632*22dc650dSSadaf Ebrahimi prop N + 3633*22dc650dSSadaf Ebrahimi prop Xan 3634*22dc650dSSadaf Ebrahimi notprop C + 3635*22dc650dSSadaf Ebrahimi prop Xan 3636*22dc650dSSadaf Ebrahimi prop L ++ 3637*22dc650dSSadaf Ebrahimi notprop Xan 3638*22dc650dSSadaf Ebrahimi Ket 3639*22dc650dSSadaf Ebrahimi End 3640*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3641*22dc650dSSadaf Ebrahimi 3642*22dc650dSSadaf Ebrahimi/\p{Xan}+\p{Lu} \p{Xan}+\p{Nd} \p{Xan}+\p{Cc} \p{Xan}+\P{Ll} \P{Xan}+\p{No} \p{Xan}+\P{Cf}/Bx,ucp 3643*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3644*22dc650dSSadaf Ebrahimi Bra 3645*22dc650dSSadaf Ebrahimi prop Xan + 3646*22dc650dSSadaf Ebrahimi prop Lu 3647*22dc650dSSadaf Ebrahimi prop Xan + 3648*22dc650dSSadaf Ebrahimi prop Nd 3649*22dc650dSSadaf Ebrahimi prop Xan ++ 3650*22dc650dSSadaf Ebrahimi prop Cc 3651*22dc650dSSadaf Ebrahimi prop Xan + 3652*22dc650dSSadaf Ebrahimi notprop Ll 3653*22dc650dSSadaf Ebrahimi notprop Xan ++ 3654*22dc650dSSadaf Ebrahimi prop No 3655*22dc650dSSadaf Ebrahimi prop Xan + 3656*22dc650dSSadaf Ebrahimi notprop Cf 3657*22dc650dSSadaf Ebrahimi Ket 3658*22dc650dSSadaf Ebrahimi End 3659*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3660*22dc650dSSadaf Ebrahimi 3661*22dc650dSSadaf Ebrahimi/\p{Lu}+\p{Xan} \p{Nd}+\p{Xan} \p{Cs}+\p{Xan} \P{Lt}+\p{Xan} \p{Nl}+\p{Xan} \P{Cc}+\p{Xan} \p{Lt}+\P{Xan}/Bx,ucp 3662*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3663*22dc650dSSadaf Ebrahimi Bra 3664*22dc650dSSadaf Ebrahimi prop Lu + 3665*22dc650dSSadaf Ebrahimi prop Xan 3666*22dc650dSSadaf Ebrahimi prop Nd + 3667*22dc650dSSadaf Ebrahimi prop Xan 3668*22dc650dSSadaf Ebrahimi prop Cs ++ 3669*22dc650dSSadaf Ebrahimi prop Xan 3670*22dc650dSSadaf Ebrahimi notprop Lt + 3671*22dc650dSSadaf Ebrahimi prop Xan 3672*22dc650dSSadaf Ebrahimi prop Nl + 3673*22dc650dSSadaf Ebrahimi prop Xan 3674*22dc650dSSadaf Ebrahimi notprop Cc + 3675*22dc650dSSadaf Ebrahimi prop Xan 3676*22dc650dSSadaf Ebrahimi prop Lt ++ 3677*22dc650dSSadaf Ebrahimi notprop Xan 3678*22dc650dSSadaf Ebrahimi Ket 3679*22dc650dSSadaf Ebrahimi End 3680*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3681*22dc650dSSadaf Ebrahimi 3682*22dc650dSSadaf Ebrahimi/\w+\p{P} \w+\p{Po} \w+\s \p{Xan}+\s \s+\p{Xan} \s+\w/Bx,ucp 3683*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3684*22dc650dSSadaf Ebrahimi Bra 3685*22dc650dSSadaf Ebrahimi prop Xwd + 3686*22dc650dSSadaf Ebrahimi prop P 3687*22dc650dSSadaf Ebrahimi prop Xwd + 3688*22dc650dSSadaf Ebrahimi prop Po 3689*22dc650dSSadaf Ebrahimi prop Xwd ++ 3690*22dc650dSSadaf Ebrahimi prop Xsp 3691*22dc650dSSadaf Ebrahimi prop Xan ++ 3692*22dc650dSSadaf Ebrahimi prop Xsp 3693*22dc650dSSadaf Ebrahimi prop Xsp ++ 3694*22dc650dSSadaf Ebrahimi prop Xan 3695*22dc650dSSadaf Ebrahimi prop Xsp ++ 3696*22dc650dSSadaf Ebrahimi prop Xwd 3697*22dc650dSSadaf Ebrahimi Ket 3698*22dc650dSSadaf Ebrahimi End 3699*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3700*22dc650dSSadaf Ebrahimi 3701*22dc650dSSadaf Ebrahimi/\w+\P{P} \W+\p{Po} \w+\S \P{Xan}+\s \s+\P{Xan} \s+\W/Bx,ucp 3702*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3703*22dc650dSSadaf Ebrahimi Bra 3704*22dc650dSSadaf Ebrahimi prop Xwd + 3705*22dc650dSSadaf Ebrahimi notprop P 3706*22dc650dSSadaf Ebrahimi notprop Xwd + 3707*22dc650dSSadaf Ebrahimi prop Po 3708*22dc650dSSadaf Ebrahimi prop Xwd + 3709*22dc650dSSadaf Ebrahimi notprop Xsp 3710*22dc650dSSadaf Ebrahimi notprop Xan + 3711*22dc650dSSadaf Ebrahimi prop Xsp 3712*22dc650dSSadaf Ebrahimi prop Xsp + 3713*22dc650dSSadaf Ebrahimi notprop Xan 3714*22dc650dSSadaf Ebrahimi prop Xsp + 3715*22dc650dSSadaf Ebrahimi notprop Xwd 3716*22dc650dSSadaf Ebrahimi Ket 3717*22dc650dSSadaf Ebrahimi End 3718*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3719*22dc650dSSadaf Ebrahimi 3720*22dc650dSSadaf Ebrahimi/\w+\p{Po} \w+\p{Pc} \W+\p{Po} \W+\p{Pc} \w+\P{Po} \w+\P{Pc}/Bx,ucp 3721*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3722*22dc650dSSadaf Ebrahimi Bra 3723*22dc650dSSadaf Ebrahimi prop Xwd + 3724*22dc650dSSadaf Ebrahimi prop Po 3725*22dc650dSSadaf Ebrahimi prop Xwd ++ 3726*22dc650dSSadaf Ebrahimi prop Pc 3727*22dc650dSSadaf Ebrahimi notprop Xwd + 3728*22dc650dSSadaf Ebrahimi prop Po 3729*22dc650dSSadaf Ebrahimi notprop Xwd + 3730*22dc650dSSadaf Ebrahimi prop Pc 3731*22dc650dSSadaf Ebrahimi prop Xwd + 3732*22dc650dSSadaf Ebrahimi notprop Po 3733*22dc650dSSadaf Ebrahimi prop Xwd + 3734*22dc650dSSadaf Ebrahimi notprop Pc 3735*22dc650dSSadaf Ebrahimi Ket 3736*22dc650dSSadaf Ebrahimi End 3737*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3738*22dc650dSSadaf Ebrahimi 3739*22dc650dSSadaf Ebrahimi/\p{Nl}+\p{Xan} \P{Nl}+\p{Xan} \p{Nl}+\P{Xan} \P{Nl}+\P{Xan}/Bx,ucp 3740*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3741*22dc650dSSadaf Ebrahimi Bra 3742*22dc650dSSadaf Ebrahimi prop Nl + 3743*22dc650dSSadaf Ebrahimi prop Xan 3744*22dc650dSSadaf Ebrahimi notprop Nl + 3745*22dc650dSSadaf Ebrahimi prop Xan 3746*22dc650dSSadaf Ebrahimi prop Nl ++ 3747*22dc650dSSadaf Ebrahimi notprop Xan 3748*22dc650dSSadaf Ebrahimi notprop Nl + 3749*22dc650dSSadaf Ebrahimi notprop Xan 3750*22dc650dSSadaf Ebrahimi Ket 3751*22dc650dSSadaf Ebrahimi End 3752*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3753*22dc650dSSadaf Ebrahimi 3754*22dc650dSSadaf Ebrahimi/\p{Xan}+\p{Nl} \P{Xan}+\p{Nl} \p{Xan}+\P{Nl} \P{Xan}+\P{Nl}/Bx,ucp 3755*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3756*22dc650dSSadaf Ebrahimi Bra 3757*22dc650dSSadaf Ebrahimi prop Xan + 3758*22dc650dSSadaf Ebrahimi prop Nl 3759*22dc650dSSadaf Ebrahimi notprop Xan ++ 3760*22dc650dSSadaf Ebrahimi prop Nl 3761*22dc650dSSadaf Ebrahimi prop Xan + 3762*22dc650dSSadaf Ebrahimi notprop Nl 3763*22dc650dSSadaf Ebrahimi notprop Xan + 3764*22dc650dSSadaf Ebrahimi notprop Nl 3765*22dc650dSSadaf Ebrahimi Ket 3766*22dc650dSSadaf Ebrahimi End 3767*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3768*22dc650dSSadaf Ebrahimi 3769*22dc650dSSadaf Ebrahimi/\p{Xan}+\p{Nd} \P{Xan}+\p{Nd} \p{Xan}+\P{Nd} \P{Xan}+\P{Nd}/Bx,ucp 3770*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3771*22dc650dSSadaf Ebrahimi Bra 3772*22dc650dSSadaf Ebrahimi prop Xan + 3773*22dc650dSSadaf Ebrahimi prop Nd 3774*22dc650dSSadaf Ebrahimi notprop Xan ++ 3775*22dc650dSSadaf Ebrahimi prop Nd 3776*22dc650dSSadaf Ebrahimi prop Xan + 3777*22dc650dSSadaf Ebrahimi notprop Nd 3778*22dc650dSSadaf Ebrahimi notprop Xan + 3779*22dc650dSSadaf Ebrahimi notprop Nd 3780*22dc650dSSadaf Ebrahimi Ket 3781*22dc650dSSadaf Ebrahimi End 3782*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3783*22dc650dSSadaf Ebrahimi 3784*22dc650dSSadaf Ebrahimi# End auto-possessification tests 3785*22dc650dSSadaf Ebrahimi 3786*22dc650dSSadaf Ebrahimi/\w+/B,utf,ucp,auto_callout 3787*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3788*22dc650dSSadaf Ebrahimi Bra 3789*22dc650dSSadaf Ebrahimi Callout 255 0 3 3790*22dc650dSSadaf Ebrahimi prop Xwd ++ 3791*22dc650dSSadaf Ebrahimi Callout 255 3 0 3792*22dc650dSSadaf Ebrahimi Ket 3793*22dc650dSSadaf Ebrahimi End 3794*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3795*22dc650dSSadaf Ebrahimi abcd 3796*22dc650dSSadaf Ebrahimi--->abcd 3797*22dc650dSSadaf Ebrahimi +0 ^ \w+ 3798*22dc650dSSadaf Ebrahimi +3 ^ ^ End of pattern 3799*22dc650dSSadaf Ebrahimi 0: abcd 3800*22dc650dSSadaf Ebrahimi 3801*22dc650dSSadaf Ebrahimi/[\p{N}]?+/B,no_auto_possess 3802*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3803*22dc650dSSadaf Ebrahimi Bra 3804*22dc650dSSadaf Ebrahimi [\p{N}]?+ 3805*22dc650dSSadaf Ebrahimi Ket 3806*22dc650dSSadaf Ebrahimi End 3807*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3808*22dc650dSSadaf Ebrahimi 3809*22dc650dSSadaf Ebrahimi/[\p{L}ab]{2,3}+/B,no_auto_possess 3810*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3811*22dc650dSSadaf Ebrahimi Bra 3812*22dc650dSSadaf Ebrahimi [ab\p{L}]{2,3}+ 3813*22dc650dSSadaf Ebrahimi Ket 3814*22dc650dSSadaf Ebrahimi End 3815*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3816*22dc650dSSadaf Ebrahimi 3817*22dc650dSSadaf Ebrahimi/\D+\X \d+\X \S+\X \s+\X \W+\X \w+\X \R+\X \H+\X \h+\X \V+\X \v+\X a+\X \n+\X .+\X/Bx 3818*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3819*22dc650dSSadaf Ebrahimi Bra 3820*22dc650dSSadaf Ebrahimi \D+ 3821*22dc650dSSadaf Ebrahimi extuni 3822*22dc650dSSadaf Ebrahimi \d+ 3823*22dc650dSSadaf Ebrahimi extuni 3824*22dc650dSSadaf Ebrahimi \S+ 3825*22dc650dSSadaf Ebrahimi extuni 3826*22dc650dSSadaf Ebrahimi \s+ 3827*22dc650dSSadaf Ebrahimi extuni 3828*22dc650dSSadaf Ebrahimi \W+ 3829*22dc650dSSadaf Ebrahimi extuni 3830*22dc650dSSadaf Ebrahimi \w+ 3831*22dc650dSSadaf Ebrahimi extuni 3832*22dc650dSSadaf Ebrahimi \R+ 3833*22dc650dSSadaf Ebrahimi extuni 3834*22dc650dSSadaf Ebrahimi \H+ 3835*22dc650dSSadaf Ebrahimi extuni 3836*22dc650dSSadaf Ebrahimi \h+ 3837*22dc650dSSadaf Ebrahimi extuni 3838*22dc650dSSadaf Ebrahimi \V+ 3839*22dc650dSSadaf Ebrahimi extuni 3840*22dc650dSSadaf Ebrahimi \v+ 3841*22dc650dSSadaf Ebrahimi extuni 3842*22dc650dSSadaf Ebrahimi a+ 3843*22dc650dSSadaf Ebrahimi extuni 3844*22dc650dSSadaf Ebrahimi \x0a+ 3845*22dc650dSSadaf Ebrahimi extuni 3846*22dc650dSSadaf Ebrahimi Any+ 3847*22dc650dSSadaf Ebrahimi extuni 3848*22dc650dSSadaf Ebrahimi Ket 3849*22dc650dSSadaf Ebrahimi End 3850*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3851*22dc650dSSadaf Ebrahimi 3852*22dc650dSSadaf Ebrahimi/.+\X/Bsx 3853*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3854*22dc650dSSadaf Ebrahimi Bra 3855*22dc650dSSadaf Ebrahimi AllAny+ 3856*22dc650dSSadaf Ebrahimi extuni 3857*22dc650dSSadaf Ebrahimi Ket 3858*22dc650dSSadaf Ebrahimi End 3859*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3860*22dc650dSSadaf Ebrahimi 3861*22dc650dSSadaf Ebrahimi/\X+$/Bmx 3862*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3863*22dc650dSSadaf Ebrahimi Bra 3864*22dc650dSSadaf Ebrahimi extuni+ 3865*22dc650dSSadaf Ebrahimi /m $ 3866*22dc650dSSadaf Ebrahimi Ket 3867*22dc650dSSadaf Ebrahimi End 3868*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3869*22dc650dSSadaf Ebrahimi 3870*22dc650dSSadaf Ebrahimi/\X+\D \X+\d \X+\S \X+\s \X+\W \X+\w \X+. \X+\R \X+\H \X+\h \X+\V \X+\v \X+\X \X+\Z \X+\z \X+$/Bx 3871*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3872*22dc650dSSadaf Ebrahimi Bra 3873*22dc650dSSadaf Ebrahimi extuni+ 3874*22dc650dSSadaf Ebrahimi \D 3875*22dc650dSSadaf Ebrahimi extuni+ 3876*22dc650dSSadaf Ebrahimi \d 3877*22dc650dSSadaf Ebrahimi extuni+ 3878*22dc650dSSadaf Ebrahimi \S 3879*22dc650dSSadaf Ebrahimi extuni+ 3880*22dc650dSSadaf Ebrahimi \s 3881*22dc650dSSadaf Ebrahimi extuni+ 3882*22dc650dSSadaf Ebrahimi \W 3883*22dc650dSSadaf Ebrahimi extuni+ 3884*22dc650dSSadaf Ebrahimi \w 3885*22dc650dSSadaf Ebrahimi extuni+ 3886*22dc650dSSadaf Ebrahimi Any 3887*22dc650dSSadaf Ebrahimi extuni+ 3888*22dc650dSSadaf Ebrahimi \R 3889*22dc650dSSadaf Ebrahimi extuni+ 3890*22dc650dSSadaf Ebrahimi \H 3891*22dc650dSSadaf Ebrahimi extuni+ 3892*22dc650dSSadaf Ebrahimi \h 3893*22dc650dSSadaf Ebrahimi extuni+ 3894*22dc650dSSadaf Ebrahimi \V 3895*22dc650dSSadaf Ebrahimi extuni+ 3896*22dc650dSSadaf Ebrahimi \v 3897*22dc650dSSadaf Ebrahimi extuni+ 3898*22dc650dSSadaf Ebrahimi extuni 3899*22dc650dSSadaf Ebrahimi extuni+ 3900*22dc650dSSadaf Ebrahimi \Z 3901*22dc650dSSadaf Ebrahimi extuni++ 3902*22dc650dSSadaf Ebrahimi \z 3903*22dc650dSSadaf Ebrahimi extuni+ 3904*22dc650dSSadaf Ebrahimi $ 3905*22dc650dSSadaf Ebrahimi Ket 3906*22dc650dSSadaf Ebrahimi End 3907*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3908*22dc650dSSadaf Ebrahimi 3909*22dc650dSSadaf Ebrahimi/\d+\s{0,5}=\s*\S?=\w{0,4}\W*/B,utf,ucp 3910*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3911*22dc650dSSadaf Ebrahimi Bra 3912*22dc650dSSadaf Ebrahimi prop Nd ++ 3913*22dc650dSSadaf Ebrahimi prop Xsp {0,5}+ 3914*22dc650dSSadaf Ebrahimi = 3915*22dc650dSSadaf Ebrahimi prop Xsp *+ 3916*22dc650dSSadaf Ebrahimi notprop Xsp ? 3917*22dc650dSSadaf Ebrahimi = 3918*22dc650dSSadaf Ebrahimi prop Xwd {0,4}+ 3919*22dc650dSSadaf Ebrahimi notprop Xwd *+ 3920*22dc650dSSadaf Ebrahimi Ket 3921*22dc650dSSadaf Ebrahimi End 3922*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3923*22dc650dSSadaf Ebrahimi 3924*22dc650dSSadaf Ebrahimi/[RST]+/Bi,utf,ucp 3925*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3926*22dc650dSSadaf Ebrahimi Bra 3927*22dc650dSSadaf Ebrahimi [R-Tr-t\x{17f}]++ 3928*22dc650dSSadaf Ebrahimi Ket 3929*22dc650dSSadaf Ebrahimi End 3930*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3931*22dc650dSSadaf Ebrahimi 3932*22dc650dSSadaf Ebrahimi/[R-T]+/Bi,utf,ucp 3933*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3934*22dc650dSSadaf Ebrahimi Bra 3935*22dc650dSSadaf Ebrahimi [R-Tr-t\x{17f}]++ 3936*22dc650dSSadaf Ebrahimi Ket 3937*22dc650dSSadaf Ebrahimi End 3938*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3939*22dc650dSSadaf Ebrahimi 3940*22dc650dSSadaf Ebrahimi/[Q-U]+/Bi,utf,ucp 3941*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3942*22dc650dSSadaf Ebrahimi Bra 3943*22dc650dSSadaf Ebrahimi [Q-Uq-u\x{17f}]++ 3944*22dc650dSSadaf Ebrahimi Ket 3945*22dc650dSSadaf Ebrahimi End 3946*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3947*22dc650dSSadaf Ebrahimi 3948*22dc650dSSadaf Ebrahimi/^s?c/Iim,utf 3949*22dc650dSSadaf EbrahimiCapture group count = 0 3950*22dc650dSSadaf EbrahimiOptions: caseless multiline utf 3951*22dc650dSSadaf EbrahimiFirst code unit at start or follows newline 3952*22dc650dSSadaf EbrahimiLast code unit = 'c' (caseless) 3953*22dc650dSSadaf EbrahimiSubject length lower bound = 1 3954*22dc650dSSadaf Ebrahimi scat 3955*22dc650dSSadaf Ebrahimi 0: sc 3956*22dc650dSSadaf Ebrahimi 3957*22dc650dSSadaf Ebrahimi/\X?abc/utf,no_start_optimize 3958*22dc650dSSadaf Ebrahimi \xff\x7f\x00\x00\x03\x00\x41\xcc\x80\x41\x{300}\x61\x62\x63\x00\=no_utf_check,offset=06 3959*22dc650dSSadaf Ebrahimi 0: A\x{300}abc 3960*22dc650dSSadaf Ebrahimi 3961*22dc650dSSadaf Ebrahimi/\x{100}\x{200}\K\x{300}/utf,startchar 3962*22dc650dSSadaf Ebrahimi \x{100}\x{200}\x{300} 3963*22dc650dSSadaf Ebrahimi 0: \x{100}\x{200}\x{300} 3964*22dc650dSSadaf Ebrahimi ^^^^^^^^^^^^^^ 3965*22dc650dSSadaf Ebrahimi 3966*22dc650dSSadaf Ebrahimi# Test UTF characters in a substitution 3967*22dc650dSSadaf Ebrahimi 3968*22dc650dSSadaf Ebrahimi/ábc/utf,replace=XሴZ 3969*22dc650dSSadaf Ebrahimi 123ábc123 3970*22dc650dSSadaf Ebrahimi 1: 123X\x{1234}Z123 3971*22dc650dSSadaf Ebrahimi 3972*22dc650dSSadaf Ebrahimi/(?<=abc)(|def)/g,utf,replace=<$0> 3973*22dc650dSSadaf Ebrahimi 123abcáyzabcdef789abcሴqr 3974*22dc650dSSadaf Ebrahimi 4: 123abc<>\x{e1}yzabc<><def>789abc<>\x{1234}qr 3975*22dc650dSSadaf Ebrahimi 3976*22dc650dSSadaf Ebrahimi/[A-`]/iB,utf 3977*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3978*22dc650dSSadaf Ebrahimi Bra 3979*22dc650dSSadaf Ebrahimi [A-z\x{212a}\x{17f}] 3980*22dc650dSSadaf Ebrahimi Ket 3981*22dc650dSSadaf Ebrahimi End 3982*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 3983*22dc650dSSadaf Ebrahimi abcdefghijklmno 3984*22dc650dSSadaf Ebrahimi 0: a 3985*22dc650dSSadaf Ebrahimi 3986*22dc650dSSadaf Ebrahimi/(?<=\K\x{17f})/g,utf,aftertext,allow_lookaround_bsk 3987*22dc650dSSadaf Ebrahimi \x{17f}\x{17f}\x{17f}\x{17f}\x{17f} 3988*22dc650dSSadaf Ebrahimi 0: \x{17f} 3989*22dc650dSSadaf Ebrahimi 0+ \x{17f}\x{17f}\x{17f}\x{17f} 3990*22dc650dSSadaf Ebrahimi 0: \x{17f} 3991*22dc650dSSadaf Ebrahimi 0+ \x{17f}\x{17f}\x{17f} 3992*22dc650dSSadaf Ebrahimi 0: \x{17f} 3993*22dc650dSSadaf Ebrahimi 0+ \x{17f}\x{17f} 3994*22dc650dSSadaf Ebrahimi 0: \x{17f} 3995*22dc650dSSadaf Ebrahimi 0+ \x{17f} 3996*22dc650dSSadaf Ebrahimi 0: \x{17f} 3997*22dc650dSSadaf Ebrahimi 0+ 3998*22dc650dSSadaf Ebrahimi 3999*22dc650dSSadaf Ebrahimi/(?<=\K\x{17f})/altglobal,utf,aftertext,allow_lookaround_bsk 4000*22dc650dSSadaf Ebrahimi \x{17f}\x{17f}\x{17f}\x{17f}\x{17f} 4001*22dc650dSSadaf Ebrahimi 0: \x{17f} 4002*22dc650dSSadaf Ebrahimi 0+ \x{17f}\x{17f}\x{17f}\x{17f} 4003*22dc650dSSadaf Ebrahimi 0: \x{17f} 4004*22dc650dSSadaf Ebrahimi 0+ \x{17f}\x{17f}\x{17f} 4005*22dc650dSSadaf Ebrahimi 0: \x{17f} 4006*22dc650dSSadaf Ebrahimi 0+ \x{17f}\x{17f} 4007*22dc650dSSadaf Ebrahimi 0: \x{17f} 4008*22dc650dSSadaf Ebrahimi 0+ \x{17f} 4009*22dc650dSSadaf Ebrahimi 0: \x{17f} 4010*22dc650dSSadaf Ebrahimi 0+ 4011*22dc650dSSadaf Ebrahimi 4012*22dc650dSSadaf Ebrahimi"\xa\xf<(.\pZ*\P{Xwd}+^\xa8\3'3yq.::?(?J:()\xd1+!~:3'(8?:)':(?'d'(?'d'^u]!.+.+\\A\Ah(n+?9){7}+\K;(?'X'u'(?'c'(?'z'(?<y>\xb::\xf0'|\xd3(\xae?'w(z\x8?P>l)\x8?P>a)'\H\R\xd1+!!~:3'(?:h$N{26875}\W+?\\=D{2}\x89(?i:Uy0\N({2\xa(\v\x85*){y*\A(()\p{L}+?\P{^Xan}'+?\xff\+pS\?|).{;y*\A(()\p{L}+?\8}\d?1(|)(/1){7}.+[Lp{Me}].\s\xdcC*?(?(<y>))(?<!^)$C((;*?(R))+(\xbf(R))\x8a\X*?\x8a\xb\xd1^9\3*+(\xc1,\k'R'\xb4)\xcc(z\z(?J)(?'X'\x1b(\xb\xd1^9\?'3*+P{^Xan}+?\xff\+(\xc1.]k+\xb'Pm'\xb4)\xcc4f\xa7'\xd1V(?i:U,{2,2})'(?'X'))?-%--\x95$9*\4'|\xd1(\x9c''%\x94$9)#(?'R')3\x7?('P\xed7'\xa8\xb1^u\xeaw\1\0\0\(|(?1){7}.+[\p{Me}].\s\xdcC*^\x14?(?(<y>))(?<!^)$C((;*?(R*?))+(?(R)\x8a\X*?\x8a\xb\xd1^9\3*+|(\xc1,\k'R'\xb4)\xcc! z)\z(?JJ)(?'X';(\xb\xd1^9\?'3*+(\xc1.]k+\xb'Pm'\xb4))':(?'d')(?'RD'(d')|)|$)'|(?<x>\g{d});\g{x}\x11\g{d}\x81\|$((?'X'\'X'(?'W''\x92()'9'\x83*))\xba*\!?^ <){)':;\xcc4'\xd1'(?'X'28))?-%--\x95$9*\4'|\xd1((''e\x94*$9:)*#(?'R')3)\x7?('P\xed')\\x16:;()\x1e\x10*:(?<y>)\xd1+0!~:(?)'d'E:yD!\s(?'R'\x1e;\x10:U))|'\x9g!\xb0*){)\\x16:;()\x1e\x10\x87*:(?<y>)\xd1+!~:(?)'}'\d'E:yD!\s(?'R'\x1e;\x10:U))|'))|)g!\xb0*R+9{29+)#(?'P'})*?pS\{3,}\x85,{0,}l{*UTF)(\xe{7}){3722,{9,}d{2,?|))|{)\(A?&d}}{\xa,}2}){3,}7,l{)22}(,}l:7{2,4}}29\x19+)#?'P'})*v?))\x5" 4013*22dc650dSSadaf EbrahimiFailed: error 122 at offset 1227: unmatched closing parenthesis 4014*22dc650dSSadaf Ebrahimi 4015*22dc650dSSadaf Ebrahimi/$(&.+[\p{Me}].\s\xdcC*?(?(<y>))(?<!^)$C((;*?(R))+(?(R)){0,6}?|){12\x8a\X*?\x8a\x0b\xd1^9\3*+(\xc1,\k'P'\xb4)\xcc(z\z(?JJ)(?'X'8};(\x0b\xd1^9\?'3*+(\xc1.]k+\x0b'Pm'\xb4\xcc4'\xd1'(?'X'))?-%--\x95$9*\4'|\xd1(''%\x95*$9)#(?'R')3\x07?('P\xed')\\x16:;()\x1e\x10*:(?<y>)\xd1+!~:(?)''(d'E:yD!\s(?'R'\x1e;\x10:U))|')g!\xb0*){29+))#(?'P'})*?/ 4016*22dc650dSSadaf Ebrahimi 4017*22dc650dSSadaf Ebrahimi"(*UTF)(*UCP)(.UTF).+X(\V+;\^(\D|)!999}(?(?C{7(?C')\H*\S*/^\x5\xa\\xd3\x85n?(;\D*(?m).[^mH+((*UCP)(*U:F)})(?!^)(?'" 4018*22dc650dSSadaf EbrahimiFailed: error 162 at offset 113: subpattern name expected 4019*22dc650dSSadaf Ebrahimi 4020*22dc650dSSadaf Ebrahimi/[\pS#moq]/ 4021*22dc650dSSadaf Ebrahimi = 4022*22dc650dSSadaf Ebrahimi 0: = 4023*22dc650dSSadaf Ebrahimi 4024*22dc650dSSadaf Ebrahimi/(*:a\x{12345}b\t(d\)c)xxx/utf,alt_verbnames,mark 4025*22dc650dSSadaf Ebrahimi cxxxz 4026*22dc650dSSadaf Ebrahimi 0: xxx 4027*22dc650dSSadaf EbrahimiMK: a\x{12345}b\x{09}(d)c 4028*22dc650dSSadaf Ebrahimi 4029*22dc650dSSadaf Ebrahimi/abcd/utf,replace=x\x{824}y\o{3333}z(\Q12\$34$$\x34\E5$$),substitute_extended 4030*22dc650dSSadaf Ebrahimi abcd 4031*22dc650dSSadaf Ebrahimi 1: x\x{824}y\x{6db}z(12\$34$$\x345$) 4032*22dc650dSSadaf Ebrahimi 4033*22dc650dSSadaf Ebrahimi/a(\x{e0}\x{101})(\x{c0}\x{102})/utf,replace=a\u$1\U$1\E$1\l$2\L$2\Eab\U\x{e0}\x{101}\L\x{d0}\x{160}\EDone,substitute_extended 4034*22dc650dSSadaf Ebrahimi a\x{e0}\x{101}\x{c0}\x{102} 4035*22dc650dSSadaf Ebrahimi 1: a\x{c0}\x{101}\x{c0}\x{100}\x{e0}\x{101}\x{e0}\x{102}\x{e0}\x{103}ab\x{c0}\x{100}\x{f0}\x{161}Done 4036*22dc650dSSadaf Ebrahimi 4037*22dc650dSSadaf Ebrahimi/((?<digit>\d)|(?<letter>\p{L}))/g,substitute_extended,replace=<${digit:+digit; :not digit; }${letter:+letter:not a letter}> 4038*22dc650dSSadaf Ebrahimi ab12cde 4039*22dc650dSSadaf Ebrahimi 7: <not digit; letter><not digit; letter><digit; not a letter><digit; not a letter><not digit; letter><not digit; letter><not digit; letter> 4040*22dc650dSSadaf Ebrahimi 4041*22dc650dSSadaf Ebrahimi/(*UCP)(*UTF)[[:>:]]X/B 4042*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4043*22dc650dSSadaf Ebrahimi Bra 4044*22dc650dSSadaf Ebrahimi \b (ucp) 4045*22dc650dSSadaf Ebrahimi Assert back 4046*22dc650dSSadaf Ebrahimi Reverse 4047*22dc650dSSadaf Ebrahimi prop Xwd 4048*22dc650dSSadaf Ebrahimi Ket 4049*22dc650dSSadaf Ebrahimi X 4050*22dc650dSSadaf Ebrahimi Ket 4051*22dc650dSSadaf Ebrahimi End 4052*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4053*22dc650dSSadaf Ebrahimi 4054*22dc650dSSadaf Ebrahimi/abc/utf,replace=xyz 4055*22dc650dSSadaf Ebrahimi abc\=zero_terminate 4056*22dc650dSSadaf Ebrahimi 1: xyz 4057*22dc650dSSadaf Ebrahimi 4058*22dc650dSSadaf Ebrahimi/a[[:punct:]b]/ucp,bincode 4059*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4060*22dc650dSSadaf Ebrahimi Bra 4061*22dc650dSSadaf Ebrahimi a 4062*22dc650dSSadaf Ebrahimi [b[:punct:]] 4063*22dc650dSSadaf Ebrahimi Ket 4064*22dc650dSSadaf Ebrahimi End 4065*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4066*22dc650dSSadaf Ebrahimi 4067*22dc650dSSadaf Ebrahimi/a[[:punct:]b]/utf,ucp,bincode 4068*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4069*22dc650dSSadaf Ebrahimi Bra 4070*22dc650dSSadaf Ebrahimi a 4071*22dc650dSSadaf Ebrahimi [b[:punct:]] 4072*22dc650dSSadaf Ebrahimi Ket 4073*22dc650dSSadaf Ebrahimi End 4074*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4075*22dc650dSSadaf Ebrahimi 4076*22dc650dSSadaf Ebrahimi/a[b[:punct:]]/utf,ucp,bincode 4077*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4078*22dc650dSSadaf Ebrahimi Bra 4079*22dc650dSSadaf Ebrahimi a 4080*22dc650dSSadaf Ebrahimi [b[:punct:]] 4081*22dc650dSSadaf Ebrahimi Ket 4082*22dc650dSSadaf Ebrahimi End 4083*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4084*22dc650dSSadaf Ebrahimi 4085*22dc650dSSadaf Ebrahimi/[[:^ascii:]]/utf,ucp,bincode 4086*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4087*22dc650dSSadaf Ebrahimi Bra 4088*22dc650dSSadaf Ebrahimi [\x80-\xff] (neg) 4089*22dc650dSSadaf Ebrahimi Ket 4090*22dc650dSSadaf Ebrahimi End 4091*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4092*22dc650dSSadaf Ebrahimi 4093*22dc650dSSadaf Ebrahimi/[[:^ascii:]\w]/utf,ucp,bincode 4094*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4095*22dc650dSSadaf Ebrahimi Bra 4096*22dc650dSSadaf Ebrahimi [\x80-\xff\p{Xwd}\x{100}-\x{10ffff}] 4097*22dc650dSSadaf Ebrahimi Ket 4098*22dc650dSSadaf Ebrahimi End 4099*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4100*22dc650dSSadaf Ebrahimi 4101*22dc650dSSadaf Ebrahimi/[\w[:^ascii:]]/utf,ucp,bincode 4102*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4103*22dc650dSSadaf Ebrahimi Bra 4104*22dc650dSSadaf Ebrahimi [\x80-\xff\p{Xwd}\x{100}-\x{10ffff}] 4105*22dc650dSSadaf Ebrahimi Ket 4106*22dc650dSSadaf Ebrahimi End 4107*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4108*22dc650dSSadaf Ebrahimi 4109*22dc650dSSadaf Ebrahimi/[^[:ascii:]\W]/utf,ucp,bincode 4110*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4111*22dc650dSSadaf Ebrahimi Bra 4112*22dc650dSSadaf Ebrahimi [^\x00-\x7f\P{Xwd}] 4113*22dc650dSSadaf Ebrahimi Ket 4114*22dc650dSSadaf Ebrahimi End 4115*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4116*22dc650dSSadaf Ebrahimi \x{de} 4117*22dc650dSSadaf Ebrahimi 0: \x{de} 4118*22dc650dSSadaf Ebrahimi \x{200} 4119*22dc650dSSadaf Ebrahimi 0: \x{200} 4120*22dc650dSSadaf Ebrahimi\= Expect no match 4121*22dc650dSSadaf Ebrahimi \x{589} 4122*22dc650dSSadaf EbrahimiNo match 4123*22dc650dSSadaf Ebrahimi \x{37e} 4124*22dc650dSSadaf EbrahimiNo match 4125*22dc650dSSadaf Ebrahimi 4126*22dc650dSSadaf Ebrahimi/[[:^ascii:]a]/utf,ucp,bincode 4127*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4128*22dc650dSSadaf Ebrahimi Bra 4129*22dc650dSSadaf Ebrahimi [a\x80-\xff] (neg) 4130*22dc650dSSadaf Ebrahimi Ket 4131*22dc650dSSadaf Ebrahimi End 4132*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4133*22dc650dSSadaf Ebrahimi 4134*22dc650dSSadaf Ebrahimi/L(?#(|++<!(2)?/B,utf,no_auto_possess,auto_callout 4135*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4136*22dc650dSSadaf Ebrahimi Bra 4137*22dc650dSSadaf Ebrahimi Callout 255 0 14 4138*22dc650dSSadaf Ebrahimi L? 4139*22dc650dSSadaf Ebrahimi Callout 255 14 0 4140*22dc650dSSadaf Ebrahimi Ket 4141*22dc650dSSadaf Ebrahimi End 4142*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4143*22dc650dSSadaf Ebrahimi 4144*22dc650dSSadaf Ebrahimi/L(?#(|++<!(2)?/B,utf,ucp,auto_callout 4145*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4146*22dc650dSSadaf Ebrahimi Bra 4147*22dc650dSSadaf Ebrahimi Callout 255 0 14 4148*22dc650dSSadaf Ebrahimi L?+ 4149*22dc650dSSadaf Ebrahimi Callout 255 14 0 4150*22dc650dSSadaf Ebrahimi Ket 4151*22dc650dSSadaf Ebrahimi End 4152*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4153*22dc650dSSadaf Ebrahimi 4154*22dc650dSSadaf Ebrahimi/(*UTF)C\x09((?<!'(?x)!*H? #\xcc\x9a[^$]/ 4155*22dc650dSSadaf EbrahimiFailed: error 114 at offset 39: missing closing parenthesis 4156*22dc650dSSadaf Ebrahimi 4157*22dc650dSSadaf Ebrahimi/[\D]/utf 4158*22dc650dSSadaf Ebrahimi \x{1d7cf} 4159*22dc650dSSadaf Ebrahimi 0: \x{1d7cf} 4160*22dc650dSSadaf Ebrahimi 4161*22dc650dSSadaf Ebrahimi/[\D\P{Nd}]/utf 4162*22dc650dSSadaf Ebrahimi \x{1d7cf} 4163*22dc650dSSadaf Ebrahimi 0: \x{1d7cf} 4164*22dc650dSSadaf Ebrahimi 4165*22dc650dSSadaf Ebrahimi/[^\D]/utf 4166*22dc650dSSadaf Ebrahimi a9b 4167*22dc650dSSadaf Ebrahimi 0: 9 4168*22dc650dSSadaf Ebrahimi\= Expect no match 4169*22dc650dSSadaf Ebrahimi \x{1d7cf} 4170*22dc650dSSadaf EbrahimiNo match 4171*22dc650dSSadaf Ebrahimi 4172*22dc650dSSadaf Ebrahimi/[^\D\P{Nd}]/utf 4173*22dc650dSSadaf Ebrahimi a9b 4174*22dc650dSSadaf Ebrahimi 0: 9 4175*22dc650dSSadaf Ebrahimi \x{1d7cf} 4176*22dc650dSSadaf Ebrahimi 0: \x{1d7cf} 4177*22dc650dSSadaf Ebrahimi\= Expect no match 4178*22dc650dSSadaf Ebrahimi \x{10000} 4179*22dc650dSSadaf EbrahimiNo match 4180*22dc650dSSadaf Ebrahimi 4181*22dc650dSSadaf Ebrahimi# Hex uses pattern length, not zero-terminated. This tests for overrunning 4182*22dc650dSSadaf Ebrahimi# the given length of a pattern. 4183*22dc650dSSadaf Ebrahimi 4184*22dc650dSSadaf Ebrahimi/'(*UTF)'/hex 4185*22dc650dSSadaf Ebrahimi 4186*22dc650dSSadaf Ebrahimi/'#('/hex,extended,utf 4187*22dc650dSSadaf Ebrahimi 4188*22dc650dSSadaf Ebrahimi/a(?<=A\XB)/utf 4189*22dc650dSSadaf EbrahimiFailed: error 125 at offset 1: length of lookbehind assertion is not limited 4190*22dc650dSSadaf Ebrahimi 4191*22dc650dSSadaf Ebrahimi/../utf,auto_callout 4192*22dc650dSSadaf Ebrahimi \n\x{123}\x{123}\x{123}\x{123} 4193*22dc650dSSadaf Ebrahimi--->\x{0a}\x{123}\x{123}\x{123}\x{123} 4194*22dc650dSSadaf Ebrahimi +0 ^ . 4195*22dc650dSSadaf Ebrahimi +0 ^ . 4196*22dc650dSSadaf Ebrahimi +1 ^ ^ . 4197*22dc650dSSadaf Ebrahimi +2 ^ ^ End of pattern 4198*22dc650dSSadaf Ebrahimi 0: \x{123}\x{123} 4199*22dc650dSSadaf Ebrahimi 4200*22dc650dSSadaf Ebrahimi# This tests processing wide characters in extended mode. 4201*22dc650dSSadaf Ebrahimi 4202*22dc650dSSadaf Ebrahimi/XȀ/x,utf 4203*22dc650dSSadaf Ebrahimi 4204*22dc650dSSadaf Ebrahimi# These three test a bug fix that was not clearing up after a locale setting 4205*22dc650dSSadaf Ebrahimi# when the test or a subsequent one matched a wide character. 4206*22dc650dSSadaf Ebrahimi 4207*22dc650dSSadaf Ebrahimi//locale=C 4208*22dc650dSSadaf Ebrahimi 4209*22dc650dSSadaf Ebrahimi/[\P{Yi}]/utf 4210*22dc650dSSadaf Ebrahimi\x{2f000} 4211*22dc650dSSadaf Ebrahimi 0: \x{2f000} 4212*22dc650dSSadaf Ebrahimi 4213*22dc650dSSadaf Ebrahimi/[\P{Yi}]/utf,locale=C 4214*22dc650dSSadaf Ebrahimi\x{2f000} 4215*22dc650dSSadaf Ebrahimi 0: \x{2f000} 4216*22dc650dSSadaf Ebrahimi 4217*22dc650dSSadaf Ebrahimi/^(?<!(?=))/B,utf 4218*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4219*22dc650dSSadaf Ebrahimi Bra 4220*22dc650dSSadaf Ebrahimi ^ 4221*22dc650dSSadaf Ebrahimi Assert back not 4222*22dc650dSSadaf Ebrahimi Assert 4223*22dc650dSSadaf Ebrahimi \x{10385c} 4224*22dc650dSSadaf Ebrahimi Ket 4225*22dc650dSSadaf Ebrahimi Ket 4226*22dc650dSSadaf Ebrahimi Ket 4227*22dc650dSSadaf Ebrahimi End 4228*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4229*22dc650dSSadaf Ebrahimi 4230*22dc650dSSadaf Ebrahimi# Horizontal and vertical space lists ignore caseless 4231*22dc650dSSadaf Ebrahimi 4232*22dc650dSSadaf Ebrahimi/[\HH]/Bi,utf 4233*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4234*22dc650dSSadaf Ebrahimi Bra 4235*22dc650dSSadaf Ebrahimi [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}] 4236*22dc650dSSadaf Ebrahimi Ket 4237*22dc650dSSadaf Ebrahimi End 4238*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4239*22dc650dSSadaf Ebrahimi 4240*22dc650dSSadaf Ebrahimi/[^\HH]/Bi,utf 4241*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4242*22dc650dSSadaf Ebrahimi Bra 4243*22dc650dSSadaf Ebrahimi [^\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}] 4244*22dc650dSSadaf Ebrahimi Ket 4245*22dc650dSSadaf Ebrahimi End 4246*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4247*22dc650dSSadaf Ebrahimi 4248*22dc650dSSadaf Ebrahimi//g,utf 4249*22dc650dSSadaf Ebrahimi \=zero_terminate 4250*22dc650dSSadaf Ebrahimi 0: 4251*22dc650dSSadaf Ebrahimi 4252*22dc650dSSadaf Ebrahimi/^(?1)\p{Nd}{3}(a)/ 4253*22dc650dSSadaf Ebrahimi a123a 4254*22dc650dSSadaf Ebrahimi 0: a123a 4255*22dc650dSSadaf Ebrahimi 1: a 4256*22dc650dSSadaf Ebrahimi 4257*22dc650dSSadaf Ebrahimi/\p{Nd}{0,3}[\pL](*:abc)(?C1)xxx/callout_info 4258*22dc650dSSadaf EbrahimiCallout 1 x 4259*22dc650dSSadaf Ebrahimi 4260*22dc650dSSadaf Ebrahimi# --------------------------------------------------------------------------- 4261*22dc650dSSadaf Ebrahimi 4262*22dc650dSSadaf Ebrahimi# A bunch of tests that hit lines of code that others do not (at least when 4263*22dc650dSSadaf Ebrahimi# these were created). 4264*22dc650dSSadaf Ebrahimi 4265*22dc650dSSadaf Ebrahimi/^[^a]{3,}?x/i,utf,no_start_optimize,no_auto_possess 4266*22dc650dSSadaf Ebrahimi\= Expect no match 4267*22dc650dSSadaf Ebrahimi bbb 4268*22dc650dSSadaf EbrahimiNo match 4269*22dc650dSSadaf Ebrahimi cc 4270*22dc650dSSadaf EbrahimiNo match 4271*22dc650dSSadaf Ebrahimi 4272*22dc650dSSadaf Ebrahimi/^[ac]{3,}?x/i,utf,no_start_optimize,no_auto_possess 4273*22dc650dSSadaf Ebrahimi\= Expect no match 4274*22dc650dSSadaf Ebrahimi aaa\x{100} 4275*22dc650dSSadaf EbrahimiNo match 4276*22dc650dSSadaf Ebrahimi 4277*22dc650dSSadaf Ebrahimi/^X\X/no_start_optimize,no_auto_possess 4278*22dc650dSSadaf Ebrahimi\= Expect no match 4279*22dc650dSSadaf Ebrahimi X 4280*22dc650dSSadaf EbrahimiNo match 4281*22dc650dSSadaf Ebrahimi 4282*22dc650dSSadaf Ebrahimi/^X\p{L&}+?/no_start_optimize,no_auto_possess 4283*22dc650dSSadaf Ebrahimi\= Expect no match 4284*22dc650dSSadaf Ebrahimi X 4285*22dc650dSSadaf EbrahimiNo match 4286*22dc650dSSadaf Ebrahimi 4287*22dc650dSSadaf Ebrahimi/^X\p{L}+?/no_start_optimize,no_auto_possess 4288*22dc650dSSadaf Ebrahimi\= Expect no match 4289*22dc650dSSadaf Ebrahimi X 4290*22dc650dSSadaf EbrahimiNo match 4291*22dc650dSSadaf Ebrahimi 4292*22dc650dSSadaf Ebrahimi/^X\p{Lu}+?/no_start_optimize,no_auto_possess 4293*22dc650dSSadaf Ebrahimi\= Expect no match 4294*22dc650dSSadaf Ebrahimi X 4295*22dc650dSSadaf EbrahimiNo match 4296*22dc650dSSadaf Ebrahimi 4297*22dc650dSSadaf Ebrahimi/^X\p{Arabic}+?/no_start_optimize,no_auto_possess 4298*22dc650dSSadaf Ebrahimi\= Expect no match 4299*22dc650dSSadaf Ebrahimi X 4300*22dc650dSSadaf EbrahimiNo match 4301*22dc650dSSadaf Ebrahimi 4302*22dc650dSSadaf Ebrahimi/^X\p{Xan}+?/ucp,no_start_optimize,no_auto_possess 4303*22dc650dSSadaf Ebrahimi\= Expect no match 4304*22dc650dSSadaf Ebrahimi X 4305*22dc650dSSadaf EbrahimiNo match 4306*22dc650dSSadaf Ebrahimi 4307*22dc650dSSadaf Ebrahimi/^X\s+?/ucp,no_start_optimize,no_auto_possess 4308*22dc650dSSadaf Ebrahimi\= Expect no match 4309*22dc650dSSadaf Ebrahimi X 4310*22dc650dSSadaf EbrahimiNo match 4311*22dc650dSSadaf Ebrahimi XX 4312*22dc650dSSadaf EbrahimiNo match 4313*22dc650dSSadaf Ebrahimi 4314*22dc650dSSadaf Ebrahimi/^X\S+?/ucp,no_start_optimize,no_auto_possess 4315*22dc650dSSadaf Ebrahimi XX 4316*22dc650dSSadaf Ebrahimi 0: XX 4317*22dc650dSSadaf Ebrahimi\= Expect no match 4318*22dc650dSSadaf Ebrahimi X 4319*22dc650dSSadaf EbrahimiNo match 4320*22dc650dSSadaf Ebrahimi 4321*22dc650dSSadaf Ebrahimi/^X\w+?/ucp,no_start_optimize,no_auto_possess 4322*22dc650dSSadaf Ebrahimi\= Expect no match 4323*22dc650dSSadaf Ebrahimi X 4324*22dc650dSSadaf EbrahimiNo match 4325*22dc650dSSadaf Ebrahimi 4326*22dc650dSSadaf Ebrahimi/^X[^\x{b5}]+?/i,utf,no_start_optimize,no_auto_possess 4327*22dc650dSSadaf Ebrahimi\= Expect no match 4328*22dc650dSSadaf Ebrahimi X 4329*22dc650dSSadaf EbrahimiNo match 4330*22dc650dSSadaf Ebrahimi 4331*22dc650dSSadaf Ebrahimi/^X[\x{b5}]+?/i,utf,no_start_optimize,no_auto_possess 4332*22dc650dSSadaf Ebrahimi\= Expect no match 4333*22dc650dSSadaf Ebrahimi X 4334*22dc650dSSadaf EbrahimiNo match 4335*22dc650dSSadaf Ebrahimi 4336*22dc650dSSadaf Ebrahimi/^X\p{Xuc}+?/utf,no_start_optimize,no_auto_possess 4337*22dc650dSSadaf Ebrahimi\= Expect no match 4338*22dc650dSSadaf Ebrahimi X 4339*22dc650dSSadaf EbrahimiNo match 4340*22dc650dSSadaf Ebrahimi 4341*22dc650dSSadaf Ebrahimi/^X.+?Z/s,utf,no_start_optimize,no_auto_possess 4342*22dc650dSSadaf Ebrahimi\= Expect no match 4343*22dc650dSSadaf Ebrahimi X 4344*22dc650dSSadaf EbrahimiNo match 4345*22dc650dSSadaf Ebrahimi 4346*22dc650dSSadaf Ebrahimi/^X\R+?/utf,no_start_optimize,no_auto_possess 4347*22dc650dSSadaf Ebrahimi\= Expect no match 4348*22dc650dSSadaf Ebrahimi X 4349*22dc650dSSadaf EbrahimiNo match 4350*22dc650dSSadaf Ebrahimi 4351*22dc650dSSadaf Ebrahimi/^X\H+?/utf,no_start_optimize,no_auto_possess 4352*22dc650dSSadaf Ebrahimi\= Expect no match 4353*22dc650dSSadaf Ebrahimi X 4354*22dc650dSSadaf EbrahimiNo match 4355*22dc650dSSadaf Ebrahimi 4356*22dc650dSSadaf Ebrahimi/^X\V+?/utf,no_start_optimize,no_auto_possess 4357*22dc650dSSadaf Ebrahimi\= Expect no match 4358*22dc650dSSadaf Ebrahimi X 4359*22dc650dSSadaf EbrahimiNo match 4360*22dc650dSSadaf Ebrahimi 4361*22dc650dSSadaf Ebrahimi/^X\s+?/utf,no_start_optimize,no_auto_possess 4362*22dc650dSSadaf Ebrahimi\= Expect no match 4363*22dc650dSSadaf Ebrahimi X 4364*22dc650dSSadaf EbrahimiNo match 4365*22dc650dSSadaf Ebrahimi XX 4366*22dc650dSSadaf EbrahimiNo match 4367*22dc650dSSadaf Ebrahimi 4368*22dc650dSSadaf Ebrahimi/^X\S+?/utf,no_start_optimize,no_auto_possess 4369*22dc650dSSadaf Ebrahimi\= Expect no match 4370*22dc650dSSadaf Ebrahimi X 4371*22dc650dSSadaf EbrahimiNo match 4372*22dc650dSSadaf Ebrahimi 4373*22dc650dSSadaf Ebrahimi/^X\p{Any}{1,3}?Z/s,no_start_optimize,no_auto_possess 4374*22dc650dSSadaf Ebrahimi XYYYZ 4375*22dc650dSSadaf Ebrahimi 0: XYYYZ 4376*22dc650dSSadaf Ebrahimi\= Expect no match 4377*22dc650dSSadaf Ebrahimi XY 4378*22dc650dSSadaf EbrahimiNo match 4379*22dc650dSSadaf Ebrahimi XYY 4380*22dc650dSSadaf EbrahimiNo match 4381*22dc650dSSadaf Ebrahimi XYYY 4382*22dc650dSSadaf EbrahimiNo match 4383*22dc650dSSadaf Ebrahimi XYYYYZ 4384*22dc650dSSadaf EbrahimiNo match 4385*22dc650dSSadaf Ebrahimi 4386*22dc650dSSadaf Ebrahimi/^X\p{L&}{1,3}?Z/s,no_start_optimize,no_auto_possess 4387*22dc650dSSadaf Ebrahimi\= Expect no match 4388*22dc650dSSadaf Ebrahimi XY 4389*22dc650dSSadaf EbrahimiNo match 4390*22dc650dSSadaf Ebrahimi XY! 4391*22dc650dSSadaf EbrahimiNo match 4392*22dc650dSSadaf Ebrahimi 4393*22dc650dSSadaf Ebrahimi/^X\p{L}{1,3}?Z/s,no_start_optimize,no_auto_possess 4394*22dc650dSSadaf Ebrahimi\= Expect no match 4395*22dc650dSSadaf Ebrahimi XY 4396*22dc650dSSadaf EbrahimiNo match 4397*22dc650dSSadaf Ebrahimi XY! 4398*22dc650dSSadaf EbrahimiNo match 4399*22dc650dSSadaf Ebrahimi 4400*22dc650dSSadaf Ebrahimi/^X\p{Lu}{1,3}?Z/s,no_start_optimize,no_auto_possess 4401*22dc650dSSadaf Ebrahimi\= Expect no match 4402*22dc650dSSadaf Ebrahimi XY 4403*22dc650dSSadaf EbrahimiNo match 4404*22dc650dSSadaf Ebrahimi XY! 4405*22dc650dSSadaf EbrahimiNo match 4406*22dc650dSSadaf Ebrahimi 4407*22dc650dSSadaf Ebrahimi/^X\P{Han}{1,3}?Z/s,utf,no_start_optimize,no_auto_possess 4408*22dc650dSSadaf Ebrahimi\= Expect no match 4409*22dc650dSSadaf Ebrahimi XY 4410*22dc650dSSadaf EbrahimiNo match 4411*22dc650dSSadaf Ebrahimi XY! 4412*22dc650dSSadaf EbrahimiNo match 4413*22dc650dSSadaf Ebrahimi XY\x{2f00}! 4414*22dc650dSSadaf EbrahimiNo match 4415*22dc650dSSadaf Ebrahimi 4416*22dc650dSSadaf Ebrahimi/^X\p{Xan}{1,3}?Z/s,no_start_optimize,no_auto_possess 4417*22dc650dSSadaf Ebrahimi\= Expect no match 4418*22dc650dSSadaf Ebrahimi XY 4419*22dc650dSSadaf EbrahimiNo match 4420*22dc650dSSadaf Ebrahimi XY! 4421*22dc650dSSadaf EbrahimiNo match 4422*22dc650dSSadaf Ebrahimi 4423*22dc650dSSadaf Ebrahimi/^X\p{Xsp}{1,3}?Z/s,no_start_optimize,no_auto_possess 4424*22dc650dSSadaf Ebrahimi\= Expect no match 4425*22dc650dSSadaf Ebrahimi X\n 4426*22dc650dSSadaf EbrahimiNo match 4427*22dc650dSSadaf Ebrahimi X\n! 4428*22dc650dSSadaf EbrahimiNo match 4429*22dc650dSSadaf Ebrahimi X\n\n! 4430*22dc650dSSadaf EbrahimiNo match 4431*22dc650dSSadaf Ebrahimi 4432*22dc650dSSadaf Ebrahimi/^X\P{Xsp}{1,3}?Z/s,no_start_optimize,no_auto_possess 4433*22dc650dSSadaf Ebrahimi\= Expect no match 4434*22dc650dSSadaf Ebrahimi XYY\n 4435*22dc650dSSadaf EbrahimiNo match 4436*22dc650dSSadaf Ebrahimi 4437*22dc650dSSadaf Ebrahimi/^X\p{Xwd}{1,3}?Z/s,no_start_optimize,no_auto_possess 4438*22dc650dSSadaf Ebrahimi\= Expect no match 4439*22dc650dSSadaf Ebrahimi XY 4440*22dc650dSSadaf EbrahimiNo match 4441*22dc650dSSadaf Ebrahimi XY! 4442*22dc650dSSadaf EbrahimiNo match 4443*22dc650dSSadaf Ebrahimi XYY! 4444*22dc650dSSadaf EbrahimiNo match 4445*22dc650dSSadaf Ebrahimi 4446*22dc650dSSadaf Ebrahimi/^X\x{b5}+?Z/i,utf,no_start_optimize,no_auto_possess 4447*22dc650dSSadaf Ebrahimi\= Expect no match 4448*22dc650dSSadaf Ebrahimi X 4449*22dc650dSSadaf EbrahimiNo match 4450*22dc650dSSadaf Ebrahimi X\x{b5} 4451*22dc650dSSadaf EbrahimiNo match 4452*22dc650dSSadaf Ebrahimi X\x{b5}\x{b5}Y 4453*22dc650dSSadaf EbrahimiNo match 4454*22dc650dSSadaf Ebrahimi 4455*22dc650dSSadaf Ebrahimi/^X\p{Xuc}+?Z/utf,no_start_optimize,no_auto_possess 4456*22dc650dSSadaf Ebrahimi\= Expect no match 4457*22dc650dSSadaf Ebrahimi X 4458*22dc650dSSadaf EbrahimiNo match 4459*22dc650dSSadaf Ebrahimi X$ 4460*22dc650dSSadaf EbrahimiNo match 4461*22dc650dSSadaf Ebrahimi X@@Y 4462*22dc650dSSadaf EbrahimiNo match 4463*22dc650dSSadaf Ebrahimi 4464*22dc650dSSadaf Ebrahimi/(*CRLF)^X.+?Z/utf,no_start_optimize,no_auto_possess 4465*22dc650dSSadaf Ebrahimi\= Expect partial match 4466*22dc650dSSadaf Ebrahimi XYY\r\=ph 4467*22dc650dSSadaf EbrahimiPartial match: XYY\x{0d} 4468*22dc650dSSadaf Ebrahimi\= Expect no match 4469*22dc650dSSadaf Ebrahimi X 4470*22dc650dSSadaf EbrahimiNo match 4471*22dc650dSSadaf Ebrahimi 4472*22dc650dSSadaf Ebrahimi/^X.+?Z/s,utf,no_start_optimize,no_auto_possess 4473*22dc650dSSadaf Ebrahimi\= Expect no match 4474*22dc650dSSadaf Ebrahimi X 4475*22dc650dSSadaf EbrahimiNo match 4476*22dc650dSSadaf Ebrahimi XYY 4477*22dc650dSSadaf EbrahimiNo match 4478*22dc650dSSadaf Ebrahimi 4479*22dc650dSSadaf Ebrahimi/^X\R+?Z/utf,no_start_optimize,no_auto_possess 4480*22dc650dSSadaf Ebrahimi\= Expect no match 4481*22dc650dSSadaf Ebrahimi X\nX 4482*22dc650dSSadaf EbrahimiNo match 4483*22dc650dSSadaf Ebrahimi X\n\rX 4484*22dc650dSSadaf EbrahimiNo match 4485*22dc650dSSadaf Ebrahimi X\n\r\nX 4486*22dc650dSSadaf EbrahimiNo match 4487*22dc650dSSadaf Ebrahimi X\n\n 4488*22dc650dSSadaf EbrahimiNo match 4489*22dc650dSSadaf Ebrahimi X\n\x{0c} 4490*22dc650dSSadaf EbrahimiNo match 4491*22dc650dSSadaf Ebrahimi 4492*22dc650dSSadaf Ebrahimi/(*BSR_ANYCRLF)^X\R+?Z/utf,no_start_optimize,no_auto_possess 4493*22dc650dSSadaf Ebrahimi\= Expect no match 4494*22dc650dSSadaf Ebrahimi X\nX 4495*22dc650dSSadaf EbrahimiNo match 4496*22dc650dSSadaf Ebrahimi X\n\rX 4497*22dc650dSSadaf EbrahimiNo match 4498*22dc650dSSadaf Ebrahimi X\n\r\nX 4499*22dc650dSSadaf EbrahimiNo match 4500*22dc650dSSadaf Ebrahimi X\n\n 4501*22dc650dSSadaf EbrahimiNo match 4502*22dc650dSSadaf Ebrahimi X\n\x{0c} 4503*22dc650dSSadaf EbrahimiNo match 4504*22dc650dSSadaf Ebrahimi 4505*22dc650dSSadaf Ebrahimi/^X\H+?Z/utf,no_start_optimize,no_auto_possess 4506*22dc650dSSadaf Ebrahimi\= Expect no match 4507*22dc650dSSadaf Ebrahimi XY\t 4508*22dc650dSSadaf EbrahimiNo match 4509*22dc650dSSadaf Ebrahimi XYY 4510*22dc650dSSadaf EbrahimiNo match 4511*22dc650dSSadaf Ebrahimi 4512*22dc650dSSadaf Ebrahimi/^X\h+?Z/utf,no_start_optimize,no_auto_possess 4513*22dc650dSSadaf Ebrahimi\= Expect no match 4514*22dc650dSSadaf Ebrahimi X\t\t 4515*22dc650dSSadaf EbrahimiNo match 4516*22dc650dSSadaf Ebrahimi X\tY 4517*22dc650dSSadaf EbrahimiNo match 4518*22dc650dSSadaf Ebrahimi 4519*22dc650dSSadaf Ebrahimi/^X\V+?Z/utf,no_start_optimize,no_auto_possess 4520*22dc650dSSadaf Ebrahimi\= Expect no match 4521*22dc650dSSadaf Ebrahimi XY\n 4522*22dc650dSSadaf EbrahimiNo match 4523*22dc650dSSadaf Ebrahimi XYY 4524*22dc650dSSadaf EbrahimiNo match 4525*22dc650dSSadaf Ebrahimi 4526*22dc650dSSadaf Ebrahimi/^X\v+?Z/utf,no_start_optimize,no_auto_possess 4527*22dc650dSSadaf Ebrahimi\= Expect no match 4528*22dc650dSSadaf Ebrahimi X\n\n 4529*22dc650dSSadaf EbrahimiNo match 4530*22dc650dSSadaf Ebrahimi X\nY 4531*22dc650dSSadaf EbrahimiNo match 4532*22dc650dSSadaf Ebrahimi 4533*22dc650dSSadaf Ebrahimi/^X\D+?Z/utf,no_start_optimize,no_auto_possess 4534*22dc650dSSadaf Ebrahimi\= Expect no match 4535*22dc650dSSadaf Ebrahimi XY9 4536*22dc650dSSadaf EbrahimiNo match 4537*22dc650dSSadaf Ebrahimi XYY 4538*22dc650dSSadaf EbrahimiNo match 4539*22dc650dSSadaf Ebrahimi 4540*22dc650dSSadaf Ebrahimi/^X\d+?Z/utf,no_start_optimize,no_auto_possess 4541*22dc650dSSadaf Ebrahimi\= Expect no match 4542*22dc650dSSadaf Ebrahimi X99 4543*22dc650dSSadaf EbrahimiNo match 4544*22dc650dSSadaf Ebrahimi X9Y 4545*22dc650dSSadaf EbrahimiNo match 4546*22dc650dSSadaf Ebrahimi 4547*22dc650dSSadaf Ebrahimi/^X\S+?Z/utf,no_start_optimize,no_auto_possess 4548*22dc650dSSadaf Ebrahimi\= Expect no match 4549*22dc650dSSadaf Ebrahimi XY\n 4550*22dc650dSSadaf EbrahimiNo match 4551*22dc650dSSadaf Ebrahimi XYY 4552*22dc650dSSadaf EbrahimiNo match 4553*22dc650dSSadaf Ebrahimi 4554*22dc650dSSadaf Ebrahimi/^X\s+?Z/utf,no_start_optimize,no_auto_possess 4555*22dc650dSSadaf Ebrahimi\= Expect no match 4556*22dc650dSSadaf Ebrahimi X\n\n 4557*22dc650dSSadaf EbrahimiNo match 4558*22dc650dSSadaf Ebrahimi X\nY 4559*22dc650dSSadaf EbrahimiNo match 4560*22dc650dSSadaf Ebrahimi 4561*22dc650dSSadaf Ebrahimi/^X\W+?Z/utf,no_start_optimize,no_auto_possess 4562*22dc650dSSadaf Ebrahimi\= Expect no match 4563*22dc650dSSadaf Ebrahimi X.A 4564*22dc650dSSadaf EbrahimiNo match 4565*22dc650dSSadaf Ebrahimi X++ 4566*22dc650dSSadaf EbrahimiNo match 4567*22dc650dSSadaf Ebrahimi 4568*22dc650dSSadaf Ebrahimi/^X\p{L&}{1,3}Z/no_start_optimize,no_auto_possess 4569*22dc650dSSadaf Ebrahimi\= Expect no match 4570*22dc650dSSadaf Ebrahimi XY 4571*22dc650dSSadaf EbrahimiNo match 4572*22dc650dSSadaf Ebrahimi XY! 4573*22dc650dSSadaf EbrahimiNo match 4574*22dc650dSSadaf Ebrahimi 4575*22dc650dSSadaf Ebrahimi/^X\p{L}{1,3}Z/no_start_optimize,no_auto_possess 4576*22dc650dSSadaf Ebrahimi\= Expect no match 4577*22dc650dSSadaf Ebrahimi XY 4578*22dc650dSSadaf EbrahimiNo match 4579*22dc650dSSadaf Ebrahimi 4580*22dc650dSSadaf Ebrahimi/^X\p{Xan}{1,3}Z/no_start_optimize,no_auto_possess 4581*22dc650dSSadaf Ebrahimi\= Expect no match 4582*22dc650dSSadaf Ebrahimi XY 4583*22dc650dSSadaf EbrahimiNo match 4584*22dc650dSSadaf Ebrahimi 4585*22dc650dSSadaf Ebrahimi/^X\P{Xsp}{1,3}Z/no_start_optimize,no_auto_possess 4586*22dc650dSSadaf Ebrahimi\= Expect no match 4587*22dc650dSSadaf Ebrahimi XYY 4588*22dc650dSSadaf EbrahimiNo match 4589*22dc650dSSadaf Ebrahimi 4590*22dc650dSSadaf Ebrahimi/^X\p{Xuc}+Z/utf,no_start_optimize,no_auto_possess 4591*22dc650dSSadaf Ebrahimi\= Expect no match 4592*22dc650dSSadaf Ebrahimi X$ 4593*22dc650dSSadaf EbrahimiNo match 4594*22dc650dSSadaf Ebrahimi 4595*22dc650dSSadaf Ebrahimi# ---------------------------------------------------------------------- 4596*22dc650dSSadaf Ebrahimi# These test the dangerous PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL option. 4597*22dc650dSSadaf Ebrahimi 4598*22dc650dSSadaf Ebrahimi/\x{d800}/B,utf,bad_escape_is_literal 4599*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4600*22dc650dSSadaf Ebrahimi Bra 4601*22dc650dSSadaf Ebrahimi x{d800} 4602*22dc650dSSadaf Ebrahimi Ket 4603*22dc650dSSadaf Ebrahimi End 4604*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4605*22dc650dSSadaf Ebrahimi 4606*22dc650dSSadaf Ebrahimi/\ud800/B,utf,alt_bsux,bad_escape_is_literal 4607*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4608*22dc650dSSadaf Ebrahimi Bra 4609*22dc650dSSadaf Ebrahimi ud800 4610*22dc650dSSadaf Ebrahimi Ket 4611*22dc650dSSadaf Ebrahimi End 4612*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4613*22dc650dSSadaf Ebrahimi 4614*22dc650dSSadaf Ebrahimi# ---------------------------------------------------------------------- 4615*22dc650dSSadaf Ebrahimi 4616*22dc650dSSadaf Ebrahimi/Aሴ+B/literal,utf,no_utf_check 4617*22dc650dSSadaf Ebrahimi Aሴ+B 4618*22dc650dSSadaf Ebrahimi 0: A\x{1234}+B 4619*22dc650dSSadaf Ebrahimi 4620*22dc650dSSadaf Ebrahimi# These are here because I upgraded to Unicode 10.0.0 before Perl did, so it 4621*22dc650dSSadaf Ebrahimi# doesn't recognize all these scripts. In time these three tests can be moved 4622*22dc650dSSadaf Ebrahimi# to test 4. 4623*22dc650dSSadaf Ebrahimi 4624*22dc650dSSadaf Ebrahimi/^(\p{Adlam}+)(\p{Bhaiksuki}+)(\p{Marchen}+)(\p{Newa}+)(\p{Osage}+) 4625*22dc650dSSadaf Ebrahimi (\p{Tangut}+)(\p{Masaram_Gondi}+)(\p{Nushu}+)(\p{Soyombo}+) 4626*22dc650dSSadaf Ebrahimi (\p{Zanabazar_Square}+)/x,utf 4627*22dc650dSSadaf Ebrahimi \x{1E900}\x{1E924}\x{1E953}\x{11C00}\x{11C2D}\x{11C3E}\x{11C70}\x{11C77}\x{11CAB}\x{11400}\x{1142F}\x{11455}\x{104B0}\x{104D8}\x{104FB}\x{16FE0}\x{18800}\x{18AF2}\x{11D00}\x{11D3A}\x{11D59}\x{16FE1}\x{1B170}\x{1B2FB}\x{11A50}\x{11A58}\x{11AA2}\x{11A00}\x{11A07}\x{11A47} 4628*22dc650dSSadaf Ebrahimi 0: \x{1e900}\x{1e924}\x{1e953}\x{11c00}\x{11c2d}\x{11c3e}\x{11c70}\x{11c77}\x{11cab}\x{11400}\x{1142f}\x{11455}\x{104b0}\x{104d8}\x{104fb}\x{16fe0}\x{18800}\x{18af2}\x{11d00}\x{11d3a}\x{11d59}\x{16fe1}\x{1b170}\x{1b2fb}\x{11a50}\x{11a58}\x{11aa2}\x{11a00}\x{11a07}\x{11a47} 4629*22dc650dSSadaf Ebrahimi 1: \x{1e900}\x{1e924}\x{1e953} 4630*22dc650dSSadaf Ebrahimi 2: \x{11c00}\x{11c2d}\x{11c3e} 4631*22dc650dSSadaf Ebrahimi 3: \x{11c70}\x{11c77}\x{11cab} 4632*22dc650dSSadaf Ebrahimi 4: \x{11400}\x{1142f}\x{11455} 4633*22dc650dSSadaf Ebrahimi 5: \x{104b0}\x{104d8}\x{104fb} 4634*22dc650dSSadaf Ebrahimi 6: \x{16fe0}\x{18800}\x{18af2} 4635*22dc650dSSadaf Ebrahimi 7: \x{11d00}\x{11d3a}\x{11d59} 4636*22dc650dSSadaf Ebrahimi 8: \x{16fe1}\x{1b170}\x{1b2fb} 4637*22dc650dSSadaf Ebrahimi 9: \x{11a50}\x{11a58}\x{11aa2} 4638*22dc650dSSadaf Ebrahimi10: \x{11a00}\x{11a07}\x{11a47} 4639*22dc650dSSadaf Ebrahimi 4640*22dc650dSSadaf Ebrahimi/^\x{1E900}\x{104B0}/i,utf 4641*22dc650dSSadaf Ebrahimi \x{1E900}\x{104B0} 4642*22dc650dSSadaf Ebrahimi 0: \x{1e900}\x{104b0} 4643*22dc650dSSadaf Ebrahimi \x{1E922}\x{104D8} 4644*22dc650dSSadaf Ebrahimi 0: \x{1e922}\x{104d8} 4645*22dc650dSSadaf Ebrahimi 4646*22dc650dSSadaf Ebrahimi/^(?:(\X)(?C))+$/utf 4647*22dc650dSSadaf Ebrahimi \x{1E900}\x{1E924}\x{1E953}\x{11C00}\x{11C2D}\x{11C3E}\x{11C70}\x{11C77}\x{11CAB}\x{11400}\x{1142F}\x{11455}\x{104B0}\x{104D8}\x{104FB}\x{16FE0}\x{18800}\x{18AF2}\x{11D00}\x{11D3A}\x{11D59}\x{16FE1}\x{1B170}\x{1B2FB}\x{11A50}\x{11A58}\x{11AA2}\x{11A00}\x{11A07}\x{11A47}\=callout_capture,callout_no_where 4648*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4649*22dc650dSSadaf Ebrahimi 1: \x{1e900} 4650*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4651*22dc650dSSadaf Ebrahimi 1: \x{1e924} 4652*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4653*22dc650dSSadaf Ebrahimi 1: \x{1e953} 4654*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4655*22dc650dSSadaf Ebrahimi 1: \x{11c00} 4656*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4657*22dc650dSSadaf Ebrahimi 1: \x{11c2d}\x{11c3e} 4658*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4659*22dc650dSSadaf Ebrahimi 1: \x{11c70} 4660*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4661*22dc650dSSadaf Ebrahimi 1: \x{11c77}\x{11cab} 4662*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4663*22dc650dSSadaf Ebrahimi 1: \x{11400} 4664*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4665*22dc650dSSadaf Ebrahimi 1: \x{1142f} 4666*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4667*22dc650dSSadaf Ebrahimi 1: \x{11455} 4668*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4669*22dc650dSSadaf Ebrahimi 1: \x{104b0} 4670*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4671*22dc650dSSadaf Ebrahimi 1: \x{104d8} 4672*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4673*22dc650dSSadaf Ebrahimi 1: \x{104fb} 4674*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4675*22dc650dSSadaf Ebrahimi 1: \x{16fe0} 4676*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4677*22dc650dSSadaf Ebrahimi 1: \x{18800} 4678*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4679*22dc650dSSadaf Ebrahimi 1: \x{18af2} 4680*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4681*22dc650dSSadaf Ebrahimi 1: \x{11d00}\x{11d3a} 4682*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4683*22dc650dSSadaf Ebrahimi 1: \x{11d59} 4684*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4685*22dc650dSSadaf Ebrahimi 1: \x{16fe1} 4686*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4687*22dc650dSSadaf Ebrahimi 1: \x{1b170} 4688*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4689*22dc650dSSadaf Ebrahimi 1: \x{1b2fb} 4690*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4691*22dc650dSSadaf Ebrahimi 1: \x{11a50}\x{11a58} 4692*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4693*22dc650dSSadaf Ebrahimi 1: \x{11aa2} 4694*22dc650dSSadaf EbrahimiCallout 0: last capture = 1 4695*22dc650dSSadaf Ebrahimi 1: \x{11a00}\x{11a07}\x{11a47} 4696*22dc650dSSadaf Ebrahimi 0: \x{1e900}\x{1e924}\x{1e953}\x{11c00}\x{11c2d}\x{11c3e}\x{11c70}\x{11c77}\x{11cab}\x{11400}\x{1142f}\x{11455}\x{104b0}\x{104d8}\x{104fb}\x{16fe0}\x{18800}\x{18af2}\x{11d00}\x{11d3a}\x{11d59}\x{16fe1}\x{1b170}\x{1b2fb}\x{11a50}\x{11a58}\x{11aa2}\x{11a00}\x{11a07}\x{11a47} 4697*22dc650dSSadaf Ebrahimi 1: \x{11a00}\x{11a07}\x{11a47} 4698*22dc650dSSadaf Ebrahimi 4699*22dc650dSSadaf Ebrahimi# Similarly for Unicode 11.0.0 4700*22dc650dSSadaf Ebrahimi 4701*22dc650dSSadaf Ebrahimi/^(\p{Dogra}+)(\p{Gunjala_Gondi}+)(\p{Hanifi_Rohingya}+)(\p{Makasar}+) 4702*22dc650dSSadaf Ebrahimi (\p{Medefaidrin}+)(\p{Old_Sogdian}+)(\p{Sogdian}+)/x,utf 4703*22dc650dSSadaf Ebrahimi \x{11800}\x{11da9}\x{10d27}\x{11ee0}\x{16e48}\x{10f27}\x{10f30} 4704*22dc650dSSadaf Ebrahimi 0: \x{11800}\x{11da9}\x{10d27}\x{11ee0}\x{16e48}\x{10f27}\x{10f30} 4705*22dc650dSSadaf Ebrahimi 1: \x{11800} 4706*22dc650dSSadaf Ebrahimi 2: \x{11da9} 4707*22dc650dSSadaf Ebrahimi 3: \x{10d27} 4708*22dc650dSSadaf Ebrahimi 4: \x{11ee0} 4709*22dc650dSSadaf Ebrahimi 5: \x{16e48} 4710*22dc650dSSadaf Ebrahimi 6: \x{10f27} 4711*22dc650dSSadaf Ebrahimi 7: \x{10f30} 4712*22dc650dSSadaf Ebrahimi 4713*22dc650dSSadaf Ebrahimi# Regional indicators 4714*22dc650dSSadaf Ebrahimi 4715*22dc650dSSadaf Ebrahimi/^(\X)(\X)/utf,aftertext 4716*22dc650dSSadaf Ebrahimi \x{1F1E6}\x{1F1E7}\x{1F1E7}B 4717*22dc650dSSadaf Ebrahimi 0: \x{1f1e6}\x{1f1e7}\x{1f1e7} 4718*22dc650dSSadaf Ebrahimi 0+ B 4719*22dc650dSSadaf Ebrahimi 1: \x{1f1e6}\x{1f1e7} 4720*22dc650dSSadaf Ebrahimi 2: \x{1f1e7} 4721*22dc650dSSadaf Ebrahimi \x{1F1E6}\x{1F1E7}\x{1F1E7}\x{1F1E6}B 4722*22dc650dSSadaf Ebrahimi 0: \x{1f1e6}\x{1f1e7}\x{1f1e7}\x{1f1e6} 4723*22dc650dSSadaf Ebrahimi 0+ B 4724*22dc650dSSadaf Ebrahimi 1: \x{1f1e6}\x{1f1e7} 4725*22dc650dSSadaf Ebrahimi 2: \x{1f1e7}\x{1f1e6} 4726*22dc650dSSadaf Ebrahimi 4727*22dc650dSSadaf Ebrahimi# More differences from Perl 4728*22dc650dSSadaf Ebrahimi 4729*22dc650dSSadaf Ebrahimi/^\p{Common}/utf 4730*22dc650dSSadaf Ebrahimi \x{60c} 4731*22dc650dSSadaf Ebrahimi 0: \x{60c} 4732*22dc650dSSadaf Ebrahimi \x{61f} 4733*22dc650dSSadaf Ebrahimi 0: \x{61f} 4734*22dc650dSSadaf Ebrahimi \x{964} 4735*22dc650dSSadaf Ebrahimi 0: \x{964} 4736*22dc650dSSadaf Ebrahimi \x{965} 4737*22dc650dSSadaf Ebrahimi 0: \x{965} 4738*22dc650dSSadaf Ebrahimi 4739*22dc650dSSadaf Ebrahimi/^\p{Inherited}/utf 4740*22dc650dSSadaf Ebrahimi \x{64b} 4741*22dc650dSSadaf Ebrahimi 0: \x{64b} 4742*22dc650dSSadaf Ebrahimi \x{654} 4743*22dc650dSSadaf Ebrahimi 0: \x{654} 4744*22dc650dSSadaf Ebrahimi \x{655} 4745*22dc650dSSadaf Ebrahimi 0: \x{655} 4746*22dc650dSSadaf Ebrahimi \x{1D1AA} 4747*22dc650dSSadaf Ebrahimi 0: \x{1d1aa} 4748*22dc650dSSadaf Ebrahimi 4749*22dc650dSSadaf Ebrahimi/\N{U+}/ 4750*22dc650dSSadaf EbrahimiFailed: error 193 at offset 2: \N{U+dddd} is supported only in Unicode (UTF) mode 4751*22dc650dSSadaf Ebrahimi 4752*22dc650dSSadaf Ebrahimi/\N{U+}/utf 4753*22dc650dSSadaf EbrahimiFailed: error 178 at offset 5: digits missing in \x{} or \o{} or \N{U+} 4754*22dc650dSSadaf Ebrahimi 4755*22dc650dSSadaf Ebrahimi/\N{U}/ 4756*22dc650dSSadaf EbrahimiFailed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u 4757*22dc650dSSadaf Ebrahimi 4758*22dc650dSSadaf Ebrahimi# This tests the non-UTF Unicode NEL pattern whitespace character, only 4759*22dc650dSSadaf Ebrahimi# recognized by PCRE2 with /x when there is Unicode support. 4760*22dc650dSSadaf Ebrahimi 4761*22dc650dSSadaf Ebrahimi/A 4762*22dc650dSSadaf Ebrahimi 4763*22dc650dSSadaf Ebrahimi�B/x 4764*22dc650dSSadaf Ebrahimi AB 4765*22dc650dSSadaf Ebrahimi 0: AB 4766*22dc650dSSadaf Ebrahimi 4767*22dc650dSSadaf Ebrahimi# This tests Unicode Pattern White Space characters in verb names when they 4768*22dc650dSSadaf Ebrahimi# are being processed with PCRE2_EXTENDED. Note: there are UTF-8 characters 4769*22dc650dSSadaf Ebrahimi# with code points greater than 255 between A, B, and C in the pattern. 4770*22dc650dSSadaf Ebrahimi 4771*22dc650dSSadaf Ebrahimi/(*: AB C)abc/x,utf,mark,alt_verbnames 4772*22dc650dSSadaf Ebrahimi abc 4773*22dc650dSSadaf Ebrahimi 0: abc 4774*22dc650dSSadaf EbrahimiMK: ABC 4775*22dc650dSSadaf Ebrahimi 4776*22dc650dSSadaf Ebrahimi# Script run tests: auto-possessification 4777*22dc650dSSadaf Ebrahimi 4778*22dc650dSSadaf Ebrahimi/^(*sr:.*)/B,utf 4779*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4780*22dc650dSSadaf Ebrahimi Bra 4781*22dc650dSSadaf Ebrahimi ^ 4782*22dc650dSSadaf Ebrahimi Script run 4783*22dc650dSSadaf Ebrahimi Any* 4784*22dc650dSSadaf Ebrahimi Ket 4785*22dc650dSSadaf Ebrahimi Ket 4786*22dc650dSSadaf Ebrahimi End 4787*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4788*22dc650dSSadaf Ebrahimi paypаl.com A classic example of why script run checks are a good thing 4789*22dc650dSSadaf Ebrahimi 0: payp 4790*22dc650dSSadaf Ebrahimi 4791*22dc650dSSadaf Ebrahimi/^(*sr:.*(*ACCEPT))/utf 4792*22dc650dSSadaf Ebrahimi paypаl.com But *ACCEPT breaks things 4793*22dc650dSSadaf Ebrahimi 0: payp\x{430}l.com But *ACCEPT breaks things 4794*22dc650dSSadaf Ebrahimi 4795*22dc650dSSadaf Ebrahimi/^(*sr:\x{2e80}*)/B,utf 4796*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4797*22dc650dSSadaf Ebrahimi Bra 4798*22dc650dSSadaf Ebrahimi ^ 4799*22dc650dSSadaf Ebrahimi Script run 4800*22dc650dSSadaf Ebrahimi \x{2e80}*+ 4801*22dc650dSSadaf Ebrahimi Ket 4802*22dc650dSSadaf Ebrahimi Ket 4803*22dc650dSSadaf Ebrahimi End 4804*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4805*22dc650dSSadaf Ebrahimi 4806*22dc650dSSadaf Ebrahimi/^(*sr:\x{2e80}*)\x{2e80}/B,utf 4807*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4808*22dc650dSSadaf Ebrahimi Bra 4809*22dc650dSSadaf Ebrahimi ^ 4810*22dc650dSSadaf Ebrahimi Script run 4811*22dc650dSSadaf Ebrahimi \x{2e80}* 4812*22dc650dSSadaf Ebrahimi Ket 4813*22dc650dSSadaf Ebrahimi \x{2e80} 4814*22dc650dSSadaf Ebrahimi Ket 4815*22dc650dSSadaf Ebrahimi End 4816*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4817*22dc650dSSadaf Ebrahimi 4818*22dc650dSSadaf Ebrahimi/(?<!)(*sr:)/B 4819*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4820*22dc650dSSadaf Ebrahimi Bra 4821*22dc650dSSadaf Ebrahimi Assert back not 4822*22dc650dSSadaf Ebrahimi Ket 4823*22dc650dSSadaf Ebrahimi Script run 4824*22dc650dSSadaf Ebrahimi Ket 4825*22dc650dSSadaf Ebrahimi Ket 4826*22dc650dSSadaf Ebrahimi End 4827*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4828*22dc650dSSadaf Ebrahimi 4829*22dc650dSSadaf Ebrahimi/(?<=abc(?=X(*sr:BXY)CCC)XBXYCCC)./B 4830*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4831*22dc650dSSadaf Ebrahimi Bra 4832*22dc650dSSadaf Ebrahimi Assert back 4833*22dc650dSSadaf Ebrahimi Reverse 4834*22dc650dSSadaf Ebrahimi abc 4835*22dc650dSSadaf Ebrahimi Assert 4836*22dc650dSSadaf Ebrahimi X 4837*22dc650dSSadaf Ebrahimi Script run 4838*22dc650dSSadaf Ebrahimi BXY 4839*22dc650dSSadaf Ebrahimi Ket 4840*22dc650dSSadaf Ebrahimi CCC 4841*22dc650dSSadaf Ebrahimi Ket 4842*22dc650dSSadaf Ebrahimi XBXYCCC 4843*22dc650dSSadaf Ebrahimi Ket 4844*22dc650dSSadaf Ebrahimi Any 4845*22dc650dSSadaf Ebrahimi Ket 4846*22dc650dSSadaf Ebrahimi End 4847*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4848*22dc650dSSadaf Ebrahimi abcXBXYCCC! 4849*22dc650dSSadaf Ebrahimi 0: ! 4850*22dc650dSSadaf Ebrahimi 4851*22dc650dSSadaf Ebrahimi# Some script run patterns are broken in Perl 5.28.0. These can be moved into 4852*22dc650dSSadaf Ebrahimi# test 4 when a mended version of Perl is released. 4853*22dc650dSSadaf Ebrahimi 4854*22dc650dSSadaf Ebrahimi/^(*sr:.{4})/utf 4855*22dc650dSSadaf Ebrahimi \x{0980}12\x{0993} Bengali Common-digits Bengali 4856*22dc650dSSadaf Ebrahimi 0: \x{980}12\x{993} 4857*22dc650dSSadaf Ebrahimi \x{0780}12\x{07b1} Thaana Common-digits Thaana 4858*22dc650dSSadaf Ebrahimi 0: \x{780}12\x{7b1} 4859*22dc650dSSadaf Ebrahimi \x{0e01}12\x{0e5b} Thai Common-digits Thai 4860*22dc650dSSadaf Ebrahimi 0: \x{e01}12\x{e5b} 4861*22dc650dSSadaf Ebrahimi \x{1780}12\x{19ff} Khmer Common-digits Khmer 4862*22dc650dSSadaf Ebrahimi 0: \x{1780}12\x{19ff} 4863*22dc650dSSadaf Ebrahimi \x{0904}12\x{0939} Devanagari Common-digits Devanagari 4864*22dc650dSSadaf Ebrahimi 0: \x{904}12\x{939} 4865*22dc650dSSadaf Ebrahimi A\x{ff10}\x{ff19}B Latin Common-notascii-digits Latin 4866*22dc650dSSadaf Ebrahimi 0: A\x{ff10}\x{ff19}B 4867*22dc650dSSadaf Ebrahimi A\x{1d7ce}\x{1d7cf}B Latin fancy-common-digits Latin 4868*22dc650dSSadaf Ebrahimi 0: A\x{1d7ce}\x{1d7cf}B 4869*22dc650dSSadaf Ebrahimi 4870*22dc650dSSadaf Ebrahimi# These ones involve non-ASCII but nevertheless Common digits. As of October 4871*22dc650dSSadaf Ebrahimi# 2018 even blead Perl wasn't handling all of these - but is going to. 4872*22dc650dSSadaf Ebrahimi 4873*22dc650dSSadaf Ebrahimi/^(*sr:.{4})/utf 4874*22dc650dSSadaf Ebrahimi A\x{ff10}\x{ff19}B Latin Common-notascii-digits Latin 4875*22dc650dSSadaf Ebrahimi 0: A\x{ff10}\x{ff19}B 4876*22dc650dSSadaf Ebrahimi \x{ff10}\x{ff19}.. Common-notascii-digits Common Common 4877*22dc650dSSadaf Ebrahimi 0: \x{ff10}\x{ff19}.. 4878*22dc650dSSadaf Ebrahimi A\x{ff10}BC Latin Common-notascii-digit Latin Latin 4879*22dc650dSSadaf Ebrahimi 0: A\x{ff10}BC 4880*22dc650dSSadaf Ebrahimi A\x{1d7ce}\x{1d7cf}B Latin fancy-common-digits Latin 4881*22dc650dSSadaf Ebrahimi 0: A\x{1d7ce}\x{1d7cf}B 4882*22dc650dSSadaf Ebrahimi \x{1d7ce}\x{1d7cf},, fancy-common-digits Common Common 4883*22dc650dSSadaf Ebrahimi 0: \x{1d7ce}\x{1d7cf},, 4884*22dc650dSSadaf Ebrahimi A\x{1d7ce}BC Latin fancy-common-digit Latin Latin 4885*22dc650dSSadaf Ebrahimi 0: A\x{1d7ce}BC 4886*22dc650dSSadaf Ebrahimi 4887*22dc650dSSadaf Ebrahimi# Some Unicode 12.1.0 new script characters 4888*22dc650dSSadaf Ebrahimi 4889*22dc650dSSadaf Ebrahimi/\p{Elymaic}\p{Nandinagari}\p{Nyiakeng_Puachue_Hmong}\p{Wancho}/utf 4890*22dc650dSSadaf Ebrahimi \x{10fe5}\x{119AC}\x{1E10E}\x{1E2D1} 4891*22dc650dSSadaf Ebrahimi 0: \x{10fe5}\x{119ac}\x{1e10e}\x{1e2d1} 4892*22dc650dSSadaf Ebrahimi 4893*22dc650dSSadaf Ebrahimi# Some Unicode 13.0.0 new script characters 4894*22dc650dSSadaf Ebrahimi 4895*22dc650dSSadaf Ebrahimi/\p{Chorasmian}\p{Dives_Akuru}\p{Khitan_Small_Script}\p{Yezidi}/utf 4896*22dc650dSSadaf Ebrahimi \x{10FB0}\x{11900}\x{18B00}\x{10E80} 4897*22dc650dSSadaf Ebrahimi 0: \x{10fb0}\x{11900}\x{18b00}\x{10e80} 4898*22dc650dSSadaf Ebrahimi 4899*22dc650dSSadaf Ebrahimi# ------- 4900*22dc650dSSadaf Ebrahimi 4901*22dc650dSSadaf Ebrahimi# Test reference and errors in non-ASCII characters in group names 4902*22dc650dSSadaf Ebrahimi 4903*22dc650dSSadaf Ebrahimi/(?'ABC'...)/I,utf 4904*22dc650dSSadaf EbrahimiCapture group count = 1 4905*22dc650dSSadaf EbrahimiNamed capture groups: 4906*22dc650dSSadaf Ebrahimi ABC 1 4907*22dc650dSSadaf EbrahimiOptions: utf 4908*22dc650dSSadaf EbrahimiSubject length lower bound = 3 4909*22dc650dSSadaf Ebrahimi abcde\=copy=ABC 4910*22dc650dSSadaf Ebrahimi 0: abc 4911*22dc650dSSadaf Ebrahimi 1: abc 4912*22dc650dSSadaf Ebrahimi C abc (3) ABC (group 1) 4913*22dc650dSSadaf Ebrahimi 4914*22dc650dSSadaf Ebrahimi# Bad ones 4915*22dc650dSSadaf Ebrahimi 4916*22dc650dSSadaf Ebrahimi/(?'AB၌C'...)\g{AB၌C}/utf 4917*22dc650dSSadaf EbrahimiFailed: error 142 at offset 5: syntax error in subpattern name (missing terminator?) 4918*22dc650dSSadaf Ebrahimi 4919*22dc650dSSadaf Ebrahimi/(?'٠ABC'...)/utf 4920*22dc650dSSadaf EbrahimiFailed: error 144 at offset 3: subpattern name must start with a non-digit 4921*22dc650dSSadaf Ebrahimi 4922*22dc650dSSadaf Ebrahimi/(?'²ABC'...)/utf 4923*22dc650dSSadaf EbrahimiFailed: error 162 at offset 3: subpattern name expected 4924*22dc650dSSadaf Ebrahimi 4925*22dc650dSSadaf Ebrahimi/(?'X²ABC'...)/utf 4926*22dc650dSSadaf EbrahimiFailed: error 142 at offset 4: syntax error in subpattern name (missing terminator?) 4927*22dc650dSSadaf Ebrahimi 4928*22dc650dSSadaf Ebrahimi# ------- 4929*22dc650dSSadaf Ebrahimi 4930*22dc650dSSadaf Ebrahimi/\p{Any}*xyz/I 4931*22dc650dSSadaf EbrahimiCapture group count = 0 4932*22dc650dSSadaf EbrahimiCompile options: <none> 4933*22dc650dSSadaf EbrahimiOverall options: anchored 4934*22dc650dSSadaf EbrahimiLast code unit = 'z' 4935*22dc650dSSadaf EbrahimiSubject length lower bound = 3 4936*22dc650dSSadaf Ebrahimi 4937*22dc650dSSadaf Ebrahimi/(|�)7/caseless,ucp 4938*22dc650dSSadaf Ebrahimi 4939*22dc650dSSadaf Ebrahimi/(\xc1)\1/i,ucp 4940*22dc650dSSadaf Ebrahimi \xc1\xe1\=no_jit 4941*22dc650dSSadaf Ebrahimi 0: \xc1\xe1 4942*22dc650dSSadaf Ebrahimi 1: \xc1 4943*22dc650dSSadaf Ebrahimi 4944*22dc650dSSadaf Ebrahimi/\p{L&}+\p{bidi_control}/B 4945*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4946*22dc650dSSadaf Ebrahimi Bra 4947*22dc650dSSadaf Ebrahimi prop Lc + 4948*22dc650dSSadaf Ebrahimi prop Bidicontrol 4949*22dc650dSSadaf Ebrahimi Ket 4950*22dc650dSSadaf Ebrahimi End 4951*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4952*22dc650dSSadaf Ebrahimi 4953*22dc650dSSadaf Ebrahimi/\p{bidi_control}+\p{L&}/B 4954*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4955*22dc650dSSadaf Ebrahimi Bra 4956*22dc650dSSadaf Ebrahimi prop Bidicontrol + 4957*22dc650dSSadaf Ebrahimi prop Lc 4958*22dc650dSSadaf Ebrahimi Ket 4959*22dc650dSSadaf Ebrahimi End 4960*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4961*22dc650dSSadaf Ebrahimi 4962*22dc650dSSadaf Ebrahimi/\p{han}/B 4963*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4964*22dc650dSSadaf Ebrahimi Bra 4965*22dc650dSSadaf Ebrahimi prop Han 4966*22dc650dSSadaf Ebrahimi Ket 4967*22dc650dSSadaf Ebrahimi End 4968*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4969*22dc650dSSadaf Ebrahimi 4970*22dc650dSSadaf Ebrahimi/\p{script:han}/B 4971*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4972*22dc650dSSadaf Ebrahimi Bra 4973*22dc650dSSadaf Ebrahimi prop script:Han 4974*22dc650dSSadaf Ebrahimi Ket 4975*22dc650dSSadaf Ebrahimi End 4976*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4977*22dc650dSSadaf Ebrahimi 4978*22dc650dSSadaf Ebrahimi/\p{sc:han}/B 4979*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4980*22dc650dSSadaf Ebrahimi Bra 4981*22dc650dSSadaf Ebrahimi prop script:Han 4982*22dc650dSSadaf Ebrahimi Ket 4983*22dc650dSSadaf Ebrahimi End 4984*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4985*22dc650dSSadaf Ebrahimi 4986*22dc650dSSadaf Ebrahimi/\p{script extensions:han}/B 4987*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4988*22dc650dSSadaf Ebrahimi Bra 4989*22dc650dSSadaf Ebrahimi prop Han 4990*22dc650dSSadaf Ebrahimi Ket 4991*22dc650dSSadaf Ebrahimi End 4992*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4993*22dc650dSSadaf Ebrahimi 4994*22dc650dSSadaf Ebrahimi/\p{scx:han}/B 4995*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 4996*22dc650dSSadaf Ebrahimi Bra 4997*22dc650dSSadaf Ebrahimi prop Han 4998*22dc650dSSadaf Ebrahimi Ket 4999*22dc650dSSadaf Ebrahimi End 5000*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5001*22dc650dSSadaf Ebrahimi 5002*22dc650dSSadaf Ebrahimi# Test error - invalid script name 5003*22dc650dSSadaf Ebrahimi 5004*22dc650dSSadaf Ebrahimi/\p{sc:L}/ 5005*22dc650dSSadaf EbrahimiFailed: error 147 at offset 8: unknown property after \P or \p 5006*22dc650dSSadaf Ebrahimi 5007*22dc650dSSadaf Ebrahimi# Some Boolean property tests that differ from Perl 5008*22dc650dSSadaf Ebrahimi 5009*22dc650dSSadaf Ebrahimi/\p{emojimodifierbase}\p{ebase}/g,utf 5010*22dc650dSSadaf Ebrahimi >AN<>\x{261d}\x{1faf6}<>yz< 5011*22dc650dSSadaf Ebrahimi 0: \x{261d}\x{1faf6} 5012*22dc650dSSadaf Ebrahimi 5013*22dc650dSSadaf Ebrahimi/\p{graphemelink}\p{grlink}/g,utf 5014*22dc650dSSadaf Ebrahimi >AN<>\x{11d97}\x{94d}<>yz< 5015*22dc650dSSadaf Ebrahimi 0: \x{11d97}\x{94d} 5016*22dc650dSSadaf Ebrahimi 5017*22dc650dSSadaf Ebrahimi/\p{soft dotted}\p{sd}/g,utf 5018*22dc650dSSadaf Ebrahimi >AF23<>\x{1df1a}\x{69}<>yz< 5019*22dc650dSSadaf Ebrahimi 0: \x{1df1a}i 5020*22dc650dSSadaf Ebrahimi 5021*22dc650dSSadaf Ebrahimi# ------------------------------------------------ 5022*22dc650dSSadaf Ebrahimi 5023*22dc650dSSadaf Ebrahimi/\p{\2b[:x�igi:t:_/ 5024*22dc650dSSadaf EbrahimiFailed: error 146 at offset 17: malformed \P or \p sequence 5025*22dc650dSSadaf Ebrahimi 5026*22dc650dSSadaf Ebrahimi# Tests for PCRE2_EXTRA_CASELESS_RESTRICT. Compare each test with and without 5027*22dc650dSSadaf Ebrahimi# the restriction. 5028*22dc650dSSadaf Ebrahimi 5029*22dc650dSSadaf Ebrahimi/AskZ/i,utf,caseless_restrict 5030*22dc650dSSadaf Ebrahimi AskZ 5031*22dc650dSSadaf Ebrahimi 0: AskZ 5032*22dc650dSSadaf Ebrahimi aSKz 5033*22dc650dSSadaf Ebrahimi 0: aSKz 5034*22dc650dSSadaf Ebrahimi\= Expect no match 5035*22dc650dSSadaf Ebrahimi A\x{17f}kZ 5036*22dc650dSSadaf EbrahimiNo match 5037*22dc650dSSadaf Ebrahimi As\x{212a}Z 5038*22dc650dSSadaf EbrahimiNo match 5039*22dc650dSSadaf Ebrahimi 5040*22dc650dSSadaf Ebrahimi/AskZ/i,utf 5041*22dc650dSSadaf Ebrahimi AskZ 5042*22dc650dSSadaf Ebrahimi 0: AskZ 5043*22dc650dSSadaf Ebrahimi aSKz 5044*22dc650dSSadaf Ebrahimi 0: aSKz 5045*22dc650dSSadaf Ebrahimi A\x{17f}kZ 5046*22dc650dSSadaf Ebrahimi 0: A\x{17f}kZ 5047*22dc650dSSadaf Ebrahimi As\x{212a}Z 5048*22dc650dSSadaf Ebrahimi 0: As\x{212a}Z 5049*22dc650dSSadaf Ebrahimi 5050*22dc650dSSadaf Ebrahimi/A\x{17f}\x{212a}Z/ir,utf 5051*22dc650dSSadaf Ebrahimi \= Expect no match 5052*22dc650dSSadaf Ebrahimi AskZ 5053*22dc650dSSadaf EbrahimiNo match 5054*22dc650dSSadaf Ebrahimi 5055*22dc650dSSadaf Ebrahimi/A\x{17f}\x{212a}Z/i,utf 5056*22dc650dSSadaf Ebrahimi AskZ 5057*22dc650dSSadaf Ebrahimi 0: AskZ 5058*22dc650dSSadaf Ebrahimi 5059*22dc650dSSadaf Ebrahimi/[AskZ]+/i,utf,caseless_restrict 5060*22dc650dSSadaf Ebrahimi AskZ 5061*22dc650dSSadaf Ebrahimi 0: AskZ 5062*22dc650dSSadaf Ebrahimi aSKz 5063*22dc650dSSadaf Ebrahimi 0: aSKz 5064*22dc650dSSadaf Ebrahimi A\x{17f}kZ 5065*22dc650dSSadaf Ebrahimi 0: A 5066*22dc650dSSadaf Ebrahimi As\x{212a}Z 5067*22dc650dSSadaf Ebrahimi 0: As 5068*22dc650dSSadaf Ebrahimi 5069*22dc650dSSadaf Ebrahimi/[AskZ]+/i,utf 5070*22dc650dSSadaf Ebrahimi AskZ 5071*22dc650dSSadaf Ebrahimi 0: AskZ 5072*22dc650dSSadaf Ebrahimi aSKz 5073*22dc650dSSadaf Ebrahimi 0: aSKz 5074*22dc650dSSadaf Ebrahimi A\x{17f}kZ 5075*22dc650dSSadaf Ebrahimi 0: A\x{17f}kZ 5076*22dc650dSSadaf Ebrahimi As\x{212a}Z 5077*22dc650dSSadaf Ebrahimi 0: As\x{212a}Z 5078*22dc650dSSadaf Ebrahimi 5079*22dc650dSSadaf Ebrahimi/[\x{17f}\x{212a}]+/ir,utf 5080*22dc650dSSadaf Ebrahimi\= Expect no match 5081*22dc650dSSadaf Ebrahimi AskZ 5082*22dc650dSSadaf EbrahimiNo match 5083*22dc650dSSadaf Ebrahimi 5084*22dc650dSSadaf Ebrahimi/[\x{17f}\x{212a}]+/i,utf 5085*22dc650dSSadaf Ebrahimi AskZ 5086*22dc650dSSadaf Ebrahimi 0: sk 5087*22dc650dSSadaf Ebrahimi 5088*22dc650dSSadaf Ebrahimi/[^s]+/ir,utf 5089*22dc650dSSadaf Ebrahimi A\x{17f}Z 5090*22dc650dSSadaf Ebrahimi 0: A\x{17f}Z 5091*22dc650dSSadaf Ebrahimi 5092*22dc650dSSadaf Ebrahimi/[^s]+/i,utf 5093*22dc650dSSadaf Ebrahimi A\x{17f}Z 5094*22dc650dSSadaf Ebrahimi 0: A 5095*22dc650dSSadaf Ebrahimi 5096*22dc650dSSadaf Ebrahimi/[^k]+/ir,utf 5097*22dc650dSSadaf Ebrahimi A\x{212a}Z 5098*22dc650dSSadaf Ebrahimi 0: A\x{212a}Z 5099*22dc650dSSadaf Ebrahimi 5100*22dc650dSSadaf Ebrahimi/[^k]+/i,utf 5101*22dc650dSSadaf Ebrahimi A\x{212a}Z 5102*22dc650dSSadaf Ebrahimi 0: A 5103*22dc650dSSadaf Ebrahimi 5104*22dc650dSSadaf Ebrahimi/[^sk]+/ir,utf 5105*22dc650dSSadaf Ebrahimi A\x{17f}\x{212a}Z 5106*22dc650dSSadaf Ebrahimi 0: A\x{17f}\x{212a}Z 5107*22dc650dSSadaf Ebrahimi 5108*22dc650dSSadaf Ebrahimi/[^sk]+/i,utf 5109*22dc650dSSadaf Ebrahimi A\x{17f}\x{212a}Z 5110*22dc650dSSadaf Ebrahimi 0: A 5111*22dc650dSSadaf Ebrahimi 5112*22dc650dSSadaf Ebrahimi/[^\x{17f}]+/ir,utf 5113*22dc650dSSadaf Ebrahimi AsSZ 5114*22dc650dSSadaf Ebrahimi 0: AsSZ 5115*22dc650dSSadaf Ebrahimi 5116*22dc650dSSadaf Ebrahimi/[^\x{17f}]+/i,utf 5117*22dc650dSSadaf Ebrahimi AsSZ 5118*22dc650dSSadaf Ebrahimi 0: A 5119*22dc650dSSadaf Ebrahimi 5120*22dc650dSSadaf Ebrahimi/[Ss]+/irB,utf 5121*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5122*22dc650dSSadaf Ebrahimi Bra 5123*22dc650dSSadaf Ebrahimi /i S++ 5124*22dc650dSSadaf Ebrahimi Ket 5125*22dc650dSSadaf Ebrahimi End 5126*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5127*22dc650dSSadaf Ebrahimi Sss\x{17f}ss 5128*22dc650dSSadaf Ebrahimi 0: Sss 5129*22dc650dSSadaf Ebrahimi 5130*22dc650dSSadaf Ebrahimi/[Ss]+/iB,utf 5131*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5132*22dc650dSSadaf Ebrahimi Bra 5133*22dc650dSSadaf Ebrahimi [Ss\x{17f}\x{17f}]++ 5134*22dc650dSSadaf Ebrahimi Ket 5135*22dc650dSSadaf Ebrahimi End 5136*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5137*22dc650dSSadaf Ebrahimi Sss\x{17f}ss 5138*22dc650dSSadaf Ebrahimi 0: Sss\x{17f}ss 5139*22dc650dSSadaf Ebrahimi 5140*22dc650dSSadaf Ebrahimi/[S\x{17f}]/irB,utf 5141*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5142*22dc650dSSadaf Ebrahimi Bra 5143*22dc650dSSadaf Ebrahimi [Ss\x{17f}] 5144*22dc650dSSadaf Ebrahimi Ket 5145*22dc650dSSadaf Ebrahimi End 5146*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5147*22dc650dSSadaf Ebrahimi 5148*22dc650dSSadaf Ebrahimi/[S\x{17f}]/iB,utf 5149*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5150*22dc650dSSadaf Ebrahimi Bra 5151*22dc650dSSadaf Ebrahimi [Ss\x{17f}\x{17f}] 5152*22dc650dSSadaf Ebrahimi Ket 5153*22dc650dSSadaf Ebrahimi End 5154*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5155*22dc650dSSadaf Ebrahimi 5156*22dc650dSSadaf Ebrahimi/[\x{17f}s]/irB,utf 5157*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5158*22dc650dSSadaf Ebrahimi Bra 5159*22dc650dSSadaf Ebrahimi [Ss\x{17f}] 5160*22dc650dSSadaf Ebrahimi Ket 5161*22dc650dSSadaf Ebrahimi End 5162*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5163*22dc650dSSadaf Ebrahimi 5164*22dc650dSSadaf Ebrahimi/[\x{17f}s]/iB,utf 5165*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5166*22dc650dSSadaf Ebrahimi Bra 5167*22dc650dSSadaf Ebrahimi [Ss\x{17f}\x{17f}] 5168*22dc650dSSadaf Ebrahimi Ket 5169*22dc650dSSadaf Ebrahimi End 5170*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5171*22dc650dSSadaf Ebrahimi 5172*22dc650dSSadaf Ebrahimi/[\x{4b}\x{6b}]/irB,utf 5173*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5174*22dc650dSSadaf Ebrahimi Bra 5175*22dc650dSSadaf Ebrahimi /i K 5176*22dc650dSSadaf Ebrahimi Ket 5177*22dc650dSSadaf Ebrahimi End 5178*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5179*22dc650dSSadaf Ebrahimi 5180*22dc650dSSadaf Ebrahimi/[\x{4b}\x{6b}]/iB,utf 5181*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5182*22dc650dSSadaf Ebrahimi Bra 5183*22dc650dSSadaf Ebrahimi [Kk\x{212a}\x{212a}] 5184*22dc650dSSadaf Ebrahimi Ket 5185*22dc650dSSadaf Ebrahimi End 5186*22dc650dSSadaf Ebrahimi------------------------------------------------------------------ 5187*22dc650dSSadaf Ebrahimi 5188*22dc650dSSadaf Ebrahimi/s(?r)s(?-r)s(?r:s)s/i,utf 5189*22dc650dSSadaf Ebrahimi \x{17f}S\x{17f}S\x{17f} 5190*22dc650dSSadaf Ebrahimi 0: \x{17f}S\x{17f}S\x{17f} 5191*22dc650dSSadaf Ebrahimi\= Expect no match 5192*22dc650dSSadaf Ebrahimi \x{17f}\x{17f}\x{17f}S\x{17f} 5193*22dc650dSSadaf EbrahimiNo match 5194*22dc650dSSadaf Ebrahimi \x{17f}S\x{17f}\x{17f}\x{17f} 5195*22dc650dSSadaf EbrahimiNo match 5196*22dc650dSSadaf Ebrahimi 5197*22dc650dSSadaf Ebrahimi/k(?^i)k/ir,utf 5198*22dc650dSSadaf Ebrahimi K\x{212a} 5199*22dc650dSSadaf Ebrahimi 0: K\x{212a} 5200*22dc650dSSadaf Ebrahimi\= Expect no match 5201*22dc650dSSadaf Ebrahimi \x{212a}\x{212a} 5202*22dc650dSSadaf EbrahimiNo match 5203*22dc650dSSadaf Ebrahimi 5204*22dc650dSSadaf Ebrahimi# End caseless restrict tests 5205*22dc650dSSadaf Ebrahimi 5206*22dc650dSSadaf Ebrahimi# TESTS for PCRE2_EXTRA_ASCII_xxx - again, tests with and without. 5207*22dc650dSSadaf Ebrahimi 5208*22dc650dSSadaf Ebrahimi# DIGITS 5209*22dc650dSSadaf Ebrahimi 5210*22dc650dSSadaf Ebrahimi/\d+/i,utf 5211*22dc650dSSadaf Ebrahimi 123\x{660}456 5212*22dc650dSSadaf Ebrahimi 0: 123 5213*22dc650dSSadaf Ebrahimi 5214*22dc650dSSadaf Ebrahimi/\d+/i,utf,ucp 5215*22dc650dSSadaf Ebrahimi 123\x{660}456 5216*22dc650dSSadaf Ebrahimi 0: 123\x{660}456 5217*22dc650dSSadaf Ebrahimi 5218*22dc650dSSadaf Ebrahimi/\d+/i,utf,ucp,ascii_bsd 5219*22dc650dSSadaf Ebrahimi 123\x{660}456 5220*22dc650dSSadaf Ebrahimi 0: 123 5221*22dc650dSSadaf Ebrahimi 5222*22dc650dSSadaf Ebrahimi/[\d]+/i,utf 5223*22dc650dSSadaf Ebrahimi 123\x{660}456 5224*22dc650dSSadaf Ebrahimi 0: 123 5225*22dc650dSSadaf Ebrahimi 5226*22dc650dSSadaf Ebrahimi/[\d]+/i,utf,ucp 5227*22dc650dSSadaf Ebrahimi 123\x{660}456 5228*22dc650dSSadaf Ebrahimi 0: 123\x{660}456 5229*22dc650dSSadaf Ebrahimi 5230*22dc650dSSadaf Ebrahimi/[\d]+/i,utf,ucp,ascii_bsd 5231*22dc650dSSadaf Ebrahimi 123\x{660}456 5232*22dc650dSSadaf Ebrahimi 0: 123 5233*22dc650dSSadaf Ebrahimi 5234*22dc650dSSadaf Ebrahimi/\d(?aD)\d(?-aD)\d/utf,ucp 5235*22dc650dSSadaf Ebrahimi \x{660}9\x{660} 5236*22dc650dSSadaf Ebrahimi 0: \x{660}9\x{660} 5237*22dc650dSSadaf Ebrahimi\= Expect no match 5238*22dc650dSSadaf Ebrahimi \x{660}\x{660}\x{660} 5239*22dc650dSSadaf EbrahimiNo match 5240*22dc650dSSadaf Ebrahimi 5241*22dc650dSSadaf Ebrahimi/\d(?-aD)\d(?aD)\d/utf,ucp,ascii_bsd 5242*22dc650dSSadaf Ebrahimi 999 5243*22dc650dSSadaf Ebrahimi 0: 999 5244*22dc650dSSadaf Ebrahimi 9\x{660}9 5245*22dc650dSSadaf Ebrahimi 0: 9\x{660}9 5246*22dc650dSSadaf Ebrahimi 5247*22dc650dSSadaf Ebrahimi/\d(?a)\d(?-a)\d/utf,ucp 5248*22dc650dSSadaf Ebrahimi \x{660}9\x{660} 5249*22dc650dSSadaf Ebrahimi 0: \x{660}9\x{660} 5250*22dc650dSSadaf Ebrahimi\= Expect no match 5251*22dc650dSSadaf Ebrahimi \x{660}\x{660}\x{660} 5252*22dc650dSSadaf EbrahimiNo match 5253*22dc650dSSadaf Ebrahimi 5254*22dc650dSSadaf Ebrahimi/\d(?-aD)\d(?aD)\d/utf,ucp,ascii_bsd 5255*22dc650dSSadaf Ebrahimi 999 5256*22dc650dSSadaf Ebrahimi 0: 999 5257*22dc650dSSadaf Ebrahimi 9\x{660}9 5258*22dc650dSSadaf Ebrahimi 0: 9\x{660}9 5259*22dc650dSSadaf Ebrahimi 5260*22dc650dSSadaf Ebrahimi# SPACES 5261*22dc650dSSadaf Ebrahimi 5262*22dc650dSSadaf Ebrahimi/>\s+</i,utf 5263*22dc650dSSadaf Ebrahimi > < 5264*22dc650dSSadaf Ebrahimi 0: > < 5265*22dc650dSSadaf Ebrahimi\= Expect no match 5266*22dc650dSSadaf Ebrahimi >\x{a0} < 5267*22dc650dSSadaf EbrahimiNo match 5268*22dc650dSSadaf Ebrahimi 5269*22dc650dSSadaf Ebrahimi/>\s+</i,utf,ucp 5270*22dc650dSSadaf Ebrahimi > < 5271*22dc650dSSadaf Ebrahimi 0: > < 5272*22dc650dSSadaf Ebrahimi >\x{a0} < 5273*22dc650dSSadaf Ebrahimi 0: >\x{a0} < 5274*22dc650dSSadaf Ebrahimi 5275*22dc650dSSadaf Ebrahimi/>\s+</i,utf,ucp,ascii_bss 5276*22dc650dSSadaf Ebrahimi > < 5277*22dc650dSSadaf Ebrahimi 0: > < 5278*22dc650dSSadaf Ebrahimi\= Expect no match 5279*22dc650dSSadaf Ebrahimi >\x{a0} < 5280*22dc650dSSadaf EbrahimiNo match 5281*22dc650dSSadaf Ebrahimi 5282*22dc650dSSadaf Ebrahimi/>[\s]+</i,utf 5283*22dc650dSSadaf Ebrahimi > < 5284*22dc650dSSadaf Ebrahimi 0: > < 5285*22dc650dSSadaf Ebrahimi\= Expect no match 5286*22dc650dSSadaf Ebrahimi >\x{a0} < 5287*22dc650dSSadaf EbrahimiNo match 5288*22dc650dSSadaf Ebrahimi 5289*22dc650dSSadaf Ebrahimi/>[\s]+</i,utf,ucp 5290*22dc650dSSadaf Ebrahimi > < 5291*22dc650dSSadaf Ebrahimi 0: > < 5292*22dc650dSSadaf Ebrahimi >\x{a0} < 5293*22dc650dSSadaf Ebrahimi 0: >\x{a0} < 5294*22dc650dSSadaf Ebrahimi 5295*22dc650dSSadaf Ebrahimi/>[\s]+</i,utf,ucp,ascii_bss 5296*22dc650dSSadaf Ebrahimi > < 5297*22dc650dSSadaf Ebrahimi 0: > < 5298*22dc650dSSadaf Ebrahimi\= Expect no match 5299*22dc650dSSadaf Ebrahimi >\x{a0} < 5300*22dc650dSSadaf EbrahimiNo match 5301*22dc650dSSadaf Ebrahimi 5302*22dc650dSSadaf Ebrahimi/>\s(?aS)\s(?-aS)\s</utf,ucp 5303*22dc650dSSadaf Ebrahimi >\x{a0} \x{a0}< 5304*22dc650dSSadaf Ebrahimi 0: >\x{a0} \x{a0}< 5305*22dc650dSSadaf Ebrahimi\= Expect no match 5306*22dc650dSSadaf Ebrahimi >\x{a0}\x{a0}\x{a0}< 5307*22dc650dSSadaf EbrahimiNo match 5308*22dc650dSSadaf Ebrahimi 5309*22dc650dSSadaf Ebrahimi/>\s(?a)\s(?-a)\s</utf,ucp 5310*22dc650dSSadaf Ebrahimi >\x{a0} \x{a0}< 5311*22dc650dSSadaf Ebrahimi 0: >\x{a0} \x{a0}< 5312*22dc650dSSadaf Ebrahimi\= Expect no match 5313*22dc650dSSadaf Ebrahimi >\x{a0}\x{a0}\x{a0}< 5314*22dc650dSSadaf EbrahimiNo match 5315*22dc650dSSadaf Ebrahimi 5316*22dc650dSSadaf Ebrahimi# WORDS 5317*22dc650dSSadaf Ebrahimi 5318*22dc650dSSadaf Ebrahimi/\w+/i,utf 5319*22dc650dSSadaf Ebrahimi 123\x{660}abc 5320*22dc650dSSadaf Ebrahimi 0: 123 5321*22dc650dSSadaf Ebrahimi 5322*22dc650dSSadaf Ebrahimi/\w+/i,utf,ucp 5323*22dc650dSSadaf Ebrahimi 123\x{660}abc 5324*22dc650dSSadaf Ebrahimi 0: 123\x{660}abc 5325*22dc650dSSadaf Ebrahimi 5326*22dc650dSSadaf Ebrahimi/\w+/i,utf,ucp,ascii_bsw 5327*22dc650dSSadaf Ebrahimi 123\x{660}abc 5328*22dc650dSSadaf Ebrahimi 0: 123 5329*22dc650dSSadaf Ebrahimi 5330*22dc650dSSadaf Ebrahimi/[\w]+/i,utf 5331*22dc650dSSadaf Ebrahimi 123\x{660}abc 5332*22dc650dSSadaf Ebrahimi 0: 123 5333*22dc650dSSadaf Ebrahimi 5334*22dc650dSSadaf Ebrahimi/[\w]+/i,utf,ucp 5335*22dc650dSSadaf Ebrahimi 123\x{660}abc 5336*22dc650dSSadaf Ebrahimi 0: 123\x{660}abc 5337*22dc650dSSadaf Ebrahimi 5338*22dc650dSSadaf Ebrahimi/[\w]+/i,utf,ucp,ascii_bsw 5339*22dc650dSSadaf Ebrahimi 123\x{660}abc 5340*22dc650dSSadaf Ebrahimi 0: 123 5341*22dc650dSSadaf Ebrahimi 5342*22dc650dSSadaf Ebrahimi/\w(?aW)\w(?-aW)\w/utf,ucp 5343*22dc650dSSadaf Ebrahimi \x{660}A\x{c0} 5344*22dc650dSSadaf Ebrahimi 0: \x{660}A\x{c0} 5345*22dc650dSSadaf Ebrahimi\= Expect no match 5346*22dc650dSSadaf Ebrahimi \x{660}\x{c0}\x{c0} 5347*22dc650dSSadaf EbrahimiNo match 5348*22dc650dSSadaf Ebrahimi 5349*22dc650dSSadaf Ebrahimi/\w(?a)\w(?-a)\w/utf,ucp 5350*22dc650dSSadaf Ebrahimi \x{660}A\x{c0} 5351*22dc650dSSadaf Ebrahimi 0: \x{660}A\x{c0} 5352*22dc650dSSadaf Ebrahimi\= Expect no match 5353*22dc650dSSadaf Ebrahimi \x{660}\x{c0}\x{c0} 5354*22dc650dSSadaf EbrahimiNo match 5355*22dc650dSSadaf Ebrahimi 5356*22dc650dSSadaf Ebrahimi# WORD BOUNDARY 5357*22dc650dSSadaf Ebrahimi 5358*22dc650dSSadaf Ebrahimi/\bABC\b/utf 5359*22dc650dSSadaf Ebrahimi \x{c0}ABC\x{d0} 5360*22dc650dSSadaf Ebrahimi 0: ABC 5361*22dc650dSSadaf Ebrahimi 5362*22dc650dSSadaf Ebrahimi/\bABC\b/utf,ucp 5363*22dc650dSSadaf Ebrahimi\= Expect no match 5364*22dc650dSSadaf Ebrahimi \x{c0}ABC\x{d0} 5365*22dc650dSSadaf EbrahimiNo match 5366*22dc650dSSadaf Ebrahimi 5367*22dc650dSSadaf Ebrahimi/\bABC\b/utf,ucp,ascii_bsw 5368*22dc650dSSadaf Ebrahimi \x{c0}ABC\x{d0} 5369*22dc650dSSadaf Ebrahimi 0: ABC 5370*22dc650dSSadaf Ebrahimi 5371*22dc650dSSadaf Ebrahimi/\bABC\b/utf,ucp,ascii_all 5372*22dc650dSSadaf Ebrahimi \x{c0}ABC\x{d0} 5373*22dc650dSSadaf Ebrahimi 0: ABC 5374*22dc650dSSadaf Ebrahimi 5375*22dc650dSSadaf Ebrahimi# POSIX 5376*22dc650dSSadaf Ebrahimi 5377*22dc650dSSadaf Ebrahimi/^[[:digit:]]+$/utf,ucp 5378*22dc650dSSadaf Ebrahimi 123456 5379*22dc650dSSadaf Ebrahimi 0: 123456 5380*22dc650dSSadaf Ebrahimi 123\x{660}456 5381*22dc650dSSadaf Ebrahimi 0: 123\x{660}456 5382*22dc650dSSadaf Ebrahimi 5383*22dc650dSSadaf Ebrahimi/^[[:digit:]]+$/utf,ucp,ascii_digit 5384*22dc650dSSadaf Ebrahimi 123456 5385*22dc650dSSadaf Ebrahimi 0: 123456 5386*22dc650dSSadaf Ebrahimi\= Expect no match 5387*22dc650dSSadaf Ebrahimi 123\x{660}456 5388*22dc650dSSadaf EbrahimiNo match 5389*22dc650dSSadaf Ebrahimi 5390*22dc650dSSadaf Ebrahimi/[[:digit:]]+/g,utf,ucp,ascii_digit 5391*22dc650dSSadaf Ebrahimi 123\x{660}456 5392*22dc650dSSadaf Ebrahimi 0: 123 5393*22dc650dSSadaf Ebrahimi 0: 456 5394*22dc650dSSadaf Ebrahimi 5395*22dc650dSSadaf Ebrahimi/(?-aT)[[:digit:]](?aT)[[:digit:]]/utf,ucp,ascii_digit 5396*22dc650dSSadaf Ebrahimi 11 5397*22dc650dSSadaf Ebrahimi 0: 11 5398*22dc650dSSadaf Ebrahimi \x{ff11}1 5399*22dc650dSSadaf Ebrahimi 0: \x{ff11}1 5400*22dc650dSSadaf Ebrahimi\= Expect no match 5401*22dc650dSSadaf Ebrahimi 1\x{ff11} 5402*22dc650dSSadaf EbrahimiNo match 5403*22dc650dSSadaf Ebrahimi 5404*22dc650dSSadaf Ebrahimi/(?-aT:[[:digit:]])[[:digit:]]/utf,ucp,ascii_digit 5405*22dc650dSSadaf Ebrahimi 11 5406*22dc650dSSadaf Ebrahimi 0: 11 5407*22dc650dSSadaf Ebrahimi \x{ff11}1 5408*22dc650dSSadaf Ebrahimi 0: \x{ff11}1 5409*22dc650dSSadaf Ebrahimi\= Expect no match 5410*22dc650dSSadaf Ebrahimi 1\x{ff11} 5411*22dc650dSSadaf EbrahimiNo match 5412*22dc650dSSadaf Ebrahimi 5413*22dc650dSSadaf Ebrahimi/(?-aT:[[:digit:]])[[:digit:]]/utf,never_ucp,ascii_digit 5414*22dc650dSSadaf Ebrahimi 11 5415*22dc650dSSadaf Ebrahimi 0: 11 5416*22dc650dSSadaf Ebrahimi\= Expect no match 5417*22dc650dSSadaf Ebrahimi \x{ff11}1 5418*22dc650dSSadaf EbrahimiNo match 5419*22dc650dSSadaf Ebrahimi 1\x{ff11} 5420*22dc650dSSadaf EbrahimiNo match 5421*22dc650dSSadaf Ebrahimi 5422*22dc650dSSadaf Ebrahimi/[[:digit:]]+/utf,ucp,ascii_posix 5423*22dc650dSSadaf Ebrahimi 123\x{660}456 5424*22dc650dSSadaf Ebrahimi 0: 123 5425*22dc650dSSadaf Ebrahimi 5426*22dc650dSSadaf Ebrahimi/(?-aP)[[:digit:]](?aP)[[:digit:]]/utf,ucp,ascii_posix 5427*22dc650dSSadaf Ebrahimi 11 5428*22dc650dSSadaf Ebrahimi 0: 11 5429*22dc650dSSadaf Ebrahimi \x{ff11}1 5430*22dc650dSSadaf Ebrahimi 0: \x{ff11}1 5431*22dc650dSSadaf Ebrahimi\= Expect no match 5432*22dc650dSSadaf Ebrahimi 1\x{ff11} 5433*22dc650dSSadaf EbrahimiNo match 5434*22dc650dSSadaf Ebrahimi 5435*22dc650dSSadaf Ebrahimi/(?-aP:[[:digit:]])[[:digit:]]/utf,ucp,ascii_posix 5436*22dc650dSSadaf Ebrahimi 11 5437*22dc650dSSadaf Ebrahimi 0: 11 5438*22dc650dSSadaf Ebrahimi \x{ff11}1 5439*22dc650dSSadaf Ebrahimi 0: \x{ff11}1 5440*22dc650dSSadaf Ebrahimi\= Expect no match 5441*22dc650dSSadaf Ebrahimi 1\x{ff11} 5442*22dc650dSSadaf EbrahimiNo match 5443*22dc650dSSadaf Ebrahimi 5444*22dc650dSSadaf Ebrahimi/(?-a:[[:digit:]])[[:digit:]]/a,utf,ucp 5445*22dc650dSSadaf Ebrahimi 11 5446*22dc650dSSadaf Ebrahimi 0: 11 5447*22dc650dSSadaf Ebrahimi \x{ff11}1 5448*22dc650dSSadaf Ebrahimi 0: \x{ff11}1 5449*22dc650dSSadaf Ebrahimi\= Expect no match 5450*22dc650dSSadaf Ebrahimi 1\x{ff11} 5451*22dc650dSSadaf EbrahimiNo match 5452*22dc650dSSadaf Ebrahimi 5453*22dc650dSSadaf Ebrahimi/^[[:xdigit:]]+$/utf,ucp 5454*22dc650dSSadaf Ebrahimi f0 5455*22dc650dSSadaf Ebrahimi 0: f0 5456*22dc650dSSadaf Ebrahimi 1A 5457*22dc650dSSadaf Ebrahimi 0: 1A 5458*22dc650dSSadaf Ebrahimi d\x{ff10} 5459*22dc650dSSadaf Ebrahimi 0: d\x{ff10} 5460*22dc650dSSadaf Ebrahimi \x{ff26}8 5461*22dc650dSSadaf Ebrahimi 0: \x{ff26}8 5462*22dc650dSSadaf Ebrahimi\= Expect no match 5463*22dc650dSSadaf Ebrahimi 8g\=no_jit 5464*22dc650dSSadaf EbrahimiNo match 5465*22dc650dSSadaf Ebrahimi 5466*22dc650dSSadaf Ebrahimi/^[[:xdigit:]]+$/utf,ucp,ascii_digit 5467*22dc650dSSadaf Ebrahimi f0 5468*22dc650dSSadaf Ebrahimi 0: f0 5469*22dc650dSSadaf Ebrahimi 1A 5470*22dc650dSSadaf Ebrahimi 0: 1A 5471*22dc650dSSadaf Ebrahimi\= Expect no match 5472*22dc650dSSadaf Ebrahimi d\x{ff10} 5473*22dc650dSSadaf EbrahimiNo match 5474*22dc650dSSadaf Ebrahimi \x{ff26}8 5475*22dc650dSSadaf EbrahimiNo match 5476*22dc650dSSadaf Ebrahimi 8g 5477*22dc650dSSadaf EbrahimiNo match 5478*22dc650dSSadaf Ebrahimi 5479*22dc650dSSadaf Ebrahimi/>[[:space:]]+</utf,ucp 5480*22dc650dSSadaf Ebrahimi >\x{a0} \x{a0}< 5481*22dc650dSSadaf Ebrahimi 0: >\x{a0} \x{a0}< 5482*22dc650dSSadaf Ebrahimi >\x{a0}\x{a0}\x{a0}< 5483*22dc650dSSadaf Ebrahimi 0: >\x{a0}\x{a0}\x{a0}< 5484*22dc650dSSadaf Ebrahimi 5485*22dc650dSSadaf Ebrahimi/>[[:space:]]+</utf,ucp,ascii_posix 5486*22dc650dSSadaf Ebrahimi\= Expect no match 5487*22dc650dSSadaf Ebrahimi >\x{a0} \x{a0}< 5488*22dc650dSSadaf EbrahimiNo match 5489*22dc650dSSadaf Ebrahimi 5490*22dc650dSSadaf Ebrahimi/(?aP)[[:alnum:]]+/i,ucp,utf 5491*22dc650dSSadaf Ebrahimi abcáxyz 5492*22dc650dSSadaf Ebrahimi 0: abc 5493*22dc650dSSadaf Ebrahimi abc\x{660}xyz 5494*22dc650dSSadaf Ebrahimi 0: abc 5495*22dc650dSSadaf Ebrahimi 5496*22dc650dSSadaf Ebrahimi/(?aP)[[:alnum:]\d]+/i,ucp,utf 5497*22dc650dSSadaf Ebrahimi abc\x{660}xyz 5498*22dc650dSSadaf Ebrahimi 0: abc\x{660}xyz 5499*22dc650dSSadaf Ebrahimi 5500*22dc650dSSadaf Ebrahimi/(*UCP)(*UTF)[[:alnum:]](?aP:[[:alnum:]])[[:alnum:]]/ 5501*22dc650dSSadaf Ebrahimi \x{660}A\x{660} 5502*22dc650dSSadaf Ebrahimi 0: \x{660}A\x{660} 5503*22dc650dSSadaf Ebrahimi\= Expect no match 5504*22dc650dSSadaf Ebrahimi \x{660}\x{660}\x{660} 5505*22dc650dSSadaf EbrahimiNo match 5506*22dc650dSSadaf Ebrahimi 5507*22dc650dSSadaf Ebrahimi# VARIOUS 5508*22dc650dSSadaf Ebrahimi 5509*22dc650dSSadaf Ebrahimi/[\d\s\w]+/a,ucp,utf 5510*22dc650dSSadaf Ebrahimi 9 A\x{660}À 5511*22dc650dSSadaf Ebrahimi 0: 9 A 5512*22dc650dSSadaf Ebrahimi 9 AÀ\x{660} 5513*22dc650dSSadaf Ebrahimi 0: 9 A 5514*22dc650dSSadaf Ebrahimi 5515*22dc650dSSadaf Ebrahimi# End PCRE2_EXTRA_ASCII_xxx tests 5516*22dc650dSSadaf Ebrahimi 5517*22dc650dSSadaf Ebrahimi/(?<!(|l ))/utf 5518*22dc650dSSadaf Ebrahimi (?<!(|l )) 5519No match 5520 5521# End of testinput5 5522