/[pcre]/code/trunk/testdata/testoutput2
ViewVC logotype

Diff of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 454 by ph10, Tue Sep 22 09:42:11 2009 UTC revision 455 by ph10, Sat Sep 26 19:12:32 2009 UTC
# Line 145  Capturing subpattern count = 0 Line 145  Capturing subpattern count = 0
145  No options  No options
146  No first char  No first char
147  No need char  No need char
148    Subject length lower bound = 3
149  Starting byte set: c d e  Starting byte set: c d e
150      this sentence eventually mentions a cat      this sentence eventually mentions a cat
151   0: cat   0: cat
# Line 156  Capturing subpattern count = 0 Line 157  Capturing subpattern count = 0
157  Options: caseless  Options: caseless
158  No first char  No first char
159  No need char  No need char
160    Subject length lower bound = 3
161  Starting byte set: C D E c d e  Starting byte set: C D E c d e
162      this sentence eventually mentions a CAT cat      this sentence eventually mentions a CAT cat
163   0: CAT   0: CAT
# Line 167  Capturing subpattern count = 0 Line 169  Capturing subpattern count = 0
169  No options  No options
170  No first char  No first char
171  No need char  No need char
172    Subject length lower bound = 1
173  Starting byte set: a b c d  Starting byte set: a b c d
174    
175  /(a|[^\dZ])/IS  /(a|[^\dZ])/IS
# Line 174  Capturing subpattern count = 1 Line 177  Capturing subpattern count = 1
177  No options  No options
178  No first char  No first char
179  No need char  No need char
180    Subject length lower bound = 1
181  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
182    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
183    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
# Line 194  Capturing subpattern count = 1 Line 198  Capturing subpattern count = 1
198  No options  No options
199  No first char  No first char
200  No need char  No need char
201    Subject length lower bound = 1
202  Starting byte set: \x09 \x0a \x0c \x0d \x20 a b  Starting byte set: \x09 \x0a \x0c \x0d \x20 a b
203    
204  /(ab\2)/  /(ab\2)/
# Line 527  Capturing subpattern count = 0 Line 532  Capturing subpattern count = 0
532  No options  No options
533  No first char  No first char
534  No need char  No need char
535    Subject length lower bound = 1
536  Starting byte set: a b c d  Starting byte set: a b c d
537    
538  /(?i)[abcd]/IS  /(?i)[abcd]/IS
# Line 534  Capturing subpattern count = 0 Line 540  Capturing subpattern count = 0
540  Options: caseless  Options: caseless
541  No first char  No first char
542  No need char  No need char
543    Subject length lower bound = 1
544  Starting byte set: A B C D a b c d  Starting byte set: A B C D a b c d
545    
546  /(?m)[xy]|(b|c)/IS  /(?m)[xy]|(b|c)/IS
# Line 541  Capturing subpattern count = 1 Line 548  Capturing subpattern count = 1
548  Options: multiline  Options: multiline
549  No first char  No first char
550  No need char  No need char
551    Subject length lower bound = 1
552  Starting byte set: b c x y  Starting byte set: b c x y
553    
554  /(^a|^b)/Im  /(^a|^b)/Im
# Line 605  Capturing subpattern count = 1 Line 613  Capturing subpattern count = 1
613  No options  No options
614  First char = 'b' (caseless)  First char = 'b' (caseless)
615  No need char  No need char
616  Study returned NULL  Subject length lower bound = 1
617    No set of starting bytes
618    
619  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
620  Capturing subpattern count = 1  Capturing subpattern count = 1
621  No options  No options
622  No first char  No first char
623  No need char  No need char
624    Subject length lower bound = 1
625  Starting byte set: C a b c d  Starting byte set: C a b c d
626    
627  /a$/I  /a$/I
# Line 676  Capturing subpattern count = 0 Line 686  Capturing subpattern count = 0
686  No options  No options
687  No first char  No first char
688  No need char  No need char
689    Subject length lower bound = 1
690  Starting byte set: a b  Starting byte set: a b
691    
692  /(?<!foo)(alpha|omega)/IS  /(?<!foo)(alpha|omega)/IS
# Line 683  Capturing subpattern count = 1 Line 694  Capturing subpattern count = 1
694  No options  No options
695  No first char  No first char
696  Need char = 'a'  Need char = 'a'
697    Subject length lower bound = 5
698  Starting byte set: a o  Starting byte set: a o
699    
700  /(?!alphabet)[ab]/IS  /(?!alphabet)[ab]/IS
# Line 690  Capturing subpattern count = 0 Line 702  Capturing subpattern count = 0
702  No options  No options
703  No first char  No first char
704  No need char  No need char
705    Subject length lower bound = 1
706  Starting byte set: a b  Starting byte set: a b
707    
708  /(?<=foo\n)^bar/Im  /(?<=foo\n)^bar/Im
# Line 1658  Capturing subpattern count = 0 Line 1671  Capturing subpattern count = 0
1671  Options: anchored  Options: anchored
1672  No first char  No first char
1673  Need char = 'd'  Need char = 'd'
1674  Study returned NULL  Subject length lower bound = 4
1675    No set of starting bytes
1676    
1677  /\(             # ( at start  /\(             # ( at start
1678    (?:           # Non-capturing bracket    (?:           # Non-capturing bracket
# Line 1890  Capturing subpattern count = 0 Line 1904  Capturing subpattern count = 0
1904  No options  No options
1905  No first char  No first char
1906  No need char  No need char
1907    Subject length lower bound = 1
1908  Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z  Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1909    _ a b c d e f g h i j k l m n o p q r s t u v w x y z    _ a b c d e f g h i j k l m n o p q r s t u v w x y z
1910    
# Line 1951  Contains explicit CR or LF match Line 1966  Contains explicit CR or LF match
1966  No options  No options
1967  No first char  No first char
1968  No need char  No need char
1969    Subject length lower bound = 1
1970  Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20  Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20
1971    
1972  /^[[:cntrl:]]/DZ  /^[[:cntrl:]]/DZ
# Line 3421  Capturing subpattern count = 0 Line 3437  Capturing subpattern count = 0
3437  No options  No options
3438  No first char  No first char
3439  No need char  No need char
3440    Subject length lower bound = 1
3441  Starting byte set: a b  Starting byte set: a b
3442    
3443  /[^a]/I  /[^a]/I
# Line 3440  Capturing subpattern count = 0 Line 3457  Capturing subpattern count = 0
3457  No options  No options
3458  No first char  No first char
3459  Need char = '6'  Need char = '6'
3460    Subject length lower bound = 4
3461  Starting byte set: 0 1 2 3 4 5 6 7 8 9  Starting byte set: 0 1 2 3 4 5 6 7 8 9
3462    
3463  /a^b/I  /a^b/I
# Line 3473  Capturing subpattern count = 0 Line 3491  Capturing subpattern count = 0
3491  Options: caseless  Options: caseless
3492  No first char  No first char
3493  No need char  No need char
3494    Subject length lower bound = 1
3495  Starting byte set: A B a b  Starting byte set: A B a b
3496    
3497  /[ab](?i)cd/IS  /[ab](?i)cd/IS
# Line 3480  Capturing subpattern count = 0 Line 3499  Capturing subpattern count = 0
3499  No options  No options
3500  No first char  No first char
3501  Need char = 'd' (caseless)  Need char = 'd' (caseless)
3502    Subject length lower bound = 3
3503  Starting byte set: a b  Starting byte set: a b
3504    
3505  /abc(?C)def/I  /abc(?C)def/I
# Line 3830  Capturing subpattern count = 0 Line 3850  Capturing subpattern count = 0
3850  No options  No options
3851  No first char  No first char
3852  No need char  No need char
3853    Subject length lower bound = 1
3854  Starting byte set: a b  Starting byte set: a b
3855    
3856  /(?R)/I  /(?R)/I
# Line 4614  Capturing subpattern count = 3 Line 4635  Capturing subpattern count = 3
4635  Options: caseless  Options: caseless
4636  No first char  No first char
4637  Need char = 'g' (caseless)  Need char = 'g' (caseless)
4638  Study returned NULL  Subject length lower bound = 8
4639    No set of starting bytes
4640       Baby Bjorn Active Carrier - With free SHIPPING!!       Baby Bjorn Active Carrier - With free SHIPPING!!
4641   0: Baby Bjorn Active Carrier - With free SHIPPING!!   0: Baby Bjorn Active Carrier - With free SHIPPING!!
4642   1: Baby Bjorn Active Carrier - With free SHIPPING!!   1: Baby Bjorn Active Carrier - With free SHIPPING!!
# Line 4632  Capturing subpattern count = 0 Line 4654  Capturing subpattern count = 0
4654  No options  No options
4655  No first char  No first char
4656  Need char = 'b'  Need char = 'b'
4657  Study returned NULL  Subject length lower bound = 1
4658    No set of starting bytes
4659    
4660  /(a|b)*.?c/ISDZ  /(a|b)*.?c/ISDZ
4661  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4652  Capturing subpattern count = 1 Line 4675  Capturing subpattern count = 1
4675  No options  No options
4676  No first char  No first char
4677  Need char = 'c'  Need char = 'c'
4678  Study returned NULL  Subject length lower bound = 1
4679    No set of starting bytes
4680    
4681  /abc(?C255)de(?C)f/DZ  /abc(?C255)de(?C)f/DZ
4682  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 5435  Capturing subpattern count = 1 Line 5459  Capturing subpattern count = 1
5459  No options  No options
5460  No first char  No first char
5461  No need char  No need char
5462    Subject length lower bound = 1
5463  Starting byte set: a b  Starting byte set: a b
5464  Compiled regex written to testsavedregex  Compiled regex written to testsavedregex
5465  Study data written to testsavedregex  Study data written to testsavedregex
# Line 5455  Capturing subpattern count = 1 Line 5480  Capturing subpattern count = 1
5480  No options  No options
5481  No first char  No first char
5482  No need char  No need char
5483    Subject length lower bound = 1
5484  Starting byte set: a b  Starting byte set: a b
5485  Compiled regex written to testsavedregex  Compiled regex written to testsavedregex
5486  Study data written to testsavedregex  Study data written to testsavedregex
# Line 6167  Capturing subpattern count = 0 Line 6193  Capturing subpattern count = 0
6193  No options  No options
6194  No first char  No first char
6195  Need char = ','  Need char = ','
6196    Subject length lower bound = 1
6197  Starting byte set: \x09 \x0a \x0c \x0d \x20 ,  Starting byte set: \x09 \x0a \x0c \x0d \x20 ,
6198      \x0b,\x0b      \x0b,\x0b
6199   0: ,   0: ,
# Line 6471  Capturing subpattern count = 1 Line 6498  Capturing subpattern count = 1
6498  No options  No options
6499  No first char  No first char
6500  No need char  No need char
6501    Subject length lower bound = 1
6502  Starting byte set: C a b c d  Starting byte set: C a b c d
6503    
6504  /()[ab]xyz/IS  /()[ab]xyz/IS
# Line 6478  Capturing subpattern count = 1 Line 6506  Capturing subpattern count = 1
6506  No options  No options
6507  No first char  No first char
6508  Need char = 'z'  Need char = 'z'
6509    Subject length lower bound = 4
6510  Starting byte set: a b  Starting byte set: a b
6511    
6512  /(|)[ab]xyz/IS  /(|)[ab]xyz/IS
# Line 6485  Capturing subpattern count = 1 Line 6514  Capturing subpattern count = 1
6514  No options  No options
6515  No first char  No first char
6516  Need char = 'z'  Need char = 'z'
6517    Subject length lower bound = 4
6518  Starting byte set: a b  Starting byte set: a b
6519    
6520  /(|c)[ab]xyz/IS  /(|c)[ab]xyz/IS
# Line 6492  Capturing subpattern count = 1 Line 6522  Capturing subpattern count = 1
6522  No options  No options
6523  No first char  No first char
6524  Need char = 'z'  Need char = 'z'
6525    Subject length lower bound = 4
6526  Starting byte set: a b c  Starting byte set: a b c
6527    
6528  /(|c?)[ab]xyz/IS  /(|c?)[ab]xyz/IS
# Line 6499  Capturing subpattern count = 1 Line 6530  Capturing subpattern count = 1
6530  No options  No options
6531  No first char  No first char
6532  Need char = 'z'  Need char = 'z'
6533    Subject length lower bound = 4
6534  Starting byte set: a b c  Starting byte set: a b c
6535    
6536  /(d?|c?)[ab]xyz/IS  /(d?|c?)[ab]xyz/IS
# Line 6506  Capturing subpattern count = 1 Line 6538  Capturing subpattern count = 1
6538  No options  No options
6539  No first char  No first char
6540  Need char = 'z'  Need char = 'z'
6541    Subject length lower bound = 4
6542  Starting byte set: a b c d  Starting byte set: a b c d
6543    
6544  /(d?|c)[ab]xyz/IS  /(d?|c)[ab]xyz/IS
# Line 6513  Capturing subpattern count = 1 Line 6546  Capturing subpattern count = 1
6546  No options  No options
6547  No first char  No first char
6548  Need char = 'z'  Need char = 'z'
6549    Subject length lower bound = 4
6550  Starting byte set: a b c d  Starting byte set: a b c d
6551    
6552  /^a*b\d/DZ  /^a*b\d/DZ
# Line 6605  Capturing subpattern count = 1 Line 6639  Capturing subpattern count = 1
6639  No options  No options
6640  No first char  No first char
6641  No need char  No need char
6642    Subject length lower bound = 1
6643  Starting byte set: a b c d  Starting byte set: a b c d
6644    
6645  /(a+|b*)[cd]/IS  /(a+|b*)[cd]/IS
# Line 6612  Capturing subpattern count = 1 Line 6647  Capturing subpattern count = 1
6647  No options  No options
6648  No first char  No first char
6649  No need char  No need char
6650    Subject length lower bound = 1
6651  Starting byte set: a b c d  Starting byte set: a b c d
6652    
6653  /(a*|b+)[cd]/IS  /(a*|b+)[cd]/IS
# Line 6619  Capturing subpattern count = 1 Line 6655  Capturing subpattern count = 1
6655  No options  No options
6656  No first char  No first char
6657  No need char  No need char
6658    Subject length lower bound = 1
6659  Starting byte set: a b c d  Starting byte set: a b c d
6660    
6661  /(a+|b+)[cd]/IS  /(a+|b+)[cd]/IS
# Line 6626  Capturing subpattern count = 1 Line 6663  Capturing subpattern count = 1
6663  No options  No options
6664  No first char  No first char
6665  No need char  No need char
6666    Subject length lower bound = 2
6667  Starting byte set: a b  Starting byte set: a b
6668    
6669  /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((  /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
# Line 9069  Capturing subpattern count = 1 Line 9107  Capturing subpattern count = 1
9107  No options  No options
9108  No first char  No first char
9109  No need char  No need char
9110    Subject length lower bound = 1
9111  Starting byte set: x y z  Starting byte set: x y z
9112    
9113  /(?(?=.*b)b|^)/CI  /(?(?=.*b)b|^)/CI
# Line 9838  Failed: reference to non-existent subpat Line 9877  Failed: reference to non-existent subpat
9877  /(?<=b(?1))xyz(b+)pqrstuvew/  /(?<=b(?1))xyz(b+)pqrstuvew/
9878  Failed: lookbehind assertion is not fixed length at offset 26  Failed: lookbehind assertion is not fixed length at offset 26
9879    
9880    /(a|bc)\1/SI
9881    Capturing subpattern count = 1
9882    Max back reference = 1
9883    No options
9884    No first char
9885    No need char
9886    Subject length lower bound = 2
9887    Starting byte set: a b
9888    
9889    /(a|bc)\1{2,3}/SI
9890    Capturing subpattern count = 1
9891    Max back reference = 1
9892    No options
9893    No first char
9894    No need char
9895    Subject length lower bound = 3
9896    Starting byte set: a b
9897    
9898    /(a|bc)(?1)/SI
9899    Capturing subpattern count = 1
9900    No options
9901    No first char
9902    No need char
9903    Subject length lower bound = 2
9904    Starting byte set: a b
9905    
9906    /(a|b\1)(a|b\1)/SI
9907    Capturing subpattern count = 2
9908    Max back reference = 1
9909    No options
9910    No first char
9911    No need char
9912    Subject length lower bound = 2
9913    Starting byte set: a b
9914    
9915    /(a|b\1){2}/SI
9916    Capturing subpattern count = 1
9917    Max back reference = 1
9918    No options
9919    No first char
9920    No need char
9921    Subject length lower bound = 2
9922    Starting byte set: a b
9923    
9924    /(a|bbbb\1)(a|bbbb\1)/SI
9925    Capturing subpattern count = 2
9926    Max back reference = 1
9927    No options
9928    No first char
9929    No need char
9930    Subject length lower bound = 2
9931    Starting byte set: a b
9932    
9933    /(a|bbbb\1){2}/SI
9934    Capturing subpattern count = 1
9935    Max back reference = 1
9936    No options
9937    No first char
9938    No need char
9939    Subject length lower bound = 2
9940    Starting byte set: a b
9941    
9942    /^From +([^ ]+) +[a-zA-Z][a-zA-Z][a-zA-Z] +[a-zA-Z][a-zA-Z][a-zA-Z] +[0-9]?[0-9] +[0-9][0-9]:[0-9][0-9]/SI
9943    Capturing subpattern count = 1
9944    Options: anchored
9945    No first char
9946    Need char = ':'
9947    Subject length lower bound = 22
9948    No set of starting bytes
9949    
9950    /  (?: [\040\t] |  \(
9951    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9952    \)  )*                          # optional leading comment
9953    (?:    (?:
9954    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
9955    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
9956    |
9957    " (?:                      # opening quote...
9958    [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
9959    |                     #    or
9960    \\ [^\x80-\xff]           #   Escaped something (something != CR)
9961    )* "  # closing quote
9962    )                    # initial word
9963    (?:  (?: [\040\t] |  \(
9964    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9965    \)  )*  \.  (?: [\040\t] |  \(
9966    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9967    \)  )*   (?:
9968    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
9969    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
9970    |
9971    " (?:                      # opening quote...
9972    [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
9973    |                     #    or
9974    \\ [^\x80-\xff]           #   Escaped something (something != CR)
9975    )* "  # closing quote
9976    )  )* # further okay, if led by a period
9977    (?: [\040\t] |  \(
9978    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9979    \)  )*  @  (?: [\040\t] |  \(
9980    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9981    \)  )*    (?:
9982    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
9983    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
9984    |   \[                         # [
9985    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
9986    \]                        #           ]
9987    )                           # initial subdomain
9988    (?:                                  #
9989    (?: [\040\t] |  \(
9990    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9991    \)  )*  \.                        # if led by a period...
9992    (?: [\040\t] |  \(
9993    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
9994    \)  )*   (?:
9995    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
9996    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
9997    |   \[                         # [
9998    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
9999    \]                        #           ]
10000    )                     #   ...further okay
10001    )*
10002    # address
10003    |                     #  or
10004    (?:
10005    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10006    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10007    |
10008    " (?:                      # opening quote...
10009    [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
10010    |                     #    or
10011    \\ [^\x80-\xff]           #   Escaped something (something != CR)
10012    )* "  # closing quote
10013    )             # one word, optionally followed by....
10014    (?:
10015    [^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037]  |  # atom and space parts, or...
10016    \(
10017    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10018    \)       |  # comments, or...
10019    
10020    " (?:                      # opening quote...
10021    [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
10022    |                     #    or
10023    \\ [^\x80-\xff]           #   Escaped something (something != CR)
10024    )* "  # closing quote
10025    # quoted strings
10026    )*
10027    <  (?: [\040\t] |  \(
10028    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10029    \)  )*                     # leading <
10030    (?:  @  (?: [\040\t] |  \(
10031    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10032    \)  )*    (?:
10033    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10034    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10035    |   \[                         # [
10036    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
10037    \]                        #           ]
10038    )                           # initial subdomain
10039    (?:                                  #
10040    (?: [\040\t] |  \(
10041    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10042    \)  )*  \.                        # if led by a period...
10043    (?: [\040\t] |  \(
10044    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10045    \)  )*   (?:
10046    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10047    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10048    |   \[                         # [
10049    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
10050    \]                        #           ]
10051    )                     #   ...further okay
10052    )*
10053    
10054    (?:  (?: [\040\t] |  \(
10055    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10056    \)  )*  ,  (?: [\040\t] |  \(
10057    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10058    \)  )*  @  (?: [\040\t] |  \(
10059    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10060    \)  )*    (?:
10061    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10062    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10063    |   \[                         # [
10064    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
10065    \]                        #           ]
10066    )                           # initial subdomain
10067    (?:                                  #
10068    (?: [\040\t] |  \(
10069    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10070    \)  )*  \.                        # if led by a period...
10071    (?: [\040\t] |  \(
10072    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10073    \)  )*   (?:
10074    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10075    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10076    |   \[                         # [
10077    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
10078    \]                        #           ]
10079    )                     #   ...further okay
10080    )*
10081    )* # further okay, if led by comma
10082    :                                # closing colon
10083    (?: [\040\t] |  \(
10084    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10085    \)  )*  )? #       optional route
10086    (?:
10087    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10088    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10089    |
10090    " (?:                      # opening quote...
10091    [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
10092    |                     #    or
10093    \\ [^\x80-\xff]           #   Escaped something (something != CR)
10094    )* "  # closing quote
10095    )                    # initial word
10096    (?:  (?: [\040\t] |  \(
10097    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10098    \)  )*  \.  (?: [\040\t] |  \(
10099    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10100    \)  )*   (?:
10101    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10102    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10103    |
10104    " (?:                      # opening quote...
10105    [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
10106    |                     #    or
10107    \\ [^\x80-\xff]           #   Escaped something (something != CR)
10108    )* "  # closing quote
10109    )  )* # further okay, if led by a period
10110    (?: [\040\t] |  \(
10111    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10112    \)  )*  @  (?: [\040\t] |  \(
10113    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10114    \)  )*    (?:
10115    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10116    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10117    |   \[                         # [
10118    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
10119    \]                        #           ]
10120    )                           # initial subdomain
10121    (?:                                  #
10122    (?: [\040\t] |  \(
10123    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10124    \)  )*  \.                        # if led by a period...
10125    (?: [\040\t] |  \(
10126    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10127    \)  )*   (?:
10128    [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
10129    (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
10130    |   \[                         # [
10131    (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
10132    \]                        #           ]
10133    )                     #   ...further okay
10134    )*
10135    #       address spec
10136    (?: [\040\t] |  \(
10137    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10138    \)  )*  > #                  trailing >
10139    # name and address
10140    )  (?: [\040\t] |  \(
10141    (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
10142    \)  )*                       # optional trailing comment
10143    /xSI
10144    Capturing subpattern count = 0
10145    Contains explicit CR or LF match
10146    Options: extended
10147    No first char
10148    No need char
10149    Subject length lower bound = 3
10150    Starting byte set: \x09 \x20 ! " # $ % & ' ( * + - / 0 1 2 3 4 5 6 7 8
10151      9 = ? A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ^ _ ` a b c d e
10152      f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f
10153    
10154    /<tr([\w\W\s\d][^<>]{0,})><TD([\w\W\s\d][^<>]{0,})>([\d]{0,}\.)(.*)((<BR>([\w\W\s\d][^<>]{0,})|[\s]{0,}))<\/a><\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><\/TR>/isIS
10155    Capturing subpattern count = 11
10156    Options: caseless dotall
10157    First char = '<'
10158    Need char = '>'
10159    Subject length lower bound = 47
10160    No set of starting bytes
10161    
10162    "(?>.*/)foo"SI
10163    Capturing subpattern count = 0
10164    No options
10165    First char at start or follows newline
10166    Need char = 'o'
10167    Subject length lower bound = 4
10168    No set of starting bytes
10169    
10170    /(?(?=[^a-z]+[a-z])  \d{2}-[a-z]{3}-\d{2}  |  \d{2}-\d{2}-\d{2} ) /xSI
10171    Capturing subpattern count = 0
10172    Options: extended
10173    No first char
10174    Need char = '-'
10175    Subject length lower bound = 8
10176    No set of starting bytes
10177    
10178    /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/iSI
10179    Capturing subpattern count = 1
10180    Options: caseless
10181    No first char
10182    No need char
10183    Subject length lower bound = 1
10184    Starting byte set: A B C a b c
10185    
10186    /(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/SI
10187    Capturing subpattern count = 0
10188    No options
10189    No first char
10190    Need char = 'b'
10191    Subject length lower bound = 41
10192    Starting byte set: c d
10193    
10194    /<a[\s]+href[\s]*=[\s]*          # find <a href=
10195     ([\"\'])?                       # find single or double quote
10196     (?(1) (.*?)\1 | ([^\s]+))       # if quote found, match up to next matching
10197                                     # quote, otherwise match up to next space
10198    /isxSI
10199    Capturing subpattern count = 3
10200    Max back reference = 1
10201    Options: caseless extended dotall
10202    First char = '<'
10203    Need char = '='
10204    Subject length lower bound = 9
10205    No set of starting bytes
10206    
10207    /^(?!:)                       # colon disallowed at start
10208      (?:                         # start of item
10209        (?: [0-9a-f]{1,4} |       # 1-4 hex digits or
10210        (?(1)0 | () ) )           # if null previously matched, fail; else null
10211        :                         # followed by colon
10212      ){1,7}                      # end item; 1-7 of them required
10213      [0-9a-f]{1,4} $             # final hex number at end of string
10214      (?(1)|.)                    # check that there was an empty component
10215      /xiIS
10216    Capturing subpattern count = 1
10217    Options: anchored caseless extended
10218    No first char
10219    Need char = ':'
10220    Subject length lower bound = 2
10221    No set of starting bytes
10222    
10223  /-- End of testinput2 --/  /-- End of testinput2 --/

Legend:
Removed from v.454  
changed lines
  Added in v.455

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12