Annotation of embedaddon/pcre/testdata/testinput17, revision 1.1

1.1     ! misho       1: /-- This set of tests is for the 16-bit library's basic (non-UTF-16) features 
        !             2:     that are not compatible with the 8-bit library, or which give different 
        !             3:     output in 16-bit mode. --/
        !             4: 
        !             5: /a\Cb/
        !             6:     aXb
        !             7:     a\nb
        !             8:   
        !             9: /-- Check maximum non-UTF character size --/
        !            10: 
        !            11: /\x{ffff}/
        !            12:     A\x{ffff}B
        !            13: 
        !            14: /\x{10000}/ 
        !            15: 
        !            16: /[^\x{c4}]/DZ
        !            17: 
        !            18:   
        !            19: /\x{100}/I
        !            20: 
        !            21: /  (?: [\040\t] |  \(
        !            22: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            23: \)  )*                          # optional leading comment
        !            24: (?:    (?:
        !            25: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !            26: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !            27: |
        !            28: " (?:                      # opening quote...
        !            29: [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
        !            30: |                     #    or
        !            31: \\ [^\x80-\xff]           #   Escaped something (something != CR)
        !            32: )* "  # closing quote
        !            33: )                    # initial word
        !            34: (?:  (?: [\040\t] |  \(
        !            35: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            36: \)  )*  \.  (?: [\040\t] |  \(
        !            37: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            38: \)  )*   (?:
        !            39: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !            40: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !            41: |
        !            42: " (?:                      # opening quote...
        !            43: [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
        !            44: |                     #    or
        !            45: \\ [^\x80-\xff]           #   Escaped something (something != CR)
        !            46: )* "  # closing quote
        !            47: )  )* # further okay, if led by a period
        !            48: (?: [\040\t] |  \(
        !            49: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            50: \)  )*  @  (?: [\040\t] |  \(
        !            51: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            52: \)  )*    (?:
        !            53: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !            54: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !            55: |   \[                         # [
        !            56: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !            57: \]                        #           ]
        !            58: )                           # initial subdomain
        !            59: (?:                                  #
        !            60: (?: [\040\t] |  \(
        !            61: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            62: \)  )*  \.                        # if led by a period...
        !            63: (?: [\040\t] |  \(
        !            64: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            65: \)  )*   (?:
        !            66: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !            67: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !            68: |   \[                         # [
        !            69: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !            70: \]                        #           ]
        !            71: )                     #   ...further okay
        !            72: )*
        !            73: # address
        !            74: |                     #  or
        !            75: (?:
        !            76: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !            77: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !            78: |
        !            79: " (?:                      # opening quote...
        !            80: [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
        !            81: |                     #    or
        !            82: \\ [^\x80-\xff]           #   Escaped something (something != CR)
        !            83: )* "  # closing quote
        !            84: )             # one word, optionally followed by....
        !            85: (?:
        !            86: [^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037]  |  # atom and space parts, or...
        !            87: \(
        !            88: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !            89: \)       |  # comments, or...
        !            90: 
        !            91: " (?:                      # opening quote...
        !            92: [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
        !            93: |                     #    or
        !            94: \\ [^\x80-\xff]           #   Escaped something (something != CR)
        !            95: )* "  # closing quote
        !            96: # quoted strings
        !            97: )*
        !            98: <  (?: [\040\t] |  \(
        !            99: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           100: \)  )*                     # leading <
        !           101: (?:  @  (?: [\040\t] |  \(
        !           102: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           103: \)  )*    (?:
        !           104: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           105: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           106: |   \[                         # [
        !           107: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !           108: \]                        #           ]
        !           109: )                           # initial subdomain
        !           110: (?:                                  #
        !           111: (?: [\040\t] |  \(
        !           112: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           113: \)  )*  \.                        # if led by a period...
        !           114: (?: [\040\t] |  \(
        !           115: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           116: \)  )*   (?:
        !           117: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           118: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           119: |   \[                         # [
        !           120: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !           121: \]                        #           ]
        !           122: )                     #   ...further okay
        !           123: )*
        !           124: 
        !           125: (?:  (?: [\040\t] |  \(
        !           126: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           127: \)  )*  ,  (?: [\040\t] |  \(
        !           128: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           129: \)  )*  @  (?: [\040\t] |  \(
        !           130: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           131: \)  )*    (?:
        !           132: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           133: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           134: |   \[                         # [
        !           135: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !           136: \]                        #           ]
        !           137: )                           # initial subdomain
        !           138: (?:                                  #
        !           139: (?: [\040\t] |  \(
        !           140: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           141: \)  )*  \.                        # if led by a period...
        !           142: (?: [\040\t] |  \(
        !           143: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           144: \)  )*   (?:
        !           145: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           146: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           147: |   \[                         # [
        !           148: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !           149: \]                        #           ]
        !           150: )                     #   ...further okay
        !           151: )*
        !           152: )* # further okay, if led by comma
        !           153: :                                # closing colon
        !           154: (?: [\040\t] |  \(
        !           155: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           156: \)  )*  )? #       optional route
        !           157: (?:
        !           158: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           159: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           160: |
        !           161: " (?:                      # opening quote...
        !           162: [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
        !           163: |                     #    or
        !           164: \\ [^\x80-\xff]           #   Escaped something (something != CR)
        !           165: )* "  # closing quote
        !           166: )                    # initial word
        !           167: (?:  (?: [\040\t] |  \(
        !           168: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           169: \)  )*  \.  (?: [\040\t] |  \(
        !           170: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           171: \)  )*   (?:
        !           172: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           173: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           174: |
        !           175: " (?:                      # opening quote...
        !           176: [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
        !           177: |                     #    or
        !           178: \\ [^\x80-\xff]           #   Escaped something (something != CR)
        !           179: )* "  # closing quote
        !           180: )  )* # further okay, if led by a period
        !           181: (?: [\040\t] |  \(
        !           182: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           183: \)  )*  @  (?: [\040\t] |  \(
        !           184: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           185: \)  )*    (?:
        !           186: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           187: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           188: |   \[                         # [
        !           189: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !           190: \]                        #           ]
        !           191: )                           # initial subdomain
        !           192: (?:                                  #
        !           193: (?: [\040\t] |  \(
        !           194: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           195: \)  )*  \.                        # if led by a period...
        !           196: (?: [\040\t] |  \(
        !           197: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           198: \)  )*   (?:
        !           199: [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
        !           200: (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
        !           201: |   \[                         # [
        !           202: (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
        !           203: \]                        #           ]
        !           204: )                     #   ...further okay
        !           205: )*
        !           206: #       address spec
        !           207: (?: [\040\t] |  \(
        !           208: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           209: \)  )*  > #                  trailing >
        !           210: # name and address
        !           211: )  (?: [\040\t] |  \(
        !           212: (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
        !           213: \)  )*                       # optional trailing comment
        !           214: /xSI
        !           215: 
        !           216: /[\h]/BZ
        !           217:     >\x09<
        !           218: 
        !           219: /[\h]+/BZ
        !           220:     >\x09\x20\xa0<
        !           221: 
        !           222: /[\v]/BZ
        !           223: 
        !           224: /[\H]/BZ
        !           225: 
        !           226: /[^\h]/BZ
        !           227: 
        !           228: /[\V]/BZ
        !           229: 
        !           230: /[\x0a\V]/BZ
        !           231: 
        !           232: /\h+/SI
        !           233:     \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
        !           234:     \x{3001}\x{2fff}\x{200a}\xa0\x{2000}
        !           235: 
        !           236: /[\h\x{dc00}]+/BZSI
        !           237:     \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
        !           238:     \x{3001}\x{2fff}\x{200a}\xa0\x{2000}
        !           239: 
        !           240: /\H+/SI
        !           241:     \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
        !           242:     \x{2000}\x{200a}\x{1fff}\x{200b}
        !           243:     \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
        !           244:     \xa0\x{3000}\x9f\xa1\x{2fff}\x{3001}
        !           245: 
        !           246: /[\H\x{d800}]+/BZSI
        !           247:     \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
        !           248:     \x{2000}\x{200a}\x{1fff}\x{200b}
        !           249:     \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
        !           250:     \xa0\x{3000}\x9f\xa1\x{2fff}\x{3001}
        !           251: 
        !           252: /\v+/SI
        !           253:     \x{2027}\x{2030}\x{2028}\x{2029}
        !           254:     \x09\x0e\x84\x86\x85\x0a\x0b\x0c\x0d
        !           255: 
        !           256: /[\v\x{dc00}]+/BZSI
        !           257:     \x{2027}\x{2030}\x{2028}\x{2029}
        !           258:     \x09\x0e\x84\x86\x85\x0a\x0b\x0c\x0d
        !           259: 
        !           260: /\V+/SI
        !           261:     \x{2028}\x{2029}\x{2027}\x{2030}
        !           262:     \x85\x0a\x0b\x0c\x0d\x09\x0e\x84\x86
        !           263: 
        !           264: /[\V\x{d800}]+/BZSI
        !           265:     \x{2028}\x{2029}\x{2027}\x{2030}
        !           266:     \x85\x0a\x0b\x0c\x0d\x09\x0e\x84\x86
        !           267: 
        !           268: /\R+/SI<bsr_unicode>
        !           269:     \x{2027}\x{2030}\x{2028}\x{2029}
        !           270:     \x09\x0e\x84\x86\x85\x0a\x0b\x0c\x0d
        !           271: 
        !           272: /\x{d800}\x{d7ff}\x{dc00}\x{dc00}\x{dcff}\x{dd00}/I
        !           273:     \x{d800}\x{d7ff}\x{dc00}\x{dc00}\x{dcff}\x{dd00}
        !           274: 
        !           275: /-- End of testinput17 --/

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