Annotation of embedaddon/pcre/testdata/testinput10, revision 1.1.1.3

1.1.1.2   misho       1: /-- This set of tests check Unicode property support with the DFA matching 
                      2:     functionality of pcre_dfa_exec(). The -dfa flag must be used with pcretest
                      3:     when running it. --/
                      4: 
                      5: /\pL\P{Nd}/8
                      6:     AB
                      7:     *** Failers
                      8:     A0
                      9:     00   
                     10: 
                     11: /\X./8
                     12:     AB
                     13:     A\x{300}BC 
                     14:     A\x{300}\x{301}\x{302}BC 
                     15:     *** Failers
                     16:     \x{300}  
                     17: 
                     18: /\X\X/8
                     19:     ABC
                     20:     A\x{300}B\x{300}\x{301}C 
                     21:     A\x{300}\x{301}\x{302}BC 
                     22:     *** Failers
                     23:     \x{300}  
                     24: 
                     25: /^\pL+/8
                     26:     abcd
                     27:     a 
                     28:     *** Failers 
                     29: 
                     30: /^\PL+/8
                     31:     1234
                     32:     = 
                     33:     *** Failers 
                     34:     abcd 
                     35: 
                     36: /^\X+/8
                     37:     abcdA\x{300}\x{301}\x{302}
                     38:     A\x{300}\x{301}\x{302}
                     39:     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}
                     40:     a 
                     41:     *** Failers 
                     42:     \x{300}\x{301}\x{302}
                     43: 
                     44: /\X?abc/8
                     45:     abc
                     46:     A\x{300}abc
                     47:     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
                     48:     \x{300}abc  
                     49:     *** Failers
                     50: 
                     51: /^\X?abc/8
                     52:     abc
                     53:     A\x{300}abc
                     54:     *** Failers
                     55:     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
                     56:     \x{300}abc  
                     57: 
                     58: /\X*abc/8
                     59:     abc
                     60:     A\x{300}abc
                     61:     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
                     62:     \x{300}abc  
                     63:     *** Failers
                     64: 
                     65: /^\X*abc/8
                     66:     abc
                     67:     A\x{300}abc
                     68:     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
                     69:     *** Failers
                     70:     \x{300}abc  
                     71: 
                     72: /^\pL?=./8
                     73:     A=b
                     74:     =c 
                     75:     *** Failers
                     76:     1=2 
                     77:     AAAA=b  
                     78: 
                     79: /^\pL*=./8
                     80:     AAAA=b
                     81:     =c 
                     82:     *** Failers
                     83:     1=2  
                     84: 
                     85: /^\X{2,3}X/8
                     86:     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
                     87:     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X 
                     88:     *** Failers
                     89:     X
                     90:     A\x{300}\x{301}\x{302}X
                     91:     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
                     92: 
                     93: /^\pC\pL\pM\pN\pP\pS\pZ</8
                     94:     \x7f\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
                     95:     \np\x{300}9!\$ < 
                     96:     ** Failers 
                     97:     ap\x{300}9!\$ < 
                     98:   
                     99: /^\PC/8
                    100:     X
                    101:     ** Failers 
                    102:     \x7f
                    103:   
                    104: /^\PL/8
                    105:     9
                    106:     ** Failers 
                    107:     \x{c0}
                    108:   
                    109: /^\PM/8
                    110:     X
                    111:     ** Failers 
                    112:     \x{30f}
                    113:   
                    114: /^\PN/8
                    115:     X
                    116:     ** Failers 
                    117:     \x{660}
                    118:   
                    119: /^\PP/8
                    120:     X
                    121:     ** Failers 
                    122:     \x{66c}
                    123:   
                    124: /^\PS/8
                    125:     X
                    126:     ** Failers 
                    127:     \x{f01}
                    128:   
                    129: /^\PZ/8
                    130:     X
                    131:     ** Failers 
                    132:     \x{1680}
1.1       misho     133:     
1.1.1.2   misho     134: /^\p{Cc}/8
                    135:     \x{017}
                    136:     \x{09f} 
                    137:     ** Failers
                    138:     \x{0600} 
                    139:   
                    140: /^\p{Cf}/8
                    141:     \x{601}
                    142:     ** Failers
                    143:     \x{09f} 
                    144:   
                    145: /^\p{Cn}/8
                    146:     ** Failers
                    147:     \x{09f} 
                    148:   
                    149: /^\p{Co}/8
                    150:     \x{f8ff}
                    151:     ** Failers
                    152:     \x{09f} 
                    153:   
                    154: /^\p{Cs}/8
                    155:     \?\x{dfff}
                    156:     ** Failers
                    157:     \x{09f} 
                    158:   
                    159: /^\p{Ll}/8
                    160:     a
                    161:     ** Failers 
                    162:     Z
                    163:     \x{e000}  
                    164:   
                    165: /^\p{Lm}/8
                    166:     \x{2b0}
                    167:     ** Failers
                    168:     a 
                    169:   
                    170: /^\p{Lo}/8
                    171:     \x{1bb}
                    172:     ** Failers
                    173:     a 
                    174:     \x{2b0}
                    175:   
                    176: /^\p{Lt}/8
                    177:     \x{1c5}
                    178:     ** Failers
                    179:     a 
                    180:     \x{2b0}
                    181:   
                    182: /^\p{Lu}/8
                    183:     A
                    184:     ** Failers
                    185:     \x{2b0}
                    186:   
                    187: /^\p{Mc}/8
                    188:     \x{903}
                    189:     ** Failers
                    190:     X
                    191:     \x{300}
                    192:        
                    193: /^\p{Me}/8
                    194:     \x{488}
                    195:     ** Failers
                    196:     X
                    197:     \x{903}
                    198:     \x{300}
                    199:   
                    200: /^\p{Mn}/8
                    201:     \x{300}
                    202:     ** Failers
                    203:     X
                    204:     \x{903}
                    205:   
                    206: /^\p{Nd}+/8
                    207:     0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}\x{66a}
                    208:     \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}\x{6fa}
                    209:     \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}\x{970}
                    210:     ** Failers
                    211:     X
                    212:   
                    213: /^\p{Nl}/8
                    214:     \x{16ee}
                    215:     ** Failers
                    216:     X
                    217:     \x{966}
                    218:   
                    219: /^\p{No}/8
                    220:     \x{b2}
                    221:     \x{b3}
                    222:     ** Failers
                    223:     X
                    224:     \x{16ee}
                    225:   
                    226: /^\p{Pc}/8
                    227:     \x5f
                    228:     \x{203f}
                    229:     ** Failers
                    230:     X
                    231:     -
                    232:     \x{58a}
                    233:   
                    234: /^\p{Pd}/8
                    235:     -
                    236:     \x{58a}
                    237:     ** Failers
                    238:     X
                    239:     \x{203f}
                    240:   
                    241: /^\p{Pe}/8
                    242:     )
                    243:     ]
                    244:     }
                    245:     \x{f3b}
                    246:     ** Failers
                    247:     X
                    248:     \x{203f}
                    249:     (
                    250:     [
                    251:     {
                    252:     \x{f3c}
                    253:   
                    254: /^\p{Pf}/8
                    255:     \x{bb}
                    256:     \x{2019}
                    257:     ** Failers
                    258:     X
                    259:     \x{203f}
                    260:   
                    261: /^\p{Pi}/8
                    262:     \x{ab}
                    263:     \x{2018}
                    264:     ** Failers
                    265:     X
                    266:     \x{203f}
                    267:   
                    268: /^\p{Po}/8
                    269:     !
                    270:     \x{37e}
                    271:     ** Failers
                    272:     X
                    273:     \x{203f}
                    274:   
                    275: /^\p{Ps}/8
                    276:     (
                    277:     [
                    278:     {
                    279:     \x{f3c}
                    280:     ** Failers
                    281:     X
                    282:     )
                    283:     ]
                    284:     }
                    285:     \x{f3b}
                    286:   
                    287: /^\p{Sc}+/8
                    288:     $\x{a2}\x{a3}\x{a4}\x{a5}\x{a6}
                    289:     \x{9f2}
                    290:     ** Failers
                    291:     X
                    292:     \x{2c2}
                    293:   
                    294: /^\p{Sk}/8
                    295:     \x{2c2}
                    296:     ** Failers
                    297:     X
                    298:     \x{9f2}
                    299:   
                    300: /^\p{Sm}+/8
                    301:     +<|~\x{ac}\x{2044}
                    302:     ** Failers
                    303:     X
                    304:     \x{9f2}
                    305:   
                    306: /^\p{So}/8
                    307:     \x{a6}
                    308:     \x{482} 
                    309:     ** Failers
                    310:     X
                    311:     \x{9f2}
                    312:   
                    313: /^\p{Zl}/8
                    314:     \x{2028}
                    315:     ** Failers
                    316:     X
                    317:     \x{2029}
                    318:   
                    319: /^\p{Zp}/8
                    320:     \x{2029}
                    321:     ** Failers
                    322:     X
                    323:     \x{2028}
                    324:   
                    325: /^\p{Zs}/8
                    326:     \ \
                    327:     \x{a0}
                    328:     \x{1680}
                    329:     \x{180e}
                    330:     \x{2000}
                    331:     \x{2001}     
                    332:     ** Failers
                    333:     \x{2028}
                    334:     \x{200d} 
                    335:   
                    336: /\p{Nd}+(..)/8
                    337:       \x{660}\x{661}\x{662}ABC
                    338:   
                    339: /\p{Nd}+?(..)/8
                    340:       \x{660}\x{661}\x{662}ABC
                    341:   
                    342: /\p{Nd}{2,}(..)/8
                    343:       \x{660}\x{661}\x{662}ABC
                    344:   
                    345: /\p{Nd}{2,}?(..)/8
                    346:       \x{660}\x{661}\x{662}ABC
                    347:   
                    348: /\p{Nd}*(..)/8
                    349:       \x{660}\x{661}\x{662}ABC
                    350:   
                    351: /\p{Nd}*?(..)/8
                    352:       \x{660}\x{661}\x{662}ABC
                    353:   
                    354: /\p{Nd}{2}(..)/8
                    355:       \x{660}\x{661}\x{662}ABC
                    356:   
                    357: /\p{Nd}{2,3}(..)/8
                    358:       \x{660}\x{661}\x{662}ABC
                    359:   
                    360: /\p{Nd}{2,3}?(..)/8
                    361:       \x{660}\x{661}\x{662}ABC
                    362:   
                    363: /\p{Nd}?(..)/8
                    364:       \x{660}\x{661}\x{662}ABC
                    365:   
                    366: /\p{Nd}??(..)/8
                    367:       \x{660}\x{661}\x{662}ABC
                    368:   
                    369: /\p{Nd}*+(..)/8
                    370:       \x{660}\x{661}\x{662}ABC
                    371:   
                    372: /\p{Nd}*+(...)/8
                    373:       \x{660}\x{661}\x{662}ABC
                    374:   
                    375: /\p{Nd}*+(....)/8
                    376:       ** Failers
                    377:       \x{660}\x{661}\x{662}ABC
                    378:   
                    379: /\p{Lu}/8i
                    380:     A
                    381:     a\x{10a0}B 
                    382:     ** Failers 
                    383:     a
                    384:     \x{1d00}  
                    385: 
                    386: /\p{^Lu}/8i
                    387:     1234
                    388:     ** Failers
                    389:     ABC 
                    390: 
                    391: /\P{Lu}/8i
                    392:     1234
                    393:     ** Failers
                    394:     ABC 
                    395: 
                    396: /(?<=A\p{Nd})XYZ/8
                    397:     A2XYZ
                    398:     123A5XYZPQR
                    399:     ABA\x{660}XYZpqr
                    400:     ** Failers
                    401:     AXYZ
                    402:     XYZ     
                    403:     
                    404: /(?<!\pL)XYZ/8
                    405:     1XYZ
                    406:     AB=XYZ.. 
                    407:     XYZ 
                    408:     ** Failers
                    409:     WXYZ 
                    410: 
                    411: /[\p{Nd}]/8
                    412:     1234
                    413: 
                    414: /[\p{Nd}+-]+/8
                    415:     1234
                    416:     12-34
                    417:     12+\x{661}-34  
                    418:     ** Failers
                    419:     abcd  
                    420: 
                    421: /[\P{Nd}]+/8
                    422:     abcd
                    423:     ** Failers
                    424:     1234
                    425: 
                    426: /\D+/8
                    427:     11111111111111111111111111111111111111111111111111111111111111111111111
                    428:     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
                    429:      
                    430: /\P{Nd}+/8
                    431:     11111111111111111111111111111111111111111111111111111111111111111111111
                    432:     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
                    433: 
                    434: /[\D]+/8
                    435:     11111111111111111111111111111111111111111111111111111111111111111111111
                    436:     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
                    437: 
                    438: /[\P{Nd}]+/8
                    439:     11111111111111111111111111111111111111111111111111111111111111111111111
                    440:     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
                    441: 
                    442: /[\D\P{Nd}]+/8
                    443:     11111111111111111111111111111111111111111111111111111111111111111111111
                    444:     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
                    445: 
                    446: /\pL/8
                    447:     a
                    448:     A 
                    449: 
                    450: /\pL/8i
                    451:     a
                    452:     A 
                    453:     
                    454: /\p{Lu}/8 
                    455:     A
                    456:     aZ
                    457:     ** Failers
                    458:     abc   
                    459: 
                    460: /\p{Lu}/8i
                    461:     A
                    462:     aZ
                    463:     ** Failers
                    464:     abc   
                    465: 
                    466: /\p{Ll}/8 
                    467:     a
                    468:     Az
                    469:     ** Failers
                    470:     ABC   
                    471: 
                    472: /\p{Ll}/8i 
                    473:     a
                    474:     Az
                    475:     ** Failers
                    476:     ABC   
                    477: 
                    478: /^\x{c0}$/8i
                    479:     \x{c0}
                    480:     \x{e0} 
                    481: 
                    482: /^\x{e0}$/8i
                    483:     \x{c0}
                    484:     \x{e0} 
                    485: 
                    486: /A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8
                    487:     A\x{391}\x{10427}\x{ff3a}\x{1fb0}
                    488:     ** Failers
                    489:     a\x{391}\x{10427}\x{ff3a}\x{1fb0}   
                    490:     A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
                    491:     A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
                    492:     A\x{391}\x{10427}\x{ff5a}\x{1fb0}
                    493:     A\x{391}\x{10427}\x{ff3a}\x{1fb8}
                    494: 
                    495: /A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8i
                    496:     A\x{391}\x{10427}\x{ff3a}\x{1fb0}
                    497:     a\x{391}\x{10427}\x{ff3a}\x{1fb0}   
                    498:     A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
                    499:     A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
                    500:     A\x{391}\x{10427}\x{ff5a}\x{1fb0}
                    501:     A\x{391}\x{10427}\x{ff3a}\x{1fb8}
                    502: 
                    503: /\x{391}+/8i
                    504:     \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
                    505: 
                    506: /\x{391}{3,5}(.)/8i
                    507:     \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
                    508: 
                    509: /\x{391}{3,5}?(.)/8i
                    510:     \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
                    511: 
                    512: /[\x{391}\x{ff3a}]/8i
                    513:     \x{391}
                    514:     \x{ff3a}
                    515:     \x{3b1}
                    516:     \x{ff5a}   
                    517:     
                    518: /[\x{c0}\x{391}]/8i
                    519:     \x{c0}
                    520:     \x{e0} 
                    521: 
                    522: /[\x{105}-\x{109}]/8i
                    523:     \x{104}
                    524:     \x{105}
                    525:     \x{109}  
                    526:     ** Failers
                    527:     \x{100}
                    528:     \x{10a} 
                    529:     
                    530: /[z-\x{100}]/8i 
                    531:     Z
                    532:     z
                    533:     \x{39c}
                    534:     \x{178}
                    535:     |
                    536:     \x{80}
                    537:     \x{ff}
                    538:     \x{100}
                    539:     \x{101} 
                    540:     ** Failers
                    541:     \x{102}
                    542:     Y
                    543:     y           
                    544: 
                    545: /[z-\x{100}]/8i
                    546: 
                    547: /^\X/8
                    548:     A
                    549:     A\x{300}BC 
                    550:     A\x{300}\x{301}\x{302}BC 
                    551:     *** Failers
                    552:     \x{300}  
                    553: 
                    554: /^[\X]/8
                    555:     X123
                    556:     *** Failers
                    557:     AXYZ
                    558: 
                    559: /^(\X*)C/8
                    560:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
                    561:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
                    562: 
                    563: /^(\X*?)C/8
                    564:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
                    565:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
                    566: 
                    567: /^(\X*)(.)/8
                    568:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
                    569:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
                    570: 
                    571: /^(\X*?)(.)/8
                    572:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
                    573:     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
                    574: 
                    575: /^\X(.)/8
                    576:     *** Failers
                    577:     A\x{300}\x{301}\x{302}
                    578: 
                    579: /^\X{2,3}(.)/8
                    580:     A\x{300}\x{301}B\x{300}X
                    581:     A\x{300}\x{301}B\x{300}C\x{300}\x{301}
                    582:     A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
                    583:     A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
                    584:     
                    585: /^\X{2,3}?(.)/8
                    586:     A\x{300}\x{301}B\x{300}X
                    587:     A\x{300}\x{301}B\x{300}C\x{300}\x{301}
                    588:     A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
                    589:     A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
                    590: 
                    591: /^\pN{2,3}X/
                    592:     12X
                    593:     123X
                    594:     *** Failers
                    595:     X
                    596:     1X
                    597:     1234X     
                    598: 
                    599: /\x{100}/i8
                    600:     \x{100}   
                    601:     \x{101} 
                    602:     
                    603: /^\p{Han}+/8
                    604:     \x{2e81}\x{3007}\x{2f804}\x{31a0}
                    605:     ** Failers
                    606:     \x{2e7f}  
                    607: 
                    608: /^\P{Katakana}+/8
                    609:     \x{3105}
                    610:     ** Failers
                    611:     \x{30ff}  
                    612: 
                    613: /^[\p{Arabic}]/8
                    614:     \x{06e9}
                    615:     \x{060b}
                    616:     ** Failers
                    617:     X\x{06e9}   
                    618: 
                    619: /^[\P{Yi}]/8
                    620:     \x{2f800}
                    621:     ** Failers
                    622:     \x{a014}
                    623:     \x{a4c6}   
                    624: 
                    625: /^\p{Any}X/8
                    626:     AXYZ
                    627:     \x{1234}XYZ 
                    628:     ** Failers
                    629:     X  
                    630:     
                    631: /^\P{Any}X/8
                    632:     ** Failers
                    633:     AX
                    634:     
                    635: /^\p{Any}?X/8
                    636:     XYZ
                    637:     AXYZ
                    638:     \x{1234}XYZ 
                    639:     ** Failers
                    640:     ABXYZ   
                    641: 
                    642: /^\P{Any}?X/8
                    643:     XYZ
                    644:     ** Failers
                    645:     AXYZ
                    646:     \x{1234}XYZ 
                    647:     ABXYZ   
                    648: 
                    649: /^\p{Any}+X/8
                    650:     AXYZ
                    651:     \x{1234}XYZ
                    652:     A\x{1234}XYZ
                    653:     ** Failers
                    654:     XYZ
                    655: 
                    656: /^\P{Any}+X/8
                    657:     ** Failers
                    658:     AXYZ
                    659:     \x{1234}XYZ
                    660:     A\x{1234}XYZ
                    661:     XYZ
                    662: 
                    663: /^\p{Any}*X/8
                    664:     XYZ
                    665:     AXYZ
                    666:     \x{1234}XYZ
                    667:     A\x{1234}XYZ
                    668:     ** Failers
                    669: 
                    670: /^\P{Any}*X/8
                    671:     XYZ
                    672:     ** Failers
                    673:     AXYZ
                    674:     \x{1234}XYZ
                    675:     A\x{1234}XYZ
                    676: 
                    677: /^[\p{Any}]X/8
                    678:     AXYZ
                    679:     \x{1234}XYZ 
                    680:     ** Failers
                    681:     X  
                    682:     
                    683: /^[\P{Any}]X/8
                    684:     ** Failers
                    685:     AX
                    686:     
                    687: /^[\p{Any}]?X/8
                    688:     XYZ
                    689:     AXYZ
                    690:     \x{1234}XYZ 
                    691:     ** Failers
                    692:     ABXYZ   
                    693: 
                    694: /^[\P{Any}]?X/8
                    695:     XYZ
                    696:     ** Failers
                    697:     AXYZ
                    698:     \x{1234}XYZ 
                    699:     ABXYZ   
                    700: 
                    701: /^[\p{Any}]+X/8
                    702:     AXYZ
                    703:     \x{1234}XYZ
                    704:     A\x{1234}XYZ
                    705:     ** Failers
                    706:     XYZ
                    707: 
                    708: /^[\P{Any}]+X/8
                    709:     ** Failers
                    710:     AXYZ
                    711:     \x{1234}XYZ
                    712:     A\x{1234}XYZ
                    713:     XYZ
                    714: 
                    715: /^[\p{Any}]*X/8
                    716:     XYZ
                    717:     AXYZ
                    718:     \x{1234}XYZ
                    719:     A\x{1234}XYZ
                    720:     ** Failers
                    721: 
                    722: /^[\P{Any}]*X/8
                    723:     XYZ
                    724:     ** Failers
                    725:     AXYZ
                    726:     \x{1234}XYZ
                    727:     A\x{1234}XYZ
                    728: 
                    729: /^\p{Any}{3,5}?/8
                    730:     abcdefgh
                    731:     \x{1234}\n\r\x{3456}xyz 
                    732: 
                    733: /^\p{Any}{3,5}/8
                    734:     abcdefgh
                    735:     \x{1234}\n\r\x{3456}xyz 
                    736: 
                    737: /^\P{Any}{3,5}?/8
                    738:     ** Failers
                    739:     abcdefgh
                    740:     \x{1234}\n\r\x{3456}xyz 
                    741: 
                    742: /^\p{L&}X/8
                    743:      AXY
                    744:      aXY
                    745:      \x{1c5}XY
                    746:      ** Failers
                    747:      \x{1bb}XY
                    748:      \x{2b0}XY
                    749:      !XY      
                    750: 
                    751: /^[\p{L&}]X/8
                    752:      AXY
                    753:      aXY
                    754:      \x{1c5}XY
                    755:      ** Failers
                    756:      \x{1bb}XY
                    757:      \x{2b0}XY
                    758:      !XY      
                    759: 
                    760: /^\p{L&}+X/8
                    761:      AXY
                    762:      aXY
                    763:      AbcdeXyz 
                    764:      \x{1c5}AbXY
                    765:      abcDEXypqreXlmn 
                    766:      ** Failers
                    767:      \x{1bb}XY
                    768:      \x{2b0}XY
                    769:      !XY      
                    770: 
                    771: /^[\p{L&}]+X/8
                    772:      AXY
                    773:      aXY
                    774:      AbcdeXyz 
                    775:      \x{1c5}AbXY
                    776:      abcDEXypqreXlmn 
                    777:      ** Failers
                    778:      \x{1bb}XY
                    779:      \x{2b0}XY
                    780:      !XY      
                    781: 
                    782: /^\p{L&}+?X/8
                    783:      AXY
                    784:      aXY
                    785:      AbcdeXyz 
                    786:      \x{1c5}AbXY
                    787:      abcDEXypqreXlmn 
                    788:      ** Failers
                    789:      \x{1bb}XY
                    790:      \x{2b0}XY
                    791:      !XY      
                    792: 
                    793: /^[\p{L&}]+?X/8
                    794:      AXY
                    795:      aXY
                    796:      AbcdeXyz 
                    797:      \x{1c5}AbXY
                    798:      abcDEXypqreXlmn 
                    799:      ** Failers
                    800:      \x{1bb}XY
                    801:      \x{2b0}XY
                    802:      !XY      
                    803: 
                    804: /^\P{L&}X/8
                    805:      !XY
                    806:      \x{1bb}XY
                    807:      \x{2b0}XY
                    808:      ** Failers
                    809:      \x{1c5}XY
                    810:      AXY      
                    811: 
                    812: /^[\P{L&}]X/8
                    813:      !XY
                    814:      \x{1bb}XY
                    815:      \x{2b0}XY
                    816:      ** Failers
                    817:      \x{1c5}XY
                    818:      AXY      
                    819: 
                    820: /^\x{023a}+?(\x{0130}+)/8i
                    821:   \x{023a}\x{2c65}\x{0130}
                    822:   
                    823: /^\x{023a}+([^X])/8i
                    824:   \x{023a}\x{2c65}X
                    825:  
                    826: /\x{c0}+\x{116}+/8i
                    827:     \x{c0}\x{e0}\x{116}\x{117}
                    828: 
                    829: /[\x{c0}\x{116}]+/8i
                    830:     \x{c0}\x{e0}\x{116}\x{117}
                    831: 
                    832: /Check property support in non-UTF-8 mode/
                    833:  
                    834: /\p{L}{4}/
                    835:     123abcdefg
                    836:     123abc\xc4\xc5zz
                    837: 
                    838: /\p{Carian}\p{Cham}\p{Kayah_Li}\p{Lepcha}\p{Lycian}\p{Lydian}\p{Ol_Chiki}\p{Rejang}\p{Saurashtra}\p{Sundanese}\p{Vai}/8
                    839:     \x{102A4}\x{AA52}\x{A91D}\x{1C46}\x{10283}\x{1092E}\x{1C6B}\x{A93B}\x{A8BF}\x{1BA0}\x{A50A}====
                    840: 
                    841: /\x{a77d}\x{1d79}/8i
                    842:     \x{a77d}\x{1d79}
                    843:     \x{1d79}\x{a77d} 
                    844: 
                    845: /\x{a77d}\x{1d79}/8
                    846:     \x{a77d}\x{1d79}
                    847:     ** Failers 
                    848:     \x{1d79}\x{a77d} 
                    849: 
                    850: /^\p{Xan}/8
                    851:     ABCD
                    852:     1234
                    853:     \x{6ca}
                    854:     \x{a6c}
                    855:     \x{10a7}   
                    856:     ** Failers
                    857:     _ABC   
                    858: 
                    859: /^\p{Xan}+/8
                    860:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
                    861:     ** Failers
                    862:     _ABC   
1.1       misho     863: 
1.1.1.2   misho     864: /^\p{Xan}*/8
                    865:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
                    866:     
                    867: /^\p{Xan}{2,9}/8
                    868:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
                    869:     
                    870: /^[\p{Xan}]/8
                    871:     ABCD1234_
                    872:     1234abcd_
                    873:     \x{6ca}
                    874:     \x{a6c}
                    875:     \x{10a7}   
                    876:     ** Failers
                    877:     _ABC   
                    878:  
                    879: /^[\p{Xan}]+/8
                    880:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
                    881:     ** Failers
                    882:     _ABC   
                    883: 
                    884: /^>\p{Xsp}/8
                    885:     >\x{1680}\x{2028}\x{0b}
                    886:     ** Failers
                    887:     \x{0b} 
1.1       misho     888: 
1.1.1.2   misho     889: /^>\p{Xsp}+/8
                    890:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1.1       misho     891: 
1.1.1.2   misho     892: /^>\p{Xsp}*/8
                    893:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    894:     
                    895: /^>\p{Xsp}{2,9}/8
                    896:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    897:     
                    898: /^>[\p{Xsp}]/8
                    899:     >\x{2028}\x{0b}
                    900:  
                    901: /^>[\p{Xsp}]+/8
                    902:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    903: 
                    904: /^>\p{Xps}/8
                    905:     >\x{1680}\x{2028}\x{0b}
                    906:     >\x{a0} 
                    907:     ** Failers
                    908:     \x{0b} 
1.1       misho     909: 
1.1.1.2   misho     910: /^>\p{Xps}+/8
                    911:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1.1       misho     912: 
1.1.1.2   misho     913: /^>\p{Xps}+?/8
                    914:     >\x{1680}\x{2028}\x{0b}
1.1       misho     915: 
1.1.1.2   misho     916: /^>\p{Xps}*/8
                    917:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    918:     
                    919: /^>\p{Xps}{2,9}/8
                    920:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    921:     
                    922: /^>\p{Xps}{2,9}?/8
                    923:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    924:     
                    925: /^>[\p{Xps}]/8
                    926:     >\x{2028}\x{0b}
                    927:  
                    928: /^>[\p{Xps}]+/8
                    929:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
                    930: 
                    931: /^\p{Xwd}/8
                    932:     ABCD
                    933:     1234
                    934:     \x{6ca}
                    935:     \x{a6c}
                    936:     \x{10a7}
                    937:     _ABC    
                    938:     ** Failers
                    939:     [] 
1.1       misho     940: 
1.1.1.2   misho     941: /^\p{Xwd}+/8
                    942:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1.1       misho     943: 
1.1.1.2   misho     944: /^\p{Xwd}*/8
                    945:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
                    946:     
                    947: /^\p{Xwd}{2,9}/8
                    948:     A_12\x{6ca}\x{a6c}\x{10a7}
                    949:     
                    950: /^[\p{Xwd}]/8
                    951:     ABCD1234_
                    952:     1234abcd_
                    953:     \x{6ca}
                    954:     \x{a6c}
                    955:     \x{10a7}   
                    956:     _ABC 
                    957:     ** Failers
                    958:     []   
                    959:  
                    960: /^[\p{Xwd}]+/8
                    961:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
                    962: 
                    963: /-- Unicode properties for \b abd \B --/
                    964: 
                    965: /\b...\B/8W
                    966:     abc_
                    967:     \x{37e}abc\x{376} 
                    968:     \x{37e}\x{376}\x{371}\x{393}\x{394} 
                    969:     !\x{c0}++\x{c1}\x{c2} 
                    970:     !\x{c0}+++++ 
                    971: 
                    972: /-- Without PCRE_UCP, non-ASCII always fail, even if < 256  --/
                    973: 
                    974: /\b...\B/8
                    975:     abc_
                    976:     ** Failers 
                    977:     \x{37e}abc\x{376} 
                    978:     \x{37e}\x{376}\x{371}\x{393}\x{394} 
                    979:     !\x{c0}++\x{c1}\x{c2} 
                    980:     !\x{c0}+++++ 
                    981: 
                    982: /-- With PCRE_UCP, non-UTF8 chars that are < 256 still check properties  --/
                    983: 
                    984: /\b...\B/W
                    985:     abc_
                    986:     !\x{c0}++\x{c1}\x{c2} 
                    987:     !\x{c0}+++++ 
1.1.1.3 ! misho     988:     
        !           989: /-- Caseless single negated characters > 127 need UCP support --/
        !           990: 
        !           991: /[^\x{100}]/8i
        !           992:     \x{100}\x{101}X
        !           993: 
        !           994: /[^\x{100}]+/8i
        !           995:     \x{100}\x{101}XX
        !           996: 
        !           997: /^\X/8
        !           998:     A\P
        !           999:     A\P\P 
        !          1000:     A\x{300}\x{301}\P
        !          1001:     A\x{300}\x{301}\P\P  
        !          1002:     A\x{301}\P
        !          1003:     A\x{301}\P\P  
        !          1004:     
        !          1005: /^\X{2,3}/8
        !          1006:     A\P
        !          1007:     A\P\P 
        !          1008:     AA\P
        !          1009:     AA\P\P  
        !          1010:     A\x{300}\x{301}\P
        !          1011:     A\x{300}\x{301}\P\P  
        !          1012:     A\x{300}\x{301}A\x{300}\x{301}\P
        !          1013:     A\x{300}\x{301}A\x{300}\x{301}\P\P  
        !          1014: 
        !          1015: /^\X{2}/8
        !          1016:     AA\P
        !          1017:     AA\P\P  
        !          1018:     A\x{300}\x{301}A\x{300}\x{301}\P
        !          1019:     A\x{300}\x{301}A\x{300}\x{301}\P\P  
        !          1020:     
        !          1021: /^\X+/8
        !          1022:     AA\P
        !          1023:     AA\P\P  
        !          1024: 
        !          1025: /^\X+?Z/8
        !          1026:     AA\P
        !          1027:     AA\P\P 
1.1       misho    1028: 
1.1.1.2   misho    1029: /-- End of testinput10 --/ 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>