0@abc@abc
1@abc@xbc
1@abc@axc
1@abc@abx
0@abc@xabcy
0@abc@ababc
0@ab*c@abc
0@ab*bc@abc
0@ab*bc@abbc
0@ab*bc@abbbbc
0@ab+bc@abbc
1@ab+bc@abc
1@ab+bc@abq
0@ab+bc@abbbbc
0@ab?bc@abbc
0@ab?bc@abc
1@ab?bc@abbbbc
0@ab?c@abc
0@^abc$@abc
1@^abc$@abcc
0@^abc@abcc
1@^abc$@aabc
0@abc$@aabc
0@^@abc
0@$@abc
0@a.c@abc
0@a.c@axc
0@a.*c@axyzc
1@a.*c@axyzd
1@a[bc]d@abc
0@a[bc]d@abd
1@a[b-d]e@abd
0@a[b-d]e@ace
0@a[b-d]@aac
0@a[-b]@a-
0@a[b-]@a-
1@a[b-a]@-
2@a[]b@-
2@a[@-
0@a]@a]
0@a[]]b@a]b
0@a[^bc]d@aed
1@a[^bc]d@abd
0@a[^-b]c@adc
1@a[^-b]c@a-c
1@a[^]b]c@a]c
0@a[^]b]c@adc
0@ab|cd@abc
0@ab|cd@abcd
0@()ef@def
0@()*@-
1@*a@-
0@^*@-
0@$*@-
1@(*)b@-
1@$b@b
2@a\@-
0@a\(b@a(b
0@a\(*b@ab
0@a\(*b@a((b
1@a\x@a\x
2@abc)@-
2@(abc@-
0@((a))@abc
0@(a)b(c)@abc
0@a+b+c@aabbabc
0@a**@-
0@a*?@-
0@(a*)*@-
0@(a*)+@-
0@(a|)*@-
0@(a*|b)*@-
0@(a+|b)*@ab
0@(a+|b)+@ab
0@(a+|b)?@ab
0@[^ab]*@cde
0@(^)*@-
0@(ab|)*@-
2@)(@-
1@abc@
1@abc@
0@a*@
0@([abc])*d@abbbcd
0@([abc])*bcd@abcd
0@a|b|c|d|e@e
0@(a|b|c|d|e)f@ef
0@((a*|b))*@-
0@abcd*efg@abcdefg
0@ab*@xabyabbbz
0@ab*@xayabbbz
0@(ab|cd)e@abcde
0@[abhgefdc]ij@hij
1@^(ab|cd)e@abcde
0@(abc|)ef@abcdef
0@(a|b)c*d@abcd
0@(ab|ab*)bc@abc
0@a([bc]*)c*@abc
0@a([bc]*)(c*d)@abcd
0@a([bc]+)(c*d)@abcd
0@a([bc]*)(c+d)@abcd
0@a[bcd]*dcdcde@adcdcde
1@a[bcd]+dcdcde@adcdcde
0@(ab|a)b*c@abc
0@((a)(b)c)(d)@abcd
0@[A-Za-z_][A-Za-z0-9_]*@alpha
0@^a(bc+|b[eh])g|.h$@abh
0@(bc+d$|ef*g.|h?i(j|k))@effgz
0@(bc+d$|ef*g.|h?i(j|k))@ij
1@(bc+d$|ef*g.|h?i(j|k))@effg
1@(bc+d$|ef*g.|h?i(j|k))@bcdd
0@(bc+d$|ef*g.|h?i(j|k))@reffgz
1@((((((((((a))))))))))@-
0@(((((((((a)))))))))@a
1@multiple words of text@uh-uh
0@multiple words@multiple words, yeah
0@(.*)c(.*)@abcde
1@\((.*),@(.*)\)
1@[k]@ab
0@abcd@abcd
0@a(bc)d@abcd
0@a[-]?c@ac
0@(....).*\1@beriberi