1*11be35a1SLionel SambucNOTE regex implementation categorization 2004-05-31 2*11be35a1SLionel Sambuc 3*11be35a1SLionel Sambuc?E aa* xaxaax (1,2) POSITION=leftmost 4*11be35a1SLionel Sambuc; POSITION=bug 5*11be35a1SLionel Sambuc 6*11be35a1SLionel Sambuc?E (a*)(ab)*(b*) abc (0,2)(0,1)(?,?)(1,2) ASSOCIATIVITY=right 7*11be35a1SLionel Sambuc|E (a*)(ab)*(b*) abc (0,2)(0,0)(0,2)(2,2) ASSOCIATIVITY=left 8*11be35a1SLionel Sambuc; ASSOCIATIVITY=bug 9*11be35a1SLionel Sambuc 10*11be35a1SLionel Sambuc?E ((a*)(ab)*)((b*)(a*)) aba (0,3)(0,2)(0,0)(0,2)(2,3)(2,2)(2,3) SUBEXPRESSION=precedence 11*11be35a1SLionel Sambuc|E ((a*)(ab)*)((b*)(a*)) aba (0,3)(0,1)(0,1)(?,?)(1,3)(1,2)(2,3) SUBEXPRESSION=grouping 12*11be35a1SLionel Sambuc; SUBEXPRESSION=bug 13*11be35a1SLionel Sambuc 14*11be35a1SLionel Sambuc?E (...?.?)* xxxxxx (0,6)(4,6) REPEAT_LONGEST=first 15*11be35a1SLionel Sambuc|E (...?.?)* xxxxxx (0,6)(2,6) REPEAT_LONGEST=last 16*11be35a1SLionel Sambuc|E (...?.?)* xxxxxx OK REPEAT_LONGEST=unknown 17*11be35a1SLionel Sambuc; REPEAT_LONGEST=bug 18*11be35a1SLionel Sambuc 19*11be35a1SLionel Sambuc?E (a|ab)(bc|c) abcabc (0,3)(0,2)(2,3) EXPECTED 20*11be35a1SLionel Sambuc|E (a|ab)(bc|c) abcabc (0,3)(0,1)(1,3) BUG=alternation-order 21*11be35a1SLionel Sambuc; BUG=alternation-order-UNKNOWN 22*11be35a1SLionel Sambuc 23*11be35a1SLionel Sambuc?E (aba|a*b)(aba|a*b) ababa (0,5)(0,2)(2,5) EXPECTED 24*11be35a1SLionel Sambuc|E (aba|a*b)(aba|a*b) ababa (0,4)(0,3)(3,4) BUG=first-match 25*11be35a1SLionel Sambuc; BUG=unknown-match 26*11be35a1SLionel Sambuc 27*11be35a1SLionel Sambuc?B a\(b\)*\1 a NOMATCH EXPECTED 28*11be35a1SLionel Sambuc|B a\(b\)*\1 a (0,1) BUG=nomatch-match 29*11be35a1SLionel Sambuc|B a\(b\)*\1 abab (0,2)(1,2) # BUG=repeat-any 30*11be35a1SLionel Sambuc; BUG=nomatch-match-UNKNOWN 31*11be35a1SLionel Sambuc 32*11be35a1SLionel Sambuc?E (a*){2} xxxxx (0,0)(0,0) EXPECTED 33*11be35a1SLionel Sambuc|E (a*){2} xxxxx (5,5)(5,5) BUG=range-null 34*11be35a1SLionel Sambuc; BUG=range-null-UNKNOWN 35*11be35a1SLionel Sambuc 36*11be35a1SLionel Sambuc?B a\(b\)*\1 abab NOMATCH EXPECTED 37*11be35a1SLionel Sambuc|B a\(b\)*\1 abab (0,1) # BUG=nomatch-match 38*11be35a1SLionel Sambuc|B a\(b\)*\1 abab (0,2)(1,2) BUG=repeat-any 39*11be35a1SLionel Sambuc; BUG=repeat-any-UNKNOWN 40*11be35a1SLionel Sambuc 41*11be35a1SLionel Sambuc?E (a*)* a (0,1)(0,1) EXPECTED 42*11be35a1SLionel Sambuc|E (a*)* ax (0,1)(0,1) BUG=repeat-null-unknown 43*11be35a1SLionel Sambuc|E (a*)* a (0,1)(1,1) BUG=repeat-null 44*11be35a1SLionel Sambuc; BUG=repeat-null-UNKNOWN 45*11be35a1SLionel Sambuc 46*11be35a1SLionel Sambuc?E (aba|a*b)* ababa (0,5)(2,5) EXPECTED 47*11be35a1SLionel Sambuc|E (aba|a*b)* ababa (0,5)(3,4) BUG=repeat-short 48*11be35a1SLionel Sambuc|E (aba|a*b)* ababa (0,4)(3,4) # LENGTH=first 49*11be35a1SLionel Sambuc; BUG=repeat-short-UNKNOWN 50*11be35a1SLionel Sambuc 51*11be35a1SLionel Sambuc?E (a(b)?)+ aba (0,3)(2,3) EXPECTED 52*11be35a1SLionel Sambuc|E (a(b)?)+ aba (0,3)(2,3)(1,2) BUG=repeat-artifact 53*11be35a1SLionel Sambuc; BUG=repeat-artifact-UNKNOWN 54*11be35a1SLionel Sambuc 55*11be35a1SLionel Sambuc?B \(a\(b\)*\)*\2 abab NOMATCH EXPECTED 56*11be35a1SLionel Sambuc|B \(a\(b\)*\)*\2 abab (0,4)(2,3)(1,2) BUG=repeat-artifact-nomatch 57*11be35a1SLionel Sambuc; BUG=repeat-artifact-nomatch-UNKNOWN 58*11be35a1SLionel Sambuc 59*11be35a1SLionel Sambuc?E (a?)((ab)?)(b?)a?(ab)?b? abab (0,4)(0,1)(1,1)(?,?)(1,2)(2,4) BUG=subexpression-first 60*11be35a1SLionel Sambuc|E .*(.*) ab (0,2)(2,2) EXPECTED 61*11be35a1SLionel Sambuc|E .*(.*) ab (0,2)(0,2) BUG=subexpression-first 62*11be35a1SLionel Sambuc; BUG=subexpression-first-UNKNOWN 63