File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / pcre / testdata / testoutput7
Revision 1.1.1.5 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 19:46:05 2014 UTC (10 years, 10 months ago) by misho
Branches: pcre, MAIN
CVS tags: v8_34, HEAD
pcre 8.34

    1: /-- These tests for Unicode property support test PCRE's API and show some of
    2:     the compiled code. They are not Perl-compatible. --/
    3: 
    4: /[\p{L}]/DZ
    5: ------------------------------------------------------------------
    6:         Bra
    7:         [\p{L}]
    8:         Ket
    9:         End
   10: ------------------------------------------------------------------
   11: Capturing subpattern count = 0
   12: No options
   13: No first char
   14: No need char
   15: 
   16: /[\p{^L}]/DZ
   17: ------------------------------------------------------------------
   18:         Bra
   19:         [\P{L}]
   20:         Ket
   21:         End
   22: ------------------------------------------------------------------
   23: Capturing subpattern count = 0
   24: No options
   25: No first char
   26: No need char
   27: 
   28: /[\P{L}]/DZ
   29: ------------------------------------------------------------------
   30:         Bra
   31:         [\P{L}]
   32:         Ket
   33:         End
   34: ------------------------------------------------------------------
   35: Capturing subpattern count = 0
   36: No options
   37: No first char
   38: No need char
   39: 
   40: /[\P{^L}]/DZ
   41: ------------------------------------------------------------------
   42:         Bra
   43:         [\p{L}]
   44:         Ket
   45:         End
   46: ------------------------------------------------------------------
   47: Capturing subpattern count = 0
   48: No options
   49: No first char
   50: No need char
   51: 
   52: /[abc\p{L}\x{0660}]/8DZ
   53: ------------------------------------------------------------------
   54:         Bra
   55:         [a-c\p{L}\x{660}]
   56:         Ket
   57:         End
   58: ------------------------------------------------------------------
   59: Capturing subpattern count = 0
   60: Options: utf
   61: No first char
   62: No need char
   63: 
   64: /[\p{Nd}]/8DZ
   65: ------------------------------------------------------------------
   66:         Bra
   67:         [\p{Nd}]
   68:         Ket
   69:         End
   70: ------------------------------------------------------------------
   71: Capturing subpattern count = 0
   72: Options: utf
   73: No first char
   74: No need char
   75:     1234
   76:  0: 1
   77: 
   78: /[\p{Nd}+-]+/8DZ
   79: ------------------------------------------------------------------
   80:         Bra
   81:         [+\-\p{Nd}]++
   82:         Ket
   83:         End
   84: ------------------------------------------------------------------
   85: Capturing subpattern count = 0
   86: Options: utf
   87: No first char
   88: No need char
   89:     1234
   90:  0: 1234
   91:     12-34
   92:  0: 12-34
   93:     12+\x{661}-34  
   94:  0: 12+\x{661}-34
   95:     ** Failers
   96: No match
   97:     abcd  
   98: No match
   99: 
  100: /[\x{105}-\x{109}]/8iDZ
  101: ------------------------------------------------------------------
  102:         Bra
  103:         [\x{104}-\x{109}]
  104:         Ket
  105:         End
  106: ------------------------------------------------------------------
  107: Capturing subpattern count = 0
  108: Options: caseless utf
  109: No first char
  110: No need char
  111:     \x{104}
  112:  0: \x{104}
  113:     \x{105}
  114:  0: \x{105}
  115:     \x{109}  
  116:  0: \x{109}
  117:     ** Failers
  118: No match
  119:     \x{100}
  120: No match
  121:     \x{10a} 
  122: No match
  123:     
  124: /[z-\x{100}]/8iDZ 
  125: ------------------------------------------------------------------
  126:         Bra
  127:         [Z\x{39c}\x{3bc}\x{1e9e}\x{178}z-\x{101}]
  128:         Ket
  129:         End
  130: ------------------------------------------------------------------
  131: Capturing subpattern count = 0
  132: Options: caseless utf
  133: No first char
  134: No need char
  135:     Z
  136:  0: Z
  137:     z
  138:  0: z
  139:     \x{39c}
  140:  0: \x{39c}
  141:     \x{178}
  142:  0: \x{178}
  143:     |
  144:  0: |
  145:     \x{80}
  146:  0: \x{80}
  147:     \x{ff}
  148:  0: \x{ff}
  149:     \x{100}
  150:  0: \x{100}
  151:     \x{101} 
  152:  0: \x{101}
  153:     ** Failers
  154: No match
  155:     \x{102}
  156: No match
  157:     Y
  158: No match
  159:     y           
  160: No match
  161: 
  162: /[z-\x{100}]/8DZi
  163: ------------------------------------------------------------------
  164:         Bra
  165:         [Z\x{39c}\x{3bc}\x{1e9e}\x{178}z-\x{101}]
  166:         Ket
  167:         End
  168: ------------------------------------------------------------------
  169: Capturing subpattern count = 0
  170: Options: caseless utf
  171: No first char
  172: No need char
  173: 
  174: /(?:[\PPa*]*){8,}/
  175: 
  176: /[\P{Any}]/BZ
  177: ------------------------------------------------------------------
  178:         Bra
  179:         [\P{Any}]
  180:         Ket
  181:         End
  182: ------------------------------------------------------------------
  183: 
  184: /[\P{Any}\E]/BZ
  185: ------------------------------------------------------------------
  186:         Bra
  187:         [\P{Any}]
  188:         Ket
  189:         End
  190: ------------------------------------------------------------------
  191: 
  192: /(\P{Yi}+\277)/
  193: 
  194: /(\P{Yi}+\277)?/
  195: 
  196: /(?<=\P{Yi}{3}A)X/
  197: 
  198: /\p{Yi}+(\P{Yi}+)(?1)/
  199: 
  200: /(\P{Yi}{2}\277)?/
  201: 
  202: /[\P{Yi}A]/
  203: 
  204: /[\P{Yi}\P{Yi}\P{Yi}A]/
  205: 
  206: /[^\P{Yi}A]/
  207: 
  208: /[^\P{Yi}\P{Yi}\P{Yi}A]/
  209: 
  210: /(\P{Yi}*\277)*/
  211: 
  212: /(\P{Yi}*?\277)*/
  213: 
  214: /(\p{Yi}*+\277)*/
  215: 
  216: /(\P{Yi}?\277)*/
  217: 
  218: /(\P{Yi}??\277)*/
  219: 
  220: /(\p{Yi}?+\277)*/
  221: 
  222: /(\P{Yi}{0,3}\277)*/
  223: 
  224: /(\P{Yi}{0,3}?\277)*/
  225: 
  226: /(\p{Yi}{0,3}+\277)*/
  227: 
  228: /\p{Zl}{2,3}+/8BZ
  229: ------------------------------------------------------------------
  230:         Bra
  231:         prop Zl {2}
  232:         prop Zl ?+
  233:         Ket
  234:         End
  235: ------------------------------------------------------------------
  236:     


  237:  0: \x{2028}\x{2028}
  238:     \x{2028}\x{2028}\x{2028}
  239:  0: \x{2028}\x{2028}\x{2028}
  240:     
  241: /\p{Zl}/8BZ
  242: ------------------------------------------------------------------
  243:         Bra
  244:         prop Zl
  245:         Ket
  246:         End
  247: ------------------------------------------------------------------
  248: 
  249: /\p{Lu}{3}+/8BZ
  250: ------------------------------------------------------------------
  251:         Bra
  252:         prop Lu {3}
  253:         Ket
  254:         End
  255: ------------------------------------------------------------------
  256: 
  257: /\pL{2}+/8BZ
  258: ------------------------------------------------------------------
  259:         Bra
  260:         prop L {2}
  261:         Ket
  262:         End
  263: ------------------------------------------------------------------
  264: 
  265: /\p{Cc}{2}+/8BZ
  266: ------------------------------------------------------------------
  267:         Bra
  268:         prop Cc {2}
  269:         Ket
  270:         End
  271: ------------------------------------------------------------------
  272: 
  273: /^\p{Cf}/8
  274:     \x{180e}
  275:  0: \x{180e}
  276:     \x{061c}
  277:  0: \x{61c}
  278:     \x{2066}
  279:  0: \x{2066}
  280:     \x{2067}
  281:  0: \x{2067}
  282:     \x{2068}
  283:  0: \x{2068}
  284:     \x{2069}
  285:  0: \x{2069}
  286: 
  287: /^\p{Cs}/8
  288:     \?\x{dfff}
  289:  0: \x{dfff}
  290:     ** Failers
  291: No match
  292:     \x{09f} 
  293: No match
  294:   
  295: /^\p{Mn}/8
  296:     \x{1a1b}
  297:  0: \x{1a1b}
  298: 
  299: /^\p{Pe}/8
  300:     \x{2309}
  301:  0: \x{2309}
  302:     \x{230b}
  303:  0: \x{230b}
  304: 
  305: /^\p{Ps}/8
  306:     \x{2308}
  307:  0: \x{2308}
  308:     \x{230a}
  309:  0: \x{230a}
  310: 
  311: /^\p{Sc}+/8
  312:     $\x{a2}\x{a3}\x{a4}\x{a5}\x{a6}
  313:  0: $\x{a2}\x{a3}\x{a4}\x{a5}
  314:     \x{9f2}
  315:  0: \x{9f2}
  316:     ** Failers
  317: No match
  318:     X
  319: No match
  320:     \x{2c2}
  321: No match
  322:   
  323: /^\p{Zs}/8
  324:     \ \
  325:  0:  
  326:     \x{a0}
  327:  0: \x{a0}
  328:     \x{1680}
  329:  0: \x{1680}
  330:     \x{2000}
  331:  0: \x{2000}
  332:     \x{2001}     
  333:  0: \x{2001}
  334:     ** Failers
  335: No match
  336:     \x{2028}
  337: No match
  338:     \x{200d} 
  339: No match
  340:   
  341: /-- These are here rather than in test 6 because Perl has problems with
  342:     the negative versions of the properties and behaves has changed how
  343:     it behaves for caseless matching. --/
  344:       
  345: /\p{^Lu}/8i
  346:     1234
  347:  0: 1
  348:     ** Failers
  349:  0: *
  350:     ABC 
  351: No match
  352: 
  353: /\P{Lu}/8i
  354:     1234
  355:  0: 1
  356:     ** Failers
  357:  0: *
  358:     ABC 
  359: No match
  360: 
  361: /\p{Ll}/8i 
  362:     a
  363:  0: a
  364:     Az
  365:  0: z
  366:     ** Failers
  367:  0: a
  368:     ABC   
  369: No match
  370: 
  371: /\p{Lu}/8i
  372:     A
  373:  0: A
  374:     a\x{10a0}B 
  375:  0: \x{10a0}
  376:     ** Failers 
  377:  0: F
  378:     a
  379: No match
  380:     \x{1d00}  
  381: No match
  382: 
  383: /\p{Lu}/8i
  384:     A
  385:  0: A
  386:     aZ
  387:  0: Z
  388:     ** Failers
  389:  0: F
  390:     abc   
  391: No match
  392: 
  393: /[\x{c0}\x{391}]/8i
  394:     \x{c0}
  395:  0: \x{c0}
  396:     \x{e0} 
  397:  0: \x{e0}
  398: 
  399: /-- The next two are special cases where the lengths of the different cases of
  400: the same character differ. The first went wrong with heap frame storage; the
  401: second was broken in all cases. --/
  402: 
  403: /^\x{023a}+?(\x{0130}+)/8i
  404:   \x{023a}\x{2c65}\x{0130}
  405:  0: \x{23a}\x{2c65}\x{130}
  406:  1: \x{130}
  407:   
  408: /^\x{023a}+([^X])/8i
  409:   \x{023a}\x{2c65}X
  410:  0: \x{23a}\x{2c65}
  411:  1: \x{2c65}
  412: 
  413: /\x{c0}+\x{116}+/8i
  414:     \x{c0}\x{e0}\x{116}\x{117}
  415:  0: \x{c0}\x{e0}\x{116}\x{117}
  416: 
  417: /[\x{c0}\x{116}]+/8i
  418:     \x{c0}\x{e0}\x{116}\x{117}
  419:  0: \x{c0}\x{e0}\x{116}\x{117}
  420: 
  421: /(\x{de})\1/8i
  422:     \x{de}\x{de}
  423:  0: \x{de}\x{de}
  424:  1: \x{de}
  425:     \x{de}\x{fe}
  426:  0: \x{de}\x{fe}
  427:  1: \x{de}
  428:     \x{fe}\x{fe}
  429:  0: \x{fe}\x{fe}
  430:  1: \x{fe}
  431:     \x{fe}\x{de}
  432:  0: \x{fe}\x{de}
  433:  1: \x{fe}
  434: 
  435: /^\x{c0}$/8i
  436:     \x{c0}
  437:  0: \x{c0}
  438:     \x{e0} 
  439:  0: \x{e0}
  440: 
  441: /^\x{e0}$/8i
  442:     \x{c0}
  443:  0: \x{c0}
  444:     \x{e0} 
  445:  0: \x{e0}
  446: 
  447: /-- The next two should be Perl-compatible, but it fails to match \x{e0}. PCRE
  448: will match it only with UCP support, because without that it has no notion
  449: of case for anything other than the ASCII letters. --/ 
  450: 
  451: /((?i)[\x{c0}])/8
  452:     \x{c0}
  453:  0: \x{c0}
  454:  1: \x{c0}
  455:     \x{e0} 
  456:  0: \x{e0}
  457:  1: \x{e0}
  458: 
  459: /(?i:[\x{c0}])/8
  460:     \x{c0}
  461:  0: \x{c0}
  462:     \x{e0} 
  463:  0: \x{e0}
  464: 
  465: /-- These are PCRE's extra properties to help with Unicodizing \d etc. --/
  466: 
  467: /^\p{Xan}/8
  468:     ABCD
  469:  0: A
  470:     1234
  471:  0: 1
  472:     \x{6ca}
  473:  0: \x{6ca}
  474:     \x{a6c}
  475:  0: \x{a6c}
  476:     \x{10a7}   
  477:  0: \x{10a7}
  478:     ** Failers
  479: No match
  480:     _ABC   
  481: No match
  482: 
  483: /^\p{Xan}+/8
  484:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  485:  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}
  486:     ** Failers
  487: No match
  488:     _ABC   
  489: No match
  490: 
  491: /^\p{Xan}+?/8
  492:     \x{6ca}\x{a6c}\x{10a7}_
  493:  0: \x{6ca}
  494: 
  495: /^\p{Xan}*/8
  496:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  497:  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}
  498:     
  499: /^\p{Xan}{2,9}/8
  500:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  501:  0: ABCD1234\x{6ca}
  502:     
  503: /^\p{Xan}{2,9}?/8
  504:     \x{6ca}\x{a6c}\x{10a7}_
  505:  0: \x{6ca}\x{a6c}
  506:     
  507: /^[\p{Xan}]/8
  508:     ABCD1234_
  509:  0: A
  510:     1234abcd_
  511:  0: 1
  512:     \x{6ca}
  513:  0: \x{6ca}
  514:     \x{a6c}
  515:  0: \x{a6c}
  516:     \x{10a7}   
  517:  0: \x{10a7}
  518:     ** Failers
  519: No match
  520:     _ABC   
  521: No match
  522:  
  523: /^[\p{Xan}]+/8
  524:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  525:  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}
  526:     ** Failers
  527: No match
  528:     _ABC   
  529: No match
  530: 
  531: /^>\p{Xsp}/8
  532:     >\x{1680}\x{2028}\x{0b}
  533:  0: >\x{1680}
  534:     >\x{a0} 
  535:  0: >\x{a0}
  536:     ** Failers
  537: No match
  538:     \x{0b} 
  539: No match
  540: 
  541: /^>\p{Xsp}+/8
  542:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  543:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  544: 
  545: /^>\p{Xsp}+?/8
  546:     >\x{1680}\x{2028}\x{0b}
  547:  0: >\x{1680}
  548: 
  549: /^>\p{Xsp}*/8
  550:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  551:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  552:     
  553: /^>\p{Xsp}{2,9}/8
  554:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  555:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  556:     
  557: /^>\p{Xsp}{2,9}?/8
  558:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  559:  0: > \x{09}
  560:     
  561: /^>[\p{Xsp}]/8
  562:     >\x{2028}\x{0b}
  563:  0: >\x{2028}
  564:  
  565: /^>[\p{Xsp}]+/8
  566:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  567:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  568: 
  569: /^>\p{Xps}/8
  570:     >\x{1680}\x{2028}\x{0b}
  571:  0: >\x{1680}
  572:     >\x{a0} 
  573:  0: >\x{a0}
  574:     ** Failers
  575: No match
  576:     \x{0b} 
  577: No match
  578: 
  579: /^>\p{Xps}+/8
  580:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  581:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  582: 
  583: /^>\p{Xps}+?/8
  584:     >\x{1680}\x{2028}\x{0b}
  585:  0: >\x{1680}
  586: 
  587: /^>\p{Xps}*/8
  588:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  589:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  590:     
  591: /^>\p{Xps}{2,9}/8
  592:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  593:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  594:     
  595: /^>\p{Xps}{2,9}?/8
  596:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  597:  0: > \x{09}
  598:     
  599: /^>[\p{Xps}]/8
  600:     >\x{2028}\x{0b}
  601:  0: >\x{2028}
  602:  
  603: /^>[\p{Xps}]+/8
  604:     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  605:  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
  606: 
  607: /^\p{Xwd}/8
  608:     ABCD
  609:  0: A
  610:     1234
  611:  0: 1
  612:     \x{6ca}
  613:  0: \x{6ca}
  614:     \x{a6c}
  615:  0: \x{a6c}
  616:     \x{10a7}
  617:  0: \x{10a7}
  618:     _ABC    
  619:  0: _
  620:     ** Failers
  621: No match
  622:     [] 
  623: No match
  624: 
  625: /^\p{Xwd}+/8
  626:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  627:  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  628: 
  629: /^\p{Xwd}+?/8
  630:     \x{6ca}\x{a6c}\x{10a7}_
  631:  0: \x{6ca}
  632: 
  633: /^\p{Xwd}*/8
  634:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  635:  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  636:     
  637: /^\p{Xwd}{2,9}/8
  638:     A_B12\x{6ca}\x{a6c}\x{10a7}
  639:  0: A_B12\x{6ca}\x{a6c}\x{10a7}
  640:     
  641: /^\p{Xwd}{2,9}?/8
  642:     \x{6ca}\x{a6c}\x{10a7}_
  643:  0: \x{6ca}\x{a6c}
  644:     
  645: /^[\p{Xwd}]/8
  646:     ABCD1234_
  647:  0: A
  648:     1234abcd_
  649:  0: 1
  650:     \x{6ca}
  651:  0: \x{6ca}
  652:     \x{a6c}
  653:  0: \x{a6c}
  654:     \x{10a7}   
  655:  0: \x{10a7}
  656:     _ABC 
  657:  0: _
  658:     ** Failers
  659: No match
  660:     []   
  661: No match
  662:  
  663: /^[\p{Xwd}]+/8
  664:     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  665:  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_
  666: 
  667: /-- A check not in UTF-8 mode --/
  668: 
  669: /^[\p{Xwd}]+/
  670:     ABCD1234_
  671:  0: ABCD1234_
  672:     
  673: /-- Some negative checks --/
  674: 
  675: /^[\P{Xwd}]+/8
  676:     !.+\x{019}\x{35a}AB
  677:  0: !.+\x{19}\x{35a}
  678: 
  679: /^[\p{^Xwd}]+/8
  680:     !.+\x{019}\x{35a}AB
  681:  0: !.+\x{19}\x{35a}
  682: 
  683: /[\D]/WBZ8
  684: ------------------------------------------------------------------
  685:         Bra
  686:         [\P{Nd}]
  687:         Ket
  688:         End
  689: ------------------------------------------------------------------
  690:     1\x{3c8}2
  691:  0: \x{3c8}
  692: 
  693: /[\d]/WBZ8
  694: ------------------------------------------------------------------
  695:         Bra
  696:         [\p{Nd}]
  697:         Ket
  698:         End
  699: ------------------------------------------------------------------
  700:     >\x{6f4}<
  701:  0: \x{6f4}
  702: 
  703: /[\S]/WBZ8
  704: ------------------------------------------------------------------
  705:         Bra
  706:         [\P{Xsp}]
  707:         Ket
  708:         End
  709: ------------------------------------------------------------------
  710:     \x{1680}\x{6f4}\x{1680}
  711:  0: \x{6f4}
  712: 
  713: /[\s]/WBZ8
  714: ------------------------------------------------------------------
  715:         Bra
  716:         [\p{Xsp}]
  717:         Ket
  718:         End
  719: ------------------------------------------------------------------
  720:     >\x{1680}<
  721:  0: \x{1680}
  722: 
  723: /[\W]/WBZ8
  724: ------------------------------------------------------------------
  725:         Bra
  726:         [\P{Xwd}]
  727:         Ket
  728:         End
  729: ------------------------------------------------------------------
  730:     A\x{1712}B
  731:  0: \x{1712}
  732: 
  733: /[\w]/WBZ8
  734: ------------------------------------------------------------------
  735:         Bra
  736:         [\p{Xwd}]
  737:         Ket
  738:         End
  739: ------------------------------------------------------------------
  740:     >\x{1723}<
  741:  0: \x{1723}
  742: 
  743: /\D/WBZ8
  744: ------------------------------------------------------------------
  745:         Bra
  746:         notprop Nd
  747:         Ket
  748:         End
  749: ------------------------------------------------------------------
  750:     1\x{3c8}2
  751:  0: \x{3c8}
  752: 
  753: /\d/WBZ8
  754: ------------------------------------------------------------------
  755:         Bra
  756:         prop Nd
  757:         Ket
  758:         End
  759: ------------------------------------------------------------------
  760:     >\x{6f4}<
  761:  0: \x{6f4}
  762: 
  763: /\S/WBZ8
  764: ------------------------------------------------------------------
  765:         Bra
  766:         notprop Xsp
  767:         Ket
  768:         End
  769: ------------------------------------------------------------------
  770:     \x{1680}\x{6f4}\x{1680}
  771:  0: \x{6f4}
  772: 
  773: /\s/WBZ8
  774: ------------------------------------------------------------------
  775:         Bra
  776:         prop Xsp
  777:         Ket
  778:         End
  779: ------------------------------------------------------------------
  780:     >\x{1680}>
  781:  0: \x{1680}
  782: 
  783: /\W/WBZ8
  784: ------------------------------------------------------------------
  785:         Bra
  786:         notprop Xwd
  787:         Ket
  788:         End
  789: ------------------------------------------------------------------
  790:     A\x{1712}B
  791:  0: \x{1712}
  792: 
  793: /\w/WBZ8
  794: ------------------------------------------------------------------
  795:         Bra
  796:         prop Xwd
  797:         Ket
  798:         End
  799: ------------------------------------------------------------------
  800:     >\x{1723}<
  801:  0: \x{1723}
  802: 
  803: /[[:alpha:]]/WBZ
  804: ------------------------------------------------------------------
  805:         Bra
  806:         [\p{L}]
  807:         Ket
  808:         End
  809: ------------------------------------------------------------------
  810: 
  811: /[[:lower:]]/WBZ
  812: ------------------------------------------------------------------
  813:         Bra
  814:         [\p{Ll}]
  815:         Ket
  816:         End
  817: ------------------------------------------------------------------
  818: 
  819: /[[:upper:]]/WBZ
  820: ------------------------------------------------------------------
  821:         Bra
  822:         [\p{Lu}]
  823:         Ket
  824:         End
  825: ------------------------------------------------------------------
  826: 
  827: /[[:alnum:]]/WBZ
  828: ------------------------------------------------------------------
  829:         Bra
  830:         [\p{Xan}]
  831:         Ket
  832:         End
  833: ------------------------------------------------------------------
  834: 
  835: /[[:ascii:]]/WBZ
  836: ------------------------------------------------------------------
  837:         Bra
  838:         [\x00-\x7f]
  839:         Ket
  840:         End
  841: ------------------------------------------------------------------
  842: 
  843: /[[:cntrl:]]/WBZ
  844: ------------------------------------------------------------------
  845:         Bra
  846:         [\x00-\x1f\x7f]
  847:         Ket
  848:         End
  849: ------------------------------------------------------------------
  850: 
  851: /[[:digit:]]/WBZ
  852: ------------------------------------------------------------------
  853:         Bra
  854:         [\p{Nd}]
  855:         Ket
  856:         End
  857: ------------------------------------------------------------------
  858: 
  859: /[[:graph:]]/WBZ
  860: ------------------------------------------------------------------
  861:         Bra
  862:         [[:graph:]]
  863:         Ket
  864:         End
  865: ------------------------------------------------------------------
  866: 
  867: /[[:print:]]/WBZ
  868: ------------------------------------------------------------------
  869:         Bra
  870:         [[:print:]]
  871:         Ket
  872:         End
  873: ------------------------------------------------------------------
  874: 
  875: /[[:punct:]]/WBZ
  876: ------------------------------------------------------------------
  877:         Bra
  878:         [[:punct:]]
  879:         Ket
  880:         End
  881: ------------------------------------------------------------------
  882: 
  883: /[[:space:]]/WBZ
  884: ------------------------------------------------------------------
  885:         Bra
  886:         [\p{Xps}]
  887:         Ket
  888:         End
  889: ------------------------------------------------------------------
  890: 
  891: /[[:word:]]/WBZ
  892: ------------------------------------------------------------------
  893:         Bra
  894:         [\p{Xwd}]
  895:         Ket
  896:         End
  897: ------------------------------------------------------------------
  898: 
  899: /[[:xdigit:]]/WBZ
  900: ------------------------------------------------------------------
  901:         Bra
  902:         [0-9A-Fa-f]
  903:         Ket
  904:         End
  905: ------------------------------------------------------------------
  906: 
  907: /-- Unicode properties for \b abd \B --/
  908: 
  909: /\b...\B/8W
  910:     abc_
  911:  0: abc
  912:     \x{37e}abc\x{376} 
  913:  0: abc
  914:     \x{37e}\x{376}\x{371}\x{393}\x{394} 
  915:  0: \x{376}\x{371}\x{393}
  916:     !\x{c0}++\x{c1}\x{c2} 
  917:  0: ++\x{c1}
  918:     !\x{c0}+++++ 
  919:  0: \x{c0}++
  920: 
  921: /-- Without PCRE_UCP, non-ASCII always fail, even if < 256  --/
  922: 
  923: /\b...\B/8
  924:     abc_
  925:  0: abc
  926:     ** Failers 
  927:  0: Fai
  928:     \x{37e}abc\x{376} 
  929: No match
  930:     \x{37e}\x{376}\x{371}\x{393}\x{394} 
  931: No match
  932:     !\x{c0}++\x{c1}\x{c2} 
  933: No match
  934:     !\x{c0}+++++ 
  935: No match
  936: 
  937: /-- With PCRE_UCP, non-UTF8 chars that are < 256 still check properties  --/
  938: 
  939: /\b...\B/W
  940:     abc_
  941:  0: abc
  942:     !\x{c0}++\x{c1}\x{c2} 
  943:  0: ++\xc1
  944:     !\x{c0}+++++ 
  945:  0: \xc0++
  946: 
  947: /-- Some of these are silly, but they check various combinations --/
  948: 
  949: /[[:^alpha:][:^cntrl:]]+/8WBZ
  950: ------------------------------------------------------------------
  951:         Bra
  952:         [ -~\x80-\xff\P{L}]++
  953:         Ket
  954:         End
  955: ------------------------------------------------------------------
  956:     123
  957:  0: 123
  958:     abc 
  959:  0: abc
  960: 
  961: /[[:^cntrl:][:^alpha:]]+/8WBZ
  962: ------------------------------------------------------------------
  963:         Bra
  964:         [ -~\x80-\xff\P{L}]++
  965:         Ket
  966:         End
  967: ------------------------------------------------------------------
  968:     123
  969:  0: 123
  970:     abc 
  971:  0: abc
  972: 
  973: /[[:alpha:]]+/8WBZ
  974: ------------------------------------------------------------------
  975:         Bra
  976:         [\p{L}]++
  977:         Ket
  978:         End
  979: ------------------------------------------------------------------
  980:     abc
  981:  0: abc
  982: 
  983: /[[:^alpha:]\S]+/8WBZ
  984: ------------------------------------------------------------------
  985:         Bra
  986:         [\P{L}\P{Xsp}]++
  987:         Ket
  988:         End
  989: ------------------------------------------------------------------
  990:     123
  991:  0: 123
  992:     abc 
  993:  0: abc
  994: 
  995: /[^\d]+/8WBZ
  996: ------------------------------------------------------------------
  997:         Bra
  998:         [^\p{Nd}]++
  999:         Ket
 1000:         End
 1001: ------------------------------------------------------------------
 1002:     abc123
 1003:  0: abc
 1004:     abc\x{123}
 1005:  0: abc\x{123}
 1006:     \x{660}abc   
 1007:  0: abc
 1008: 
 1009: /\p{Lu}+9\p{Lu}+B\p{Lu}+b/BZ
 1010: ------------------------------------------------------------------
 1011:         Bra
 1012:         prop Lu ++
 1013:         9
 1014:         prop Lu +
 1015:         B
 1016:         prop Lu ++
 1017:         b
 1018:         Ket
 1019:         End
 1020: ------------------------------------------------------------------
 1021: 
 1022: /\p{^Lu}+9\p{^Lu}+B\p{^Lu}+b/BZ
 1023: ------------------------------------------------------------------
 1024:         Bra
 1025:         notprop Lu +
 1026:         9
 1027:         notprop Lu ++
 1028:         B
 1029:         notprop Lu +
 1030:         b
 1031:         Ket
 1032:         End
 1033: ------------------------------------------------------------------
 1034: 
 1035: /\P{Lu}+9\P{Lu}+B\P{Lu}+b/BZ
 1036: ------------------------------------------------------------------
 1037:         Bra
 1038:         notprop Lu +
 1039:         9
 1040:         notprop Lu ++
 1041:         B
 1042:         notprop Lu +
 1043:         b
 1044:         Ket
 1045:         End
 1046: ------------------------------------------------------------------
 1047: 
 1048: /\p{Han}+X\p{Greek}+\x{370}/BZ8
 1049: ------------------------------------------------------------------
 1050:         Bra
 1051:         prop Han ++
 1052:         X
 1053:         prop Greek +
 1054:         \x{370}
 1055:         Ket
 1056:         End
 1057: ------------------------------------------------------------------
 1058: 
 1059: /\p{Xan}+!\p{Xan}+A/BZ
 1060: ------------------------------------------------------------------
 1061:         Bra
 1062:         prop Xan ++
 1063:         !
 1064:         prop Xan +
 1065:         A
 1066:         Ket
 1067:         End
 1068: ------------------------------------------------------------------
 1069: 
 1070: /\p{Xsp}+!\p{Xsp}\t/BZ
 1071: ------------------------------------------------------------------
 1072:         Bra
 1073:         prop Xsp ++
 1074:         !
 1075:         prop Xsp
 1076:         \x09
 1077:         Ket
 1078:         End
 1079: ------------------------------------------------------------------
 1080: 
 1081: /\p{Xps}+!\p{Xps}\t/BZ
 1082: ------------------------------------------------------------------
 1083:         Bra
 1084:         prop Xps ++
 1085:         !
 1086:         prop Xps
 1087:         \x09
 1088:         Ket
 1089:         End
 1090: ------------------------------------------------------------------
 1091: 
 1092: /\p{Xwd}+!\p{Xwd}_/BZ
 1093: ------------------------------------------------------------------
 1094:         Bra
 1095:         prop Xwd ++
 1096:         !
 1097:         prop Xwd
 1098:         _
 1099:         Ket
 1100:         End
 1101: ------------------------------------------------------------------
 1102: 
 1103: /A+\p{N}A+\dB+\p{N}*B+\d*/WBZ
 1104: ------------------------------------------------------------------
 1105:         Bra
 1106:         A++
 1107:         prop N
 1108:         A++
 1109:         prop Nd
 1110:         B+
 1111:         prop N *+
 1112:         B++
 1113:         prop Nd *+
 1114:         Ket
 1115:         End
 1116: ------------------------------------------------------------------
 1117: 
 1118: /-- These behaved oddly in Perl, so they are kept in this test --/
 1119: 
 1120: /(\x{23a}\x{23a}\x{23a})?\1/8i
 1121:     \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}
 1122: No match
 1123: 
 1124: /(ȺȺȺ)?\1/8i
 1125:     ȺȺȺⱥⱥ
 1126: No match
 1127: 
 1128: /(\x{23a}\x{23a}\x{23a})?\1/8i
 1129:     \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
 1130:  0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
 1131:  1: \x{23a}\x{23a}\x{23a}
 1132: 
 1133: /(ȺȺȺ)?\1/8i
 1134:     ȺȺȺⱥⱥⱥ
 1135:  0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
 1136:  1: \x{23a}\x{23a}\x{23a}
 1137: 
 1138: /(\x{23a}\x{23a}\x{23a})\1/8i
 1139:     \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}
 1140: No match
 1141: 
 1142: /(ȺȺȺ)\1/8i
 1143:     ȺȺȺⱥⱥ
 1144: No match
 1145: 
 1146: /(\x{23a}\x{23a}\x{23a})\1/8i
 1147:     \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
 1148:  0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
 1149:  1: \x{23a}\x{23a}\x{23a}
 1150: 
 1151: /(ȺȺȺ)\1/8i
 1152:     ȺȺȺⱥⱥⱥ
 1153:  0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
 1154:  1: \x{23a}\x{23a}\x{23a}
 1155: 
 1156: /(\x{2c65}\x{2c65})\1/8i
 1157:     \x{2c65}\x{2c65}\x{23a}\x{23a}
 1158:  0: \x{2c65}\x{2c65}\x{23a}\x{23a}
 1159:  1: \x{2c65}\x{2c65}
 1160:     
 1161: /(ⱥⱥ)\1/8i
 1162:     ⱥⱥȺȺ 
 1163:  0: \x{2c65}\x{2c65}\x{23a}\x{23a}
 1164:  1: \x{2c65}\x{2c65}
 1165:     
 1166: /(\x{23a}\x{23a}\x{23a})\1Y/8i
 1167:     X\x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}YZ
 1168:  0: \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}Y
 1169:  1: \x{23a}\x{23a}\x{23a}
 1170: 
 1171: /(\x{2c65}\x{2c65})\1Y/8i
 1172:     X\x{2c65}\x{2c65}\x{23a}\x{23a}YZ
 1173:  0: \x{2c65}\x{2c65}\x{23a}\x{23a}Y
 1174:  1: \x{2c65}\x{2c65}
 1175: 
 1176: /-- --/ 
 1177: 
 1178: /-- These scripts weren't yet in Perl when I added Unicode 6.0.0 to PCRE --/
 1179: 
 1180: /^[\p{Batak}]/8
 1181:     \x{1bc0}
 1182:  0: \x{1bc0}
 1183:     \x{1bff}
 1184:  0: \x{1bff}
 1185:     ** Failers
 1186: No match
 1187:     \x{1bf4}
 1188: No match
 1189:     
 1190: /^[\p{Brahmi}]/8
 1191:     \x{11000}
 1192:  0: \x{11000}
 1193:     \x{1106f}
 1194:  0: \x{1106f}
 1195:     ** Failers
 1196: No match
 1197:     \x{1104e}
 1198: No match
 1199:     
 1200: /^[\p{Mandaic}]/8
 1201:     \x{840}
 1202:  0: \x{840}
 1203:     \x{85e}
 1204:  0: \x{85e}
 1205:     ** Failers
 1206: No match
 1207:     \x{85c}
 1208: No match
 1209:     \x{85d}    
 1210: No match
 1211: 
 1212: /-- --/ 
 1213: 
 1214: /(\X*)(.)/s8
 1215:     A\x{300}
 1216:  0: A
 1217:  1: 
 1218:  2: A
 1219: 
 1220: /^S(\X*)e(\X*)$/8
 1221:     Stéréo
 1222:  0: Ste\x{301}re\x{301}o
 1223:  1: te\x{301}r
 1224:  2: \x{301}o
 1225:     
 1226: /^\X/8 
 1227:     ́réo
 1228:  0: \x{301}
 1229: 
 1230: /^a\X41z/<JS>
 1231:     aX41z
 1232:  0: aX41z
 1233:     *** Failers
 1234: No match
 1235:     aAz
 1236: No match
 1237: 
 1238: /(?<=ab\Cde)X/8
 1239: Failed: \C not allowed in lookbehind assertion at offset 10
 1240: 
 1241: /\X/
 1242:     a\P
 1243:  0: a
 1244:     a\P\P
 1245: Partial match: a
 1246: 
 1247: /\Xa/
 1248:     aa\P
 1249:  0: aa
 1250:     aa\P\P
 1251:  0: aa
 1252: 
 1253: /\X{2}/
 1254:     aa\P
 1255:  0: aa
 1256:     aa\P\P
 1257: Partial match: aa
 1258: 
 1259: /\X+a/
 1260:     a\P
 1261: Partial match: a
 1262:     aa\P
 1263:  0: aa
 1264:     aa\P\P
 1265: Partial match: aa
 1266: 
 1267: /\X+?a/
 1268:     a\P
 1269: Partial match: a
 1270:     ab\P
 1271: Partial match: ab
 1272:     aa\P
 1273:  0: aa
 1274:     aa\P\P
 1275:  0: aa
 1276:     aba\P
 1277:  0: aba
 1278:     
 1279: /-- These Unicode 6.1.0 scripts are not known to Perl. --/ 
 1280: 
 1281: /\p{Chakma}\d/8W
 1282:     \x{11100}\x{1113c}
 1283:  0: \x{11100}\x{1113c}
 1284: 
 1285: /\p{Takri}\d/8W
 1286:     \x{11680}\x{116c0}
 1287:  0: \x{11680}\x{116c0}
 1288: 
 1289: /^\X/8
 1290:     A\P
 1291:  0: A
 1292:     A\P\P 
 1293: Partial match: A
 1294:     A\x{300}\x{301}\P
 1295:  0: A\x{300}\x{301}
 1296:     A\x{300}\x{301}\P\P  
 1297: Partial match: A\x{300}\x{301}
 1298:     A\x{301}\P
 1299:  0: A\x{301}
 1300:     A\x{301}\P\P  
 1301: Partial match: A\x{301}
 1302:     
 1303: /^\X{2,3}/8
 1304:     A\P
 1305: Partial match: A
 1306:     A\P\P 
 1307: Partial match: A
 1308:     AA\P
 1309:  0: AA
 1310:     AA\P\P  
 1311: Partial match: AA
 1312:     A\x{300}\x{301}\P
 1313: Partial match: A\x{300}\x{301}
 1314:     A\x{300}\x{301}\P\P  
 1315: Partial match: A\x{300}\x{301}
 1316:     A\x{300}\x{301}A\x{300}\x{301}\P
 1317:  0: A\x{300}\x{301}A\x{300}\x{301}
 1318:     A\x{300}\x{301}A\x{300}\x{301}\P\P  
 1319: Partial match: A\x{300}\x{301}A\x{300}\x{301}
 1320: 
 1321: /^\X{2}/8
 1322:     AA\P
 1323:  0: AA
 1324:     AA\P\P  
 1325: Partial match: AA
 1326:     A\x{300}\x{301}A\x{300}\x{301}\P
 1327:  0: A\x{300}\x{301}A\x{300}\x{301}
 1328:     A\x{300}\x{301}A\x{300}\x{301}\P\P  
 1329: Partial match: A\x{300}\x{301}A\x{300}\x{301}
 1330:     
 1331: /^\X+/8
 1332:     AA\P
 1333:  0: AA
 1334:     AA\P\P  
 1335: Partial match: AA
 1336: 
 1337: /^\X+?Z/8
 1338:     AA\P
 1339: Partial match: AA
 1340:     AA\P\P 
 1341: Partial match: AA
 1342: 
 1343: /A\x{3a3}B/8iDZ
 1344: ------------------------------------------------------------------
 1345:         Bra
 1346:      /i A
 1347:         clist 03a3 03c2 03c3
 1348:      /i B
 1349:         Ket
 1350:         End
 1351: ------------------------------------------------------------------
 1352: Capturing subpattern count = 0
 1353: Options: caseless utf
 1354: First char = 'A' (caseless)
 1355: Need char = 'B' (caseless)
 1356: 
 1357: /\x{3a3}B/8iDZ
 1358: ------------------------------------------------------------------
 1359:         Bra
 1360:         clist 03a3 03c2 03c3
 1361:      /i B
 1362:         Ket
 1363:         End
 1364: ------------------------------------------------------------------
 1365: Capturing subpattern count = 0
 1366: Options: caseless utf
 1367: No first char
 1368: Need char = 'B' (caseless)
 1369: 
 1370: /[\x{3a3}]/8iBZ
 1371: ------------------------------------------------------------------
 1372:         Bra
 1373:         clist 03a3 03c2 03c3
 1374:         Ket
 1375:         End
 1376: ------------------------------------------------------------------
 1377: 
 1378: /[^\x{3a3}]/8iBZ
 1379: ------------------------------------------------------------------
 1380:         Bra
 1381:         not clist 03a3 03c2 03c3
 1382:         Ket
 1383:         End
 1384: ------------------------------------------------------------------
 1385: 
 1386: /[\x{3a3}]+/8iBZ
 1387: ------------------------------------------------------------------
 1388:         Bra
 1389:         clist 03a3 03c2 03c3 ++
 1390:         Ket
 1391:         End
 1392: ------------------------------------------------------------------
 1393: 
 1394: /[^\x{3a3}]+/8iBZ
 1395: ------------------------------------------------------------------
 1396:         Bra
 1397:         not clist 03a3 03c2 03c3 ++
 1398:         Ket
 1399:         End
 1400: ------------------------------------------------------------------
 1401: 
 1402: /a*\x{3a3}/8iBZ
 1403: ------------------------------------------------------------------
 1404:         Bra
 1405:      /i a*+
 1406:         clist 03a3 03c2 03c3
 1407:         Ket
 1408:         End
 1409: ------------------------------------------------------------------
 1410: 
 1411: /\x{3a3}+a/8iBZ
 1412: ------------------------------------------------------------------
 1413:         Bra
 1414:         clist 03a3 03c2 03c3 ++
 1415:      /i a
 1416:         Ket
 1417:         End
 1418: ------------------------------------------------------------------
 1419: 
 1420: /\x{3a3}*\x{3c2}/8iBZ
 1421: ------------------------------------------------------------------
 1422:         Bra
 1423:         clist 03a3 03c2 03c3 *
 1424:         clist 03a3 03c2 03c3
 1425:         Ket
 1426:         End
 1427: ------------------------------------------------------------------
 1428: 
 1429: /\x{3a3}{3}/8i+
 1430:     \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1431:  0: \x{3a3}\x{3c3}\x{3c2}
 1432:  0+ \x{3a3}\x{3c3}\x{3c2}
 1433: 
 1434: /\x{3a3}{2,4}/8i+
 1435:     \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1436:  0: \x{3a3}\x{3c3}\x{3c2}\x{3a3}
 1437:  0+ \x{3c3}\x{3c2}
 1438: 
 1439: /\x{3a3}{2,4}?/8i+
 1440:     \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1441:  0: \x{3a3}\x{3c3}
 1442:  0+ \x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1443: 
 1444: /\x{3a3}+./8i+
 1445:     \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1446:  0: \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1447:  0+ 
 1448: 
 1449: /\x{3a3}++./8i+
 1450:     ** Failers
 1451: No match
 1452:     \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
 1453: No match
 1454: 
 1455: /\x{3a3}*\x{3c2}/8iBZ
 1456: ------------------------------------------------------------------
 1457:         Bra
 1458:         clist 03a3 03c2 03c3 *
 1459:         clist 03a3 03c2 03c3
 1460:         Ket
 1461:         End
 1462: ------------------------------------------------------------------
 1463: 
 1464: /[^\x{3a3}]*\x{3c2}/8iBZ
 1465: ------------------------------------------------------------------
 1466:         Bra
 1467:         not clist 03a3 03c2 03c3 *+
 1468:         clist 03a3 03c2 03c3
 1469:         Ket
 1470:         End
 1471: ------------------------------------------------------------------
 1472: 
 1473: /[^a]*\x{3c2}/8iBZ
 1474: ------------------------------------------------------------------
 1475:         Bra
 1476:      /i [^a]*
 1477:         clist 03a3 03c2 03c3
 1478:         Ket
 1479:         End
 1480: ------------------------------------------------------------------
 1481: 
 1482: /ist/8iBZ
 1483: ------------------------------------------------------------------
 1484:         Bra
 1485:      /i i
 1486:         clist 0053 0073 017f
 1487:      /i t
 1488:         Ket
 1489:         End
 1490: ------------------------------------------------------------------
 1491:     ikt
 1492: No match
 1493: 
 1494: /is+t/8i
 1495:     iSs\x{17f}t
 1496:  0: iSs\x{17f}t
 1497:     ikt
 1498: No match
 1499: 
 1500: /is+?t/8i
 1501:     ikt
 1502: No match
 1503: 
 1504: /is?t/8i
 1505:     ikt
 1506: No match
 1507: 
 1508: /is{2}t/8i
 1509:     iskt
 1510: No match
 1511:     
 1512: /-- This property is a PCRE special --/
 1513: 
 1514: /^\p{Xuc}/8
 1515:     $abc
 1516:  0: $
 1517:     @abc
 1518:  0: @
 1519:     `abc
 1520:  0: `
 1521:     \x{1234}abc
 1522:  0: \x{1234}
 1523:     ** Failers
 1524: No match
 1525:     abc     
 1526: No match
 1527: 
 1528: /^\p{Xuc}+/8
 1529:     $@`\x{a0}\x{1234}\x{e000}**
 1530:  0: $@`\x{a0}\x{1234}\x{e000}
 1531:     ** Failers
 1532: No match
 1533:     \x{9f}
 1534: No match
 1535: 
 1536: /^\p{Xuc}+?/8
 1537:     $@`\x{a0}\x{1234}\x{e000}**
 1538:  0: $
 1539:     ** Failers
 1540: No match
 1541:     \x{9f}
 1542: No match
 1543: 
 1544: /^\p{Xuc}+?\*/8
 1545:     $@`\x{a0}\x{1234}\x{e000}**
 1546:  0: $@`\x{a0}\x{1234}\x{e000}*
 1547:     ** Failers
 1548: No match
 1549:     \x{9f}
 1550: No match
 1551: 
 1552: /^\p{Xuc}++/8
 1553:     $@`\x{a0}\x{1234}\x{e000}**
 1554:  0: $@`\x{a0}\x{1234}\x{e000}
 1555:     ** Failers
 1556: No match
 1557:     \x{9f}
 1558: No match
 1559: 
 1560: /^\p{Xuc}{3,5}/8
 1561:     $@`\x{a0}\x{1234}\x{e000}**
 1562:  0: $@`\x{a0}\x{1234}
 1563:     ** Failers
 1564: No match
 1565:     \x{9f}
 1566: No match
 1567: 
 1568: /^\p{Xuc}{3,5}?/8
 1569:     $@`\x{a0}\x{1234}\x{e000}**
 1570:  0: $@`
 1571:     ** Failers
 1572: No match
 1573:     \x{9f}
 1574: No match
 1575: 
 1576: /^[\p{Xuc}]/8
 1577:     $@`\x{a0}\x{1234}\x{e000}**
 1578:  0: $
 1579:     ** Failers
 1580: No match
 1581:     \x{9f}
 1582: No match
 1583: 
 1584: /^[\p{Xuc}]+/8
 1585:     $@`\x{a0}\x{1234}\x{e000}**
 1586:  0: $@`\x{a0}\x{1234}\x{e000}
 1587:     ** Failers
 1588: No match
 1589:     \x{9f}
 1590: No match
 1591: 
 1592: /^\P{Xuc}/8
 1593:     abc
 1594:  0: a
 1595:     ** Failers
 1596:  0: *
 1597:     $abc
 1598: No match
 1599:     @abc
 1600: No match
 1601:     `abc
 1602: No match
 1603:     \x{1234}abc
 1604: No match
 1605: 
 1606: /^[\P{Xuc}]/8
 1607:     abc
 1608:  0: a
 1609:     ** Failers
 1610:  0: *
 1611:     $abc
 1612: No match
 1613:     @abc
 1614: No match
 1615:     `abc
 1616: No match
 1617:     \x{1234}abc
 1618: No match
 1619:     
 1620: /-- Some auto-possessification tests --/
 1621: 
 1622: /\pN+\z/BZ
 1623: ------------------------------------------------------------------
 1624:         Bra
 1625:         prop N ++
 1626:         \z
 1627:         Ket
 1628:         End
 1629: ------------------------------------------------------------------
 1630: 
 1631: /\PN+\z/BZ
 1632: ------------------------------------------------------------------
 1633:         Bra
 1634:         notprop N ++
 1635:         \z
 1636:         Ket
 1637:         End
 1638: ------------------------------------------------------------------
 1639: 
 1640: /\pN+/BZ
 1641: ------------------------------------------------------------------
 1642:         Bra
 1643:         prop N ++
 1644:         Ket
 1645:         End
 1646: ------------------------------------------------------------------
 1647: 
 1648: /\PN+/BZ
 1649: ------------------------------------------------------------------
 1650:         Bra
 1651:         notprop N ++
 1652:         Ket
 1653:         End
 1654: ------------------------------------------------------------------
 1655: 
 1656: /\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}/BWZx  
 1657: ------------------------------------------------------------------
 1658:         Bra
 1659:         prop Any +
 1660:         prop Any
 1661:         prop Any +
 1662:         notprop Any
 1663:         prop Any +
 1664:         prop L&
 1665:         prop Any +
 1666:         prop L
 1667:         prop Any +
 1668:         prop Lu
 1669:         prop Any +
 1670:         prop Han
 1671:         prop Any +
 1672:         prop Xan
 1673:         prop Any +
 1674:         prop Xsp
 1675:         prop Any +
 1676:         prop Xps
 1677:         prop Xwd +
 1678:         prop Any
 1679:         prop Any +
 1680:         prop Xuc
 1681:         Ket
 1682:         End
 1683: ------------------------------------------------------------------
 1684: 
 1685: /\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}/BWZx  
 1686: ------------------------------------------------------------------
 1687:         Bra
 1688:         prop L& +
 1689:         prop Any
 1690:         prop L& +
 1691:         prop L&
 1692:         notprop L& ++
 1693:         prop L&
 1694:         prop L& +
 1695:         prop L
 1696:         prop L& +
 1697:         prop Lu
 1698:         prop L& +
 1699:         prop Han
 1700:         prop L& +
 1701:         prop Xan
 1702:         prop L& ++
 1703:         notprop Xan
 1704:         prop L& ++
 1705:         prop Xsp
 1706:         prop L& ++
 1707:         prop Xps
 1708:         prop Xwd +
 1709:         prop L&
 1710:         prop L& +
 1711:         prop Xuc
 1712:         Ket
 1713:         End
 1714: ------------------------------------------------------------------
 1715: 
 1716: /\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}/BWZx  
 1717: ------------------------------------------------------------------
 1718:         Bra
 1719:         prop N +
 1720:         prop Any
 1721:         prop N +
 1722:         prop L&
 1723:         prop N ++
 1724:         prop L
 1725:         prop N +
 1726:         notprop L
 1727:         prop N ++
 1728:         notprop N
 1729:         prop N ++
 1730:         prop Lu
 1731:         prop N +
 1732:         prop Han
 1733:         prop N +
 1734:         prop Xan
 1735:         prop N ++
 1736:         prop Xsp
 1737:         prop N ++
 1738:         prop Xps
 1739:         prop Xwd +
 1740:         prop N
 1741:         prop N +
 1742:         prop Xuc
 1743:         Ket
 1744:         End
 1745: ------------------------------------------------------------------
 1746: 
 1747: /\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}/BWZx  
 1748: ------------------------------------------------------------------
 1749:         Bra
 1750:         prop Lu +
 1751:         prop Any
 1752:         prop Lu +
 1753:         prop L&
 1754:         prop Lu +
 1755:         prop L
 1756:         prop Lu +
 1757:         prop Lu
 1758:         notprop Lu ++
 1759:         prop Lu
 1760:         prop Lu ++
 1761:         prop Nd
 1762:         prop Lu +
 1763:         notprop Nd
 1764:         prop Lu +
 1765:         prop Han
 1766:         prop Lu +
 1767:         prop Xan
 1768:         prop Lu ++
 1769:         prop Xsp
 1770:         prop Lu ++
 1771:         prop Xps
 1772:         prop Xwd +
 1773:         prop Lu
 1774:         prop Lu +
 1775:         prop Xuc
 1776:         Ket
 1777:         End
 1778: ------------------------------------------------------------------
 1779: 
 1780: /\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}/BWZx  
 1781: ------------------------------------------------------------------
 1782:         Bra
 1783:         prop Han +
 1784:         prop Lu
 1785:         prop Han +
 1786:         prop L&
 1787:         prop Han +
 1788:         prop L
 1789:         prop Han +
 1790:         prop Lu
 1791:         prop Han ++
 1792:         prop Arabic
 1793:         prop Arabic +
 1794:         prop Arabic
 1795:         prop Han +
 1796:         prop Xan
 1797:         prop Han +
 1798:         prop Xsp
 1799:         prop Han +
 1800:         prop Xps
 1801:         prop Xwd +
 1802:         prop Han
 1803:         prop Han +
 1804:         prop Xuc
 1805:         Ket
 1806:         End
 1807: ------------------------------------------------------------------
 1808: 
 1809: /\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}/BWZx  
 1810: ------------------------------------------------------------------
 1811:         Bra
 1812:         prop Xan +
 1813:         prop Any
 1814:         prop Xan +
 1815:         prop L&
 1816:         notprop Xan ++
 1817:         prop L&
 1818:         prop Xan +
 1819:         prop L
 1820:         prop Xan +
 1821:         prop Lu
 1822:         prop Xan +
 1823:         prop Han
 1824:         prop Xan +
 1825:         prop Xan
 1826:         prop Xan ++
 1827:         notprop Xan
 1828:         prop Xan ++
 1829:         prop Xsp
 1830:         prop Xan ++
 1831:         prop Xps
 1832:         prop Xwd +
 1833:         prop Xan
 1834:         prop Xan +
 1835:         prop Xuc
 1836:         Ket
 1837:         End
 1838: ------------------------------------------------------------------
 1839: 
 1840: /\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}/BWZx  
 1841: ------------------------------------------------------------------
 1842:         Bra
 1843:         prop Xsp +
 1844:         prop Any
 1845:         prop Xsp ++
 1846:         prop L&
 1847:         prop Xsp ++
 1848:         prop L
 1849:         prop Xsp ++
 1850:         prop Lu
 1851:         prop Xsp +
 1852:         prop Han
 1853:         prop Xsp ++
 1854:         prop Xan
 1855:         prop Xsp +
 1856:         prop Xsp
 1857:         notprop Xsp ++
 1858:         prop Xsp
 1859:         prop Xsp +
 1860:         prop Xps
 1861:         prop Xwd ++
 1862:         prop Xsp
 1863:         prop Xsp +
 1864:         prop Xuc
 1865:         Ket
 1866:         End
 1867: ------------------------------------------------------------------
 1868: 
 1869: /\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}/BWZx  
 1870: ------------------------------------------------------------------
 1871:         Bra
 1872:         prop Xwd +
 1873:         prop Any
 1874:         prop Xwd +
 1875:         prop L&
 1876:         prop Xwd +
 1877:         prop L
 1878:         prop Xwd +
 1879:         prop Lu
 1880:         prop Xwd +
 1881:         prop Han
 1882:         prop Xwd +
 1883:         prop Xan
 1884:         prop Xwd ++
 1885:         prop Xsp
 1886:         prop Xwd ++
 1887:         prop Xps
 1888:         prop Xwd +
 1889:         prop Xwd
 1890:         prop Xwd ++
 1891:         notprop Xwd
 1892:         prop Xwd +
 1893:         prop Xuc
 1894:         Ket
 1895:         End
 1896: ------------------------------------------------------------------
 1897: 
 1898: /\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}/BWZx  
 1899: ------------------------------------------------------------------
 1900:         Bra
 1901:         prop Xuc +
 1902:         prop Any
 1903:         prop Xuc +
 1904:         prop L&
 1905:         prop Xuc +
 1906:         prop L
 1907:         prop Xuc +
 1908:         prop Lu
 1909:         prop Xuc +
 1910:         prop Han
 1911:         prop Xuc +
 1912:         prop Xan
 1913:         prop Xuc +
 1914:         prop Xsp
 1915:         prop Xuc +
 1916:         prop Xps
 1917:         prop Xwd +
 1918:         prop Xuc
 1919:         prop Xuc +
 1920:         prop Xuc
 1921:         prop Xuc ++
 1922:         notprop Xuc
 1923:         Ket
 1924:         End
 1925: ------------------------------------------------------------------
 1926: 
 1927: /\p{N}+\p{Ll} \p{N}+\p{Nd} \p{N}+\P{Nd}/BWZx
 1928: ------------------------------------------------------------------
 1929:         Bra
 1930:         prop N ++
 1931:         prop Ll
 1932:         prop N +
 1933:         prop Nd
 1934:         prop N +
 1935:         notprop Nd
 1936:         Ket
 1937:         End
 1938: ------------------------------------------------------------------
 1939: 
 1940: /\p{Xan}+\p{L} \p{Xan}+\p{N} \p{Xan}+\p{C} \p{Xan}+\P{L} \P{Xan}+\p{N} \p{Xan}+\P{C}/BWZx
 1941: ------------------------------------------------------------------
 1942:         Bra
 1943:         prop Xan +
 1944:         prop L
 1945:         prop Xan +
 1946:         prop N
 1947:         prop Xan ++
 1948:         prop C
 1949:         prop Xan +
 1950:         notprop L
 1951:         notprop Xan ++
 1952:         prop N
 1953:         prop Xan +
 1954:         notprop C
 1955:         Ket
 1956:         End
 1957: ------------------------------------------------------------------
 1958: 
 1959: /\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}/BWZx
 1960: ------------------------------------------------------------------
 1961:         Bra
 1962:         prop L +
 1963:         prop Xan
 1964:         prop N +
 1965:         prop Xan
 1966:         prop C ++
 1967:         prop Xan
 1968:         notprop L +
 1969:         prop Xan
 1970:         prop N +
 1971:         prop Xan
 1972:         notprop C +
 1973:         prop Xan
 1974:         prop L ++
 1975:         notprop Xan
 1976:         Ket
 1977:         End
 1978: ------------------------------------------------------------------
 1979: 
 1980: /\p{Xan}+\p{Lu} \p{Xan}+\p{Nd} \p{Xan}+\p{Cc} \p{Xan}+\P{Ll} \P{Xan}+\p{No} \p{Xan}+\P{Cf}/BWZx
 1981: ------------------------------------------------------------------
 1982:         Bra
 1983:         prop Xan +
 1984:         prop Lu
 1985:         prop Xan +
 1986:         prop Nd
 1987:         prop Xan ++
 1988:         prop Cc
 1989:         prop Xan +
 1990:         notprop Ll
 1991:         notprop Xan ++
 1992:         prop No
 1993:         prop Xan +
 1994:         notprop Cf
 1995:         Ket
 1996:         End
 1997: ------------------------------------------------------------------
 1998: 
 1999: /\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}/BWZx
 2000: ------------------------------------------------------------------
 2001:         Bra
 2002:         prop Lu +
 2003:         prop Xan
 2004:         prop Nd +
 2005:         prop Xan
 2006:         prop Cs ++
 2007:         prop Xan
 2008:         notprop Lt +
 2009:         prop Xan
 2010:         prop Nl +
 2011:         prop Xan
 2012:         notprop Cc +
 2013:         prop Xan
 2014:         prop Lt ++
 2015:         notprop Xan
 2016:         Ket
 2017:         End
 2018: ------------------------------------------------------------------
 2019: 
 2020: /\w+\p{P} \w+\p{Po} \w+\s \p{Xan}+\s \s+\p{Xan} \s+\w/BWZx
 2021: ------------------------------------------------------------------
 2022:         Bra
 2023:         prop Xwd +
 2024:         prop P
 2025:         prop Xwd +
 2026:         prop Po
 2027:         prop Xwd ++
 2028:         prop Xsp
 2029:         prop Xan ++
 2030:         prop Xsp
 2031:         prop Xsp ++
 2032:         prop Xan
 2033:         prop Xsp ++
 2034:         prop Xwd
 2035:         Ket
 2036:         End
 2037: ------------------------------------------------------------------
 2038: 
 2039: /\w+\P{P} \W+\p{Po} \w+\S \P{Xan}+\s \s+\P{Xan} \s+\W/BWZx
 2040: ------------------------------------------------------------------
 2041:         Bra
 2042:         prop Xwd +
 2043:         notprop P
 2044:         notprop Xwd +
 2045:         prop Po
 2046:         prop Xwd +
 2047:         notprop Xsp
 2048:         notprop Xan +
 2049:         prop Xsp
 2050:         prop Xsp +
 2051:         notprop Xan
 2052:         prop Xsp +
 2053:         notprop Xwd
 2054:         Ket
 2055:         End
 2056: ------------------------------------------------------------------
 2057: 
 2058: /\w+\p{Po} \w+\p{Pc} \W+\p{Po} \W+\p{Pc} \w+\P{Po} \w+\P{Pc}/BWZx
 2059: ------------------------------------------------------------------
 2060:         Bra
 2061:         prop Xwd +
 2062:         prop Po
 2063:         prop Xwd ++
 2064:         prop Pc
 2065:         notprop Xwd +
 2066:         prop Po
 2067:         notprop Xwd +
 2068:         prop Pc
 2069:         prop Xwd +
 2070:         notprop Po
 2071:         prop Xwd +
 2072:         notprop Pc
 2073:         Ket
 2074:         End
 2075: ------------------------------------------------------------------
 2076: 
 2077: /\p{Nl}+\p{Xan} \P{Nl}+\p{Xan} \p{Nl}+\P{Xan} \P{Nl}+\P{Xan}/BWZx
 2078: ------------------------------------------------------------------
 2079:         Bra
 2080:         prop Nl +
 2081:         prop Xan
 2082:         notprop Nl +
 2083:         prop Xan
 2084:         prop Nl ++
 2085:         notprop Xan
 2086:         notprop Nl +
 2087:         notprop Xan
 2088:         Ket
 2089:         End
 2090: ------------------------------------------------------------------
 2091: 
 2092: /\p{Xan}+\p{Nl} \P{Xan}+\p{Nl} \p{Xan}+\P{Nl} \P{Xan}+\P{Nl}/BWZx
 2093: ------------------------------------------------------------------
 2094:         Bra
 2095:         prop Xan +
 2096:         prop Nl
 2097:         notprop Xan ++
 2098:         prop Nl
 2099:         prop Xan +
 2100:         notprop Nl
 2101:         notprop Xan +
 2102:         notprop Nl
 2103:         Ket
 2104:         End
 2105: ------------------------------------------------------------------
 2106: 
 2107: /\p{Xan}+\p{Nd} \P{Xan}+\p{Nd} \p{Xan}+\P{Nd} \P{Xan}+\P{Nd}/BWZx
 2108: ------------------------------------------------------------------
 2109:         Bra
 2110:         prop Xan +
 2111:         prop Nd
 2112:         notprop Xan ++
 2113:         prop Nd
 2114:         prop Xan +
 2115:         notprop Nd
 2116:         notprop Xan +
 2117:         notprop Nd
 2118:         Ket
 2119:         End
 2120: ------------------------------------------------------------------
 2121: 
 2122: /-- End auto-possessification tests --/ 
 2123: 
 2124: /\w+/8CWBZ
 2125: ------------------------------------------------------------------
 2126:         Bra
 2127:         Callout 255 0 3
 2128:         prop Xwd ++
 2129:         Callout 255 3 0
 2130:         Ket
 2131:         End
 2132: ------------------------------------------------------------------
 2133:     abcd
 2134: --->abcd
 2135:  +0 ^        \w+
 2136:  +3 ^   ^    
 2137:  0: abcd
 2138: 
 2139: /[\p{N}]?+/BZO
 2140: ------------------------------------------------------------------
 2141:         Bra
 2142:         [\p{N}]?+
 2143:         Ket
 2144:         End
 2145: ------------------------------------------------------------------
 2146: 
 2147: /[\p{L}ab]{2,3}+/BZO
 2148: ------------------------------------------------------------------
 2149:         Bra
 2150:         [ab\p{L}]{2,3}+
 2151:         Ket
 2152:         End
 2153: ------------------------------------------------------------------
 2154: 
 2155: /\D+\X \d+\X \S+\X \s+\X \W+\X \w+\X \C+\X \R+\X \H+\X \h+\X \V+\X \v+\X a+\X \n+\X .+\X/BZx
 2156: ------------------------------------------------------------------
 2157:         Bra
 2158:         \D+
 2159:         extuni
 2160:         \d+
 2161:         extuni
 2162:         \S+
 2163:         extuni
 2164:         \s+
 2165:         extuni
 2166:         \W+
 2167:         extuni
 2168:         \w+
 2169:         extuni
 2170:         AllAny+
 2171:         extuni
 2172:         \R+
 2173:         extuni
 2174:         \H+
 2175:         extuni
 2176:         \h+
 2177:         extuni
 2178:         \V+
 2179:         extuni
 2180:         \v+
 2181:         extuni
 2182:         a+
 2183:         extuni
 2184:         \x0a+
 2185:         extuni
 2186:         Any+
 2187:         extuni
 2188:         Ket
 2189:         End
 2190: ------------------------------------------------------------------
 2191: 
 2192: /.+\X/BZxs
 2193: ------------------------------------------------------------------
 2194:         Bra
 2195:         AllAny+
 2196:         extuni
 2197:         Ket
 2198:         End
 2199: ------------------------------------------------------------------
 2200: 
 2201: /\X+$/BZxm
 2202: ------------------------------------------------------------------
 2203:         Bra
 2204:         extuni+
 2205:      /m $
 2206:         Ket
 2207:         End
 2208: ------------------------------------------------------------------
 2209: 
 2210: /\X+\D \X+\d \X+\S \X+\s \X+\W \X+\w \X+. \X+\C \X+\R \X+\H \X+\h \X+\V \X+\v \X+\X \X+\Z \X+\z \X+$/BZx
 2211: ------------------------------------------------------------------
 2212:         Bra
 2213:         extuni+
 2214:         \D
 2215:         extuni+
 2216:         \d
 2217:         extuni+
 2218:         \S
 2219:         extuni+
 2220:         \s
 2221:         extuni+
 2222:         \W
 2223:         extuni+
 2224:         \w
 2225:         extuni+
 2226:         Any
 2227:         extuni+
 2228:         AllAny
 2229:         extuni+
 2230:         \R
 2231:         extuni+
 2232:         \H
 2233:         extuni+
 2234:         \h
 2235:         extuni+
 2236:         \V
 2237:         extuni+
 2238:         \v
 2239:         extuni+
 2240:         extuni
 2241:         extuni+
 2242:         \Z
 2243:         extuni++
 2244:         \z
 2245:         extuni+
 2246:         $
 2247:         Ket
 2248:         End
 2249: ------------------------------------------------------------------
 2250: 
 2251: /\d+\s{0,5}=\s*\S?=\w{0,4}\W*/8WBZ
 2252: ------------------------------------------------------------------
 2253:         Bra
 2254:         prop Nd ++
 2255:         prop Xsp {0,5}+
 2256:         =
 2257:         prop Xsp *+
 2258:         notprop Xsp ?
 2259:         =
 2260:         prop Xwd {0,4}+
 2261:         notprop Xwd *+
 2262:         Ket
 2263:         End
 2264: ------------------------------------------------------------------
 2265: 
 2266: /-- End of testinput7 --/

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