Annotation of embedaddon/pcre/testdata/testinput15, revision 1.1.1.4

1.1.1.2   misho       1: /-- This set of tests is for UTF-8 support, and is relevant only to the 8-bit 
                      2:     library. --/
1.1       misho       3: 
1.1.1.2   misho       4: /X(\C{3})/8
                      5:     X\x{1234}
                      6: 
                      7: /X(\C{4})/8
                      8:     X\x{1234}YZ
                      9:     
                     10: /X\C*/8
                     11:     XYZabcdce
                     12:     
                     13: /X\C*?/8
                     14:     XYZabcde
                     15:     
                     16: /X\C{3,5}/8
                     17:     Xabcdefg   
                     18:     X\x{1234} 
                     19:     X\x{1234}YZ
                     20:     X\x{1234}\x{512}  
                     21:     X\x{1234}\x{512}YZ
                     22: 
                     23: /X\C{3,5}?/8
                     24:     Xabcdefg   
                     25:     X\x{1234} 
                     26:     X\x{1234}YZ
                     27:     X\x{1234}\x{512}  
                     28: 
                     29: /a\Cb/8
                     30:     aXb
                     31:     a\nb
                     32:     
                     33: /a\C\Cb/8 
                     34:     a\x{100}b 
                     35: 
                     36: /ab\Cde/8
                     37:     abXde
                     38: 
                     39: /a\C\Cb/8 
                     40:     a\x{100}b
                     41:     ** Failers 
                     42:     a\x{12257}b
                     43: 
                     44: /[]/8
                     45: 
                     46: //8
                     47: 
                     48: /xxx/8
                     49: 
                     50: /xxx/8?DZSS
                     51: 
1.1.1.4 ! misho      52: /badutf/8
        !            53:     \xdf
        !            54:     \xef
        !            55:     \xef\x80
        !            56:     \xf7
        !            57:     \xf7\x80
        !            58:     \xf7\x80\x80
        !            59:     \xfb
        !            60:     \xfb\x80
        !            61:     \xfb\x80\x80
        !            62:     \xfb\x80\x80\x80
        !            63:     \xfd
        !            64:     \xfd\x80
        !            65:     \xfd\x80\x80
        !            66:     \xfd\x80\x80\x80
        !            67:     \xfd\x80\x80\x80\x80
        !            68:     \xdf\x7f
        !            69:     \xef\x7f\x80
        !            70:     \xef\x80\x7f
        !            71:     \xf7\x7f\x80\x80
        !            72:     \xf7\x80\x7f\x80
        !            73:     \xf7\x80\x80\x7f
        !            74:     \xfb\x7f\x80\x80\x80
        !            75:     \xfb\x80\x7f\x80\x80
        !            76:     \xfb\x80\x80\x7f\x80
        !            77:     \xfb\x80\x80\x80\x7f
        !            78:     \xfd\x7f\x80\x80\x80\x80
        !            79:     \xfd\x80\x7f\x80\x80\x80
        !            80:     \xfd\x80\x80\x7f\x80\x80
        !            81:     \xfd\x80\x80\x80\x7f\x80
        !            82:     \xfd\x80\x80\x80\x80\x7f
        !            83:     \xed\xa0\x80
        !            84:     \xc0\x8f
        !            85:     \xe0\x80\x8f
        !            86:     \xf0\x80\x80\x8f
        !            87:     \xf8\x80\x80\x80\x8f
        !            88:     \xfc\x80\x80\x80\x80\x8f
        !            89:     \x80
        !            90:     \xfe
        !            91:     \xff
        !            92: 
        !            93: /badutf/8
        !            94:     \xfb\x80\x80\x80\x80
        !            95:     \xfd\x80\x80\x80\x80\x80
        !            96:     \xf7\xbf\xbf\xbf
        !            97: 
        !            98: /shortutf/8
        !            99:     \P\P\xdf
        !           100:     \P\P\xef
        !           101:     \P\P\xef\x80
        !           102:     \P\P\xf7
        !           103:     \P\P\xf7\x80
        !           104:     \P\P\xf7\x80\x80
        !           105:     \P\P\xfb
        !           106:     \P\P\xfb\x80
        !           107:     \P\P\xfb\x80\x80
        !           108:     \P\P\xfb\x80\x80\x80
        !           109:     \P\P\xfd
        !           110:     \P\P\xfd\x80
        !           111:     \P\P\xfd\x80\x80
        !           112:     \P\P\xfd\x80\x80\x80
        !           113:     \P\P\xfd\x80\x80\x80\x80
1.1.1.2   misho     114: 
                    115: /anything/8
                    116:     \xc0\x80
                    117:     \xc1\x8f 
                    118:     \xe0\x9f\x80
                    119:     \xf0\x8f\x80\x80 
                    120:     \xf8\x87\x80\x80\x80  
                    121:     \xfc\x83\x80\x80\x80\x80
                    122:     \xfe\x80\x80\x80\x80\x80  
                    123:     \xff\x80\x80\x80\x80\x80  
                    124:     \xc3\x8f
                    125:     \xe0\xaf\x80
                    126:     \xe1\x80\x80
                    127:     \xf0\x9f\x80\x80 
                    128:     \xf1\x8f\x80\x80 
                    129:     \xf8\x88\x80\x80\x80  
                    130:     \xf9\x87\x80\x80\x80  
                    131:     \xfc\x84\x80\x80\x80\x80
                    132:     \xfd\x83\x80\x80\x80\x80
                    133:     \?\xf8\x88\x80\x80\x80  
                    134:     \?\xf9\x87\x80\x80\x80  
                    135:     \?\xfc\x84\x80\x80\x80\x80
                    136:     \?\xfd\x83\x80\x80\x80\x80
                    137: 
                    138: /\x{100}/8DZ
                    139: 
                    140: /\x{1000}/8DZ
                    141: 
                    142: /\x{10000}/8DZ
                    143: 
                    144: /\x{100000}/8DZ
                    145: 
                    146: /\x{10ffff}/8DZ
                    147: 
                    148: /[\x{ff}]/8DZ
                    149: 
                    150: /[\x{100}]/8DZ
                    151: 
                    152: /\x80/8DZ
                    153: 
                    154: /\xff/8DZ
                    155: 
                    156: /\x{D55c}\x{ad6d}\x{C5B4}/DZ8 
                    157:     \x{D55c}\x{ad6d}\x{C5B4} 
                    158: 
                    159: /\x{65e5}\x{672c}\x{8a9e}/DZ8
                    160:     \x{65e5}\x{672c}\x{8a9e}
                    161: 
                    162: /\x{80}/DZ8
                    163: 
                    164: /\x{084}/DZ8
                    165: 
                    166: /\x{104}/DZ8
                    167: 
                    168: /\x{861}/DZ8
                    169: 
                    170: /\x{212ab}/DZ8
                    171: 
                    172: /-- This one is here not because it's different to Perl, but because the way
                    173: the captured single-byte is displayed. (In Perl it becomes a character, and you
                    174: can't tell the difference.) --/
                    175:     
                    176: /X(\C)(.*)/8
                    177:     X\x{1234}
                    178:     X\nabc 
                    179: 
                    180: /-- This one is here because Perl gives out a grumbly error message (quite 
                    181: correctly, but that messes up comparisons). --/
                    182:     
                    183: /a\Cb/8
                    184:     *** Failers 
                    185:     a\x{100}b 
                    186:     
                    187: /[^ab\xC0-\xF0]/8SDZ
                    188:     \x{f1}
                    189:     \x{bf}
                    190:     \x{100}
                    191:     \x{1000}   
                    192:     *** Failers
                    193:     \x{c0} 
                    194:     \x{f0} 
                    195: 
                    196: /Ā{3,4}/8SDZ
                    197:   \x{100}\x{100}\x{100}\x{100\x{100}
                    198: 
                    199: /(\x{100}+|x)/8SDZ
                    200: 
                    201: /(\x{100}*a|x)/8SDZ
                    202: 
                    203: /(\x{100}{0,2}a|x)/8SDZ
                    204: 
                    205: /(\x{100}{1,2}a|x)/8SDZ
                    206: 
                    207: /\x{100}/8DZ
                    208: 
                    209: /a\x{100}\x{101}*/8DZ
                    210: 
                    211: /a\x{100}\x{101}+/8DZ
                    212: 
                    213: /[^\x{c4}]/DZ
                    214: 
                    215: /[\x{100}]/8DZ
                    216:     \x{100}
                    217:     Z\x{100}
                    218:     \x{100}Z
                    219:     *** Failers 
                    220: 
                    221: /[\xff]/DZ8
                    222:     >\x{ff}<
                    223: 
                    224: /[^\xff]/8DZ
                    225: 
                    226: /\x{100}abc(xyz(?1))/8DZ
                    227: 
                    228: /a\x{1234}b/P8
                    229:     a\x{1234}b
                    230: 
                    231: /\777/8I
                    232:   \x{1ff}
                    233:   \777 
                    234:   
                    235: /\x{100}+\x{200}/8DZ
                    236: 
                    237: /\x{100}+X/8DZ
                    238: 
                    239: /^[\QĀ\E-\QŐ\E/BZ8
                    240: 
                    241: /-- This tests the stricter UTF-8 check according to RFC 3629. --/ 
                    242:     
                    243: /X/8
                    244:     \x{d800}
                    245:     \x{d800}\?
                    246:     \x{da00}
                    247:     \x{da00}\?
                    248:     \x{dfff}
                    249:     \x{dfff}\?
                    250:     \x{110000}    
                    251:     \x{110000}\?    
                    252:     \x{2000000} 
                    253:     \x{2000000}\? 
                    254:     \x{7fffffff} 
                    255:     \x{7fffffff}\? 
                    256: 
                    257: /(*UTF8)\x{1234}/
                    258:   abcd\x{1234}pqr
                    259: 
1.1.1.4 ! misho     260: /(*CRLF)(*UTF)(*BSR_UNICODE)a\Rb/I
1.1.1.2   misho     261: 
                    262: /\h/SI8
                    263:     ABC\x{09}
                    264:     ABC\x{20}
                    265:     ABC\x{a0}
                    266:     ABC\x{1680}
                    267:     ABC\x{180e}
                    268:     ABC\x{2000}
                    269:     ABC\x{202f} 
                    270:     ABC\x{205f} 
                    271:     ABC\x{3000} 
                    272: 
                    273: /\v/SI8
                    274:     ABC\x{0a}
                    275:     ABC\x{0b}
                    276:     ABC\x{0c}
                    277:     ABC\x{0d}
                    278:     ABC\x{85}
                    279:     ABC\x{2028}
                    280: 
                    281: /\h*A/SI8
                    282:     CDBABC
                    283:     
                    284: /\v+A/SI8
                    285: 
                    286: /\s?xxx\s/8SI
                    287: 
                    288: /\sxxx\s/I8ST1
                    289:     AB\x{85}xxx\x{a0}XYZ
                    290:     AB\x{a0}xxx\x{85}XYZ
                    291: 
                    292: /\S \S/I8ST1
                    293:     \x{a2} \x{84} 
                    294:     A Z 
                    295: 
                    296: /a+/8
                    297:     a\x{123}aa\>1
                    298:     a\x{123}aa\>2
                    299:     a\x{123}aa\>3
                    300:     a\x{123}aa\>4
                    301:     a\x{123}aa\>5
                    302:     a\x{123}aa\>6
                    303: 
                    304: /\x{1234}+/iS8I
                    305: 
                    306: /\x{1234}+?/iS8I
                    307: 
                    308: /\x{1234}++/iS8I
                    309: 
                    310: /\x{1234}{2}/iS8I
                    311: 
                    312: /[^\x{c4}]/8DZ
                    313: 
                    314: /X+\x{200}/8DZ
                    315: 
                    316: /\R/SI8
                    317: 
                    318: /\777/8DZ
1.1       misho     319: 
1.1.1.3   misho     320: /\w+\x{C4}/8BZ
                    321:     a\x{C4}\x{C4}
                    322: 
                    323: /\w+\x{C4}/8BZT1
                    324:     a\x{C4}\x{C4}
                    325:     
                    326: /\W+\x{C4}/8BZ
                    327:     !\x{C4}
                    328:  
                    329: /\W+\x{C4}/8BZT1
                    330:     !\x{C4}
                    331: 
                    332: /\W+\x{A1}/8BZ
                    333:     !\x{A1}
                    334:  
                    335: /\W+\x{A1}/8BZT1
                    336:     !\x{A1}
                    337: 
                    338: /X\s+\x{A0}/8BZ
                    339:     X\x20\x{A0}\x{A0}
                    340: 
                    341: /X\s+\x{A0}/8BZT1
                    342:     X\x20\x{A0}\x{A0}
                    343: 
                    344: /\S+\x{A0}/8BZ
                    345:     X\x{A0}\x{A0}
                    346: 
                    347: /\S+\x{A0}/8BZT1
                    348:     X\x{A0}\x{A0}
                    349: 
                    350: /\x{a0}+\s!/8BZ
                    351:     \x{a0}\x20!
                    352: 
                    353: /\x{a0}+\s!/8BZT1
                    354:     \x{a0}\x20!
                    355: 
1.1.1.4 ! misho     356: /A/8
        !           357:   \x{ff000041}
        !           358:   \x{7f000041} 
        !           359: 
        !           360: /(*UTF8)abc/9
        !           361: 
        !           362: /abc/89
        !           363: 
1.1       misho     364: /-- End of testinput15 --/

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