github.com/hlts2/go@v0.0.0-20170904000733-812b34efaed8/src/regexp/testdata/basic.dat (about) 1 NOTE all standard compliant implementations should pass these : 2002-05-31 2 3 BE abracadabra$ abracadabracadabra (7,18) 4 BE a...b abababbb (2,7) 5 BE XXXXXX ..XXXXXX (2,8) 6 E \) () (1,2) 7 BE a] a]a (0,2) 8 B } } (0,1) 9 E \} } (0,1) 10 BE \] ] (0,1) 11 B ] ] (0,1) 12 E ] ] (0,1) 13 B { { (0,1) 14 B } } (0,1) 15 BE ^a ax (0,1) 16 BE \^a a^a (1,3) 17 BE a\^ a^ (0,2) 18 BE a$ aa (1,2) 19 BE a\$ a$ (0,2) 20 BE ^$ NULL (0,0) 21 E $^ NULL (0,0) 22 E a($) aa (1,2)(2,2) 23 E a*(^a) aa (0,1)(0,1) 24 E (..)*(...)* a (0,0) 25 E (..)*(...)* abcd (0,4)(2,4) 26 E (ab|a)(bc|c) abc (0,3)(0,2)(2,3) 27 E (ab)c|abc abc (0,3)(0,2) 28 E a{0}b ab (1,2) 29 E (a*)(b?)(b+)b{3} aaabbbbbbb (0,10)(0,3)(3,4)(4,7) 30 E (a*)(b{0,1})(b{1,})b{3} aaabbbbbbb (0,10)(0,3)(3,4)(4,7) 31 E a{9876543210} NULL BADBR 32 E ((a|a)|a) a (0,1)(0,1)(0,1) 33 E (a*)(a|aa) aaaa (0,4)(0,3)(3,4) 34 E a*(a.|aa) aaaa (0,4)(2,4) 35 E a(b)|c(d)|a(e)f aef (0,3)(?,?)(?,?)(1,2) 36 E (a|b)?.* b (0,1)(0,1) 37 E (a|b)c|a(b|c) ac (0,2)(0,1) 38 E (a|b)c|a(b|c) ab (0,2)(?,?)(1,2) 39 E (a|b)*c|(a|ab)*c abc (0,3)(1,2) 40 E (a|b)*c|(a|ab)*c xc (1,2) 41 E (.a|.b).*|.*(.a|.b) xa (0,2)(0,2) 42 E a?(ab|ba)ab abab (0,4)(0,2) 43 E a?(ac{0}b|ba)ab abab (0,4)(0,2) 44 E ab|abab abbabab (0,2) 45 E aba|bab|bba baaabbbaba (5,8) 46 E aba|bab baaabbbaba (6,9) 47 E (aa|aaa)*|(a|aaaaa) aa (0,2)(0,2) 48 E (a.|.a.)*|(a|.a...) aa (0,2)(0,2) 49 E ab|a xabc (1,3) 50 E ab|a xxabc (2,4) 51 Ei (Ab|cD)* aBcD (0,4)(2,4) 52 BE [^-] --a (2,3) 53 BE [a-]* --a (0,3) 54 BE [a-m-]* --amoma-- (0,4) 55 E :::1:::0:|:::1:1:0: :::0:::1:::1:::0: (8,17) 56 E :::1:::0:|:::1:1:1: :::0:::1:::1:::0: (8,17) 57 {E [[:upper:]] A (0,1) [[<element>]] not supported 58 E [[:lower:]]+ `az{ (1,3) 59 E [[:upper:]]+ @AZ[ (1,3) 60 # No collation in Go 61 #BE [[-]] [[-]] (2,4) 62 #BE [[.NIL.]] NULL ECOLLATE 63 #BE [[=aleph=]] NULL ECOLLATE 64 } 65 BE$ \n \n (0,1) 66 BEn$ \n \n (0,1) 67 BE$ [^a] \n (0,1) 68 BE$ \na \na (0,2) 69 E (a)(b)(c) abc (0,3)(0,1)(1,2)(2,3) 70 BE xxx xxx (0,3) 71 E1 (^|[ (,;])((([Ff]eb[^ ]* *|0*2/|\* */?)0*[6-7]))([^0-9]|$) feb 6, (0,6) 72 E1 (^|[ (,;])((([Ff]eb[^ ]* *|0*2/|\* */?)0*[6-7]))([^0-9]|$) 2/7 (0,3) 73 E1 (^|[ (,;])((([Ff]eb[^ ]* *|0*2/|\* */?)0*[6-7]))([^0-9]|$) feb 1,Feb 6 (5,11) 74 E3 ((((((((((((((((((((((((((((((x)))))))))))))))))))))))))))))) x (0,1)(0,1)(0,1) 75 E3 ((((((((((((((((((((((((((((((x))))))))))))))))))))))))))))))* xx (0,2)(1,2)(1,2) 76 E a?(ab|ba)* ababababababababababababababababababababababababababababababababababababababababa (0,81)(79,81) 77 E abaa|abbaa|abbbaa|abbbbaa ababbabbbabbbabbbbabbbbaa (18,25) 78 E abaa|abbaa|abbbaa|abbbbaa ababbabbbabbbabbbbabaa (18,22) 79 E aaac|aabc|abac|abbc|baac|babc|bbac|bbbc baaabbbabac (7,11) 80 BE$ .* \x01\xff (0,2) 81 E aaaa|bbbb|cccc|ddddd|eeeeee|fffffff|gggg|hhhh|iiiii|jjjjj|kkkkk|llll XaaaXbbbXcccXdddXeeeXfffXgggXhhhXiiiXjjjXkkkXlllXcbaXaaaa (53,57) 82 L aaaa\nbbbb\ncccc\nddddd\neeeeee\nfffffff\ngggg\nhhhh\niiiii\njjjjj\nkkkkk\nllll XaaaXbbbXcccXdddXeeeXfffXgggXhhhXiiiXjjjXkkkXlllXcbaXaaaa NOMATCH 83 E a*a*a*a*a*b aaaaaaaaab (0,10) 84 BE ^ NULL (0,0) 85 BE $ NULL (0,0) 86 BE ^$ NULL (0,0) 87 BE ^a$ a (0,1) 88 BE abc abc (0,3) 89 BE abc xabcy (1,4) 90 BE abc ababc (2,5) 91 BE ab*c abc (0,3) 92 BE ab*bc abc (0,3) 93 BE ab*bc abbc (0,4) 94 BE ab*bc abbbbc (0,6) 95 E ab+bc abbc (0,4) 96 E ab+bc abbbbc (0,6) 97 E ab?bc abbc (0,4) 98 E ab?bc abc (0,3) 99 E ab?c abc (0,3) 100 BE ^abc$ abc (0,3) 101 BE ^abc abcc (0,3) 102 BE abc$ aabc (1,4) 103 BE ^ abc (0,0) 104 BE $ abc (3,3) 105 BE a.c abc (0,3) 106 BE a.c axc (0,3) 107 BE a.*c axyzc (0,5) 108 BE a[bc]d abd (0,3) 109 BE a[b-d]e ace (0,3) 110 BE a[b-d] aac (1,3) 111 BE a[-b] a- (0,2) 112 BE a[b-] a- (0,2) 113 BE a] a] (0,2) 114 BE a[]]b a]b (0,3) 115 BE a[^bc]d aed (0,3) 116 BE a[^-b]c adc (0,3) 117 BE a[^]b]c adc (0,3) 118 E ab|cd abc (0,2) 119 E ab|cd abcd (0,2) 120 E a\(b a(b (0,3) 121 E a\(*b ab (0,2) 122 E a\(*b a((b (0,4) 123 E ((a)) abc (0,1)(0,1)(0,1) 124 E (a)b(c) abc (0,3)(0,1)(2,3) 125 E a+b+c aabbabc (4,7) 126 E a* aaa (0,3) 127 #E (a*)* - (0,0)(0,0) 128 E (a*)* - (0,0)(?,?) RE2/Go 129 E (a*)+ - (0,0)(0,0) 130 #E (a*|b)* - (0,0)(0,0) 131 E (a*|b)* - (0,0)(?,?) RE2/Go 132 E (a+|b)* ab (0,2)(1,2) 133 E (a+|b)+ ab (0,2)(1,2) 134 E (a+|b)? ab (0,1)(0,1) 135 BE [^ab]* cde (0,3) 136 #E (^)* - (0,0)(0,0) 137 E (^)* - (0,0)(?,?) RE2/Go 138 BE a* NULL (0,0) 139 E ([abc])*d abbbcd (0,6)(4,5) 140 E ([abc])*bcd abcd (0,4)(0,1) 141 E a|b|c|d|e e (0,1) 142 E (a|b|c|d|e)f ef (0,2)(0,1) 143 #E ((a*|b))* - (0,0)(0,0)(0,0) 144 E ((a*|b))* - (0,0)(?,?)(?,?) RE2/Go 145 BE abcd*efg abcdefg (0,7) 146 BE ab* xabyabbbz (1,3) 147 BE ab* xayabbbz (1,2) 148 E (ab|cd)e abcde (2,5)(2,4) 149 BE [abhgefdc]ij hij (0,3) 150 E (a|b)c*d abcd (1,4)(1,2) 151 E (ab|ab*)bc abc (0,3)(0,1) 152 E a([bc]*)c* abc (0,3)(1,3) 153 E a([bc]*)(c*d) abcd (0,4)(1,3)(3,4) 154 E a([bc]+)(c*d) abcd (0,4)(1,3)(3,4) 155 E a([bc]*)(c+d) abcd (0,4)(1,2)(2,4) 156 E a[bcd]*dcdcde adcdcde (0,7) 157 E (ab|a)b*c abc (0,3)(0,2) 158 E ((a)(b)c)(d) abcd (0,4)(0,3)(0,1)(1,2)(3,4) 159 BE [A-Za-z_][A-Za-z0-9_]* alpha (0,5) 160 E ^a(bc+|b[eh])g|.h$ abh (1,3) 161 E (bc+d$|ef*g.|h?i(j|k)) effgz (0,5)(0,5) 162 E (bc+d$|ef*g.|h?i(j|k)) ij (0,2)(0,2)(1,2) 163 E (bc+d$|ef*g.|h?i(j|k)) reffgz (1,6)(1,6) 164 E (((((((((a))))))))) a (0,1)(0,1)(0,1)(0,1)(0,1)(0,1)(0,1)(0,1)(0,1)(0,1) 165 BE multiple words multiple words yeah (0,14) 166 E (.*)c(.*) abcde (0,5)(0,2)(3,5) 167 BE abcd abcd (0,4) 168 E a(bc)d abcd (0,4)(1,3) 169 E a[-]?c ac (0,3) 170 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Qaddafi (0,15)(?,?)(10,12) 171 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Mo'ammar Gadhafi (0,16)(?,?)(11,13) 172 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Kaddafi (0,15)(?,?)(10,12) 173 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Qadhafi (0,15)(?,?)(10,12) 174 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Gadafi (0,14)(?,?)(10,11) 175 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Mu'ammar Qadafi (0,15)(?,?)(11,12) 176 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Moamar Gaddafi (0,14)(?,?)(9,11) 177 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Mu'ammar Qadhdhafi (0,18)(?,?)(13,15) 178 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Khaddafi (0,16)(?,?)(11,13) 179 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Ghaddafy (0,16)(?,?)(11,13) 180 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Ghadafi (0,15)(?,?)(11,12) 181 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Ghaddafi (0,16)(?,?)(11,13) 182 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muamar Kaddafi (0,14)(?,?)(9,11) 183 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Quathafi (0,16)(?,?)(11,13) 184 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Muammar Gheddafi (0,16)(?,?)(11,13) 185 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Moammar Khadafy (0,15)(?,?)(11,12) 186 E M[ou]'?am+[ae]r .*([AEae]l[- ])?[GKQ]h?[aeu]+([dtz][dhz]?)+af[iy] Moammar Qudhafi (0,15)(?,?)(10,12) 187 E a+(b|c)*d+ aabcdd (0,6)(3,4) 188 E ^.+$ vivi (0,4) 189 E ^(.+)$ vivi (0,4)(0,4) 190 E ^([^!.]+).att.com!(.+)$ gryphon.att.com!eby (0,19)(0,7)(16,19) 191 E ^([^!]+!)?([^!]+)$ bas (0,3)(?,?)(0,3) 192 E ^([^!]+!)?([^!]+)$ bar!bas (0,7)(0,4)(4,7) 193 E ^([^!]+!)?([^!]+)$ foo!bas (0,7)(0,4)(4,7) 194 E ^.+!([^!]+!)([^!]+)$ foo!bar!bas (0,11)(4,8)(8,11) 195 E ((foo)|(bar))!bas bar!bas (0,7)(0,3)(?,?)(0,3) 196 E ((foo)|(bar))!bas foo!bar!bas (4,11)(4,7)(?,?)(4,7) 197 E ((foo)|(bar))!bas foo!bas (0,7)(0,3)(0,3) 198 E ((foo)|bar)!bas bar!bas (0,7)(0,3) 199 E ((foo)|bar)!bas foo!bar!bas (4,11)(4,7) 200 E ((foo)|bar)!bas foo!bas (0,7)(0,3)(0,3) 201 E (foo|(bar))!bas bar!bas (0,7)(0,3)(0,3) 202 E (foo|(bar))!bas foo!bar!bas (4,11)(4,7)(4,7) 203 E (foo|(bar))!bas foo!bas (0,7)(0,3) 204 E (foo|bar)!bas bar!bas (0,7)(0,3) 205 E (foo|bar)!bas foo!bar!bas (4,11)(4,7) 206 E (foo|bar)!bas foo!bas (0,7)(0,3) 207 E ^(([^!]+!)?([^!]+)|.+!([^!]+!)([^!]+))$ foo!bar!bas (0,11)(0,11)(?,?)(?,?)(4,8)(8,11) 208 E ^([^!]+!)?([^!]+)$|^.+!([^!]+!)([^!]+)$ bas (0,3)(?,?)(0,3) 209 E ^([^!]+!)?([^!]+)$|^.+!([^!]+!)([^!]+)$ bar!bas (0,7)(0,4)(4,7) 210 E ^([^!]+!)?([^!]+)$|^.+!([^!]+!)([^!]+)$ foo!bar!bas (0,11)(?,?)(?,?)(4,8)(8,11) 211 E ^([^!]+!)?([^!]+)$|^.+!([^!]+!)([^!]+)$ foo!bas (0,7)(0,4)(4,7) 212 E ^(([^!]+!)?([^!]+)|.+!([^!]+!)([^!]+))$ bas (0,3)(0,3)(?,?)(0,3) 213 E ^(([^!]+!)?([^!]+)|.+!([^!]+!)([^!]+))$ bar!bas (0,7)(0,7)(0,4)(4,7) 214 E ^(([^!]+!)?([^!]+)|.+!([^!]+!)([^!]+))$ foo!bar!bas (0,11)(0,11)(?,?)(?,?)(4,8)(8,11) 215 E ^(([^!]+!)?([^!]+)|.+!([^!]+!)([^!]+))$ foo!bas (0,7)(0,7)(0,4)(4,7) 216 E .*(/XXX).* /XXX (0,4)(0,4) 217 E .*(\\XXX).* \XXX (0,4)(0,4) 218 E \\XXX \XXX (0,4) 219 E .*(/000).* /000 (0,4)(0,4) 220 E .*(\\000).* \000 (0,4)(0,4) 221 E \\000 \000 (0,4)