test_re ('abc', 'abc', 0, 'found', 'abc') ('abc', 'xbc', 1) ('abc', 'axc', 1) ('abc', 'abx', 1) ('abc', 'xabcy', 0, 'found', 'abc') ('abc', 'ababc', 0, 'found', 'abc') ('ab*c', 'abc', 0, 'found', 'abc') ('ab*bc', 'abc', 0, 'found', 'abc') ('ab*bc', 'abbc', 0, 'found', 'abbc') ('ab*bc', 'abbbbc', 0, 'found', 'abbbbc') ('ab+bc', 'abbc', 0, 'found', 'abbc') ('ab+bc', 'abc', 1) ('ab+bc', 'abq', 1) ('ab+bc', 'abbbbc', 0, 'found', 'abbbbc') ('ab?bc', 'abbc', 0, 'found', 'abbc') ('ab?bc', 'abc', 0, 'found', 'abc') ('ab?bc', 'abbbbc', 1) ('ab?c', 'abc', 0, 'found', 'abc') ('^abc$', 'abc', 0, 'found', 'abc') ('^abc$', 'abcc', 1) ('^abc', 'abcc', 0, 'found', 'abc') ('^abc$', 'aabc', 1) ('abc$', 'aabc', 0, 'found', 'abc') ('^', 'abc', 0, 'found+"-"', '-') ('$', 'abc', 0, 'found+"-"', '-') ('a.c', 'abc', 0, 'found', 'abc') ('a.c', 'axc', 0, 'found', 'axc') ('a.*c', 'axyzc', 0, 'found', 'axyzc') ('a.*c', 'axyzd', 1) ('a[bc]d', 'abc', 1) ('a[bc]d', 'abd', 0, 'found', 'abd') ('a[b-d]e', 'abd', 1) ('a[b-d]e', 'ace', 0, 'found', 'ace') ('a[b-d]', 'aac', 0, 'found', 'ac') ('a[-b]', 'a-', 0, 'found', 'a-') ('a[b-]', 'a-', 2) ('a[]b', '-', 2) ('a[', '-', 2) ('a\\', '-', 2) ('abc)', '-', 2) ('(abc', '-', 2) ('a]', 'a]', 0, 'found', 'a]') ('a[]]b', 'a]b', 0, 'found', 'a]b') ('a[^bc]d', 'aed', 0, 'found', 'aed') ('a[^bc]d', 'abd', 1) ('a[^-b]c', 'adc', 0, 'found', 'adc') ('a[^-b]c', 'a-c', 1) ('a[^]b]c', 'a]c', 1) ('a[^]b]c', 'adc', 0, 'found', 'adc') ('\\ba\\b', 'a-', 0, '"-"', '-') ('\\ba\\b', '-a', 0, '"-"', '-') ('\\ba\\b', '-a-', 0, '"-"', '-') ('\\by\\b', 'xy', 1) ('\\by\\b', 'yz', 1) ('\\by\\b', 'xyz', 1) ('ab|cd', 'abc', 0, 'found', 'ab') ('ab|cd', 'abcd', 0, 'found', 'ab') ('()ef', 'def', 0, 'found+"-"+g1', 'ef-') === Syntax error: ('()ef', 'def', 0, 'found+"-"+g1', 'ef-') ('$b', 'b', 1) ('a\\(b', 'a(b', 0, 'found+"-"+g1', 'a(b-None') ('a\\(*b', 'ab', 0, 'found', 'ab') ('a\\(*b', 'a((b', 0, 'found', 'a((b') ('a\\\\b', 'a\\b', 0, 'found', 'a\\b') ('((a))', 'abc', 0, 'found+"-"+g1+"-"+g2', 'a-a-a') ('(a)b(c)', 'abc', 0, 'found+"-"+g1+"-"+g2', 'abc-a-c') ('a+b+c', 'aabbabc', 0, 'found', 'abc') ('(a+|b)*', 'ab', 0, 'found+"-"+g1', 'ab-b') ('(a+|b)+', 'ab', 0, 'found+"-"+g1', 'ab-b') ('(a+|b)?', 'ab', 0, 'found+"-"+g1', 'a-a') (')(', '-', 2) ('[^ab]*', 'cde', 0, 'found', 'cde') ('abc', '', 1) ('a*', '', 0, 'found', '') ('a|b|c|d|e', 'e', 0, 'found', 'e') ('(a|b|c|d|e)f', 'ef', 0, 'found+"-"+g1', 'ef-e') ('abcd*efg', 'abcdefg', 0, 'found', 'abcdefg') ('ab*', 'xabyabbbz', 0, 'found', 'ab') ('ab*', 'xayabbbz', 0, 'found', 'a') ('(ab|cd)e', 'abcde', 0, 'found+"-"+g1', 'cde-cd') ('[abhgefdc]ij', 'hij', 0, 'found', 'hij') ('^(ab|cd)e', 'abcde', 1, 'xg1y', 'xy') ('(abc|)ef', 'abcdef', 0, 'found+"-"+g1', 'ef-') === Syntax error: ('(abc|)ef', 'abcdef', 0, 'found+"-"+g1', 'ef-') ('(a|b)c*d', 'abcd', 0, 'found+"-"+g1', 'bcd-b') ('(ab|ab*)bc', 'abc', 0, 'found+"-"+g1', 'abc-a') ('a([bc]*)c*', 'abc', 0, 'found+"-"+g1', 'abc-bc') ('a([bc]*)(c*d)', 'abcd', 0, 'found+"-"+g1+"-"+g2', 'abcd-bc-d') ('a([bc]+)(c*d)', 'abcd', 0, 'found+"-"+g1+"-"+g2', 'abcd-bc-d') ('a([bc]*)(c+d)', 'abcd', 0, 'found+"-"+g1+"-"+g2', 'abcd-b-cd') ('a[bcd]*dcdcde', 'adcdcde', 0, 'found', 'adcdcde') ('a[bcd]+dcdcde', 'adcdcde', 1) ('(ab|a)b*c', 'abc', 0, 'found+"-"+g1', 'abc-ab') ('((a)(b)c)(d)', 'abcd', 0, 'g1+"-"+g2+"-"+g3+"-"+g4', 'abc-a-b-d') ('[a-zA-Z_][a-zA-Z0-9_]*', 'alpha', 0, 'found', 'alpha') ('^a(bc+|b[eh])g|.h$', 'abh', 0, 'found+"-"+g1', 'bh-None') ('(bc+d$|ef*g.|h?i(j|k))', 'effgz', 0, 'found+"-"+g1+"-"+g2', 'effgz-effgz-None') ('(bc+d$|ef*g.|h?i(j|k))', 'ij', 0, 'found+"-"+g1+"-"+g2', 'ij-ij-j') ('(bc+d$|ef*g.|h?i(j|k))', 'effg', 1) ('(bc+d$|ef*g.|h?i(j|k))', 'bcdd', 1) ('(bc+d$|ef*g.|h?i(j|k))', 'reffgz', 0, 'found+"-"+g1+"-"+g2', 'effgz-effgz-None') ('(((((((((a)))))))))', 'a', 0, 'found', 'a') ('multiple words of text', 'uh-uh', 1) ('multiple words', 'multiple words, yeah', 0, 'found', 'multiple words') ('(.*)c(.*)', 'abcde', 0, 'found+"-"+g1+"-"+g2', 'abcde-ab-de') ('\\((.*), (.*)\\)', '(a, b)', 0, 'g2+"-"+g1', 'b-a') ('[k]', 'ab', 1) ('a[-]?c', 'ac', 0, 'found', 'ac') ('(abc)\\1', 'abcabc', 0, 'g1', 'abc') ('([a-c]*)\\1', 'abcabc', 0, 'g1', 'abc') ('^(.+)?B', 'AB', 0, 'g1', 'A') ('(a+).\\1$', 'aaaaa', 0, 'found+"-"+g1', 'aaaaa-aa') ('^(a+).\\1$', 'aaaa', 1) ('(abc)\\1', 'abcabc', 0, 'found+"-"+g1', 'abcabc-abc') ('([a-c]+)\\1', 'abcabc', 0, 'found+"-"+g1', 'abcabc-abc') ('(a)\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') ('(a+)\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') ('(a+)+\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') ('(a).+\\1', 'aba', 0, 'found+"-"+g1', 'aba-a') ('(a)ba*\\1', 'aba', 0, 'found+"-"+g1', 'aba-a') ('(aa|a)a\\1$', 'aaa', 0, 'found+"-"+g1', 'aaa-a') ('(a|aa)a\\1$', 'aaa', 0, 'found+"-"+g1', 'aaa-a') ('(a+)a\\1$', 'aaa', 0, 'found+"-"+g1', 'aaa-a') ('([abc]*)\\1', 'abcabc', 0, 'found+"-"+g1', 'abcabc-abc') ('(a)(b)c|ab', 'ab', 0, 'found+"-"+g1+"-"+g2', 'ab-None-None') ('(a)+x', 'aaax', 0, 'found+"-"+g1', 'aaax-a') ('([ac])+x', 'aacx', 0, 'found+"-"+g1', 'aacx-c') ('([^/]*/)*sub1/', 'd:msgs/tdir/sub1/trial/away.cpp', 0, 'found+"-"+g1', 'd:msgs/tdir/sub1/-tdir/') ('([^.]*)\\.([^:]*):[T ]+(.*)', 'track1.title:TBlah blah blah', 0, 'found+"-"+g1+"-"+g2+"-"+g3', 'track1.title:TBlah blah blah-track1-title-Blah blah blah') ('([^N]*N)+', 'abNNxyzN', 0, 'found+"-"+g1', 'abNNxyzN-xyzN') ('([^N]*N)+', 'abNNxyz', 0, 'found+"-"+g1', 'abNN-N') ('([abc]*)x', 'abcx', 0, 'found+"-"+g1', 'abcx-abc') ('([abc]*)x', 'abc', 1) ('([xyz]*)x', 'abcx', 0, 'found+"-"+g1', 'x-') ('(a)+b|aac', 'aac', 0, 'found+"-"+g1', 'aac-None')