progs/tests/totest.txt
changeset 195 c2d36c3cf8ad
parent 161 2778715487a9
--- a/progs/tests/totest.txt	Thu Jun 09 12:31:02 2016 +0100
+++ b/progs/tests/totest.txt	Fri Jun 10 23:53:46 2016 +0100
@@ -1,79 +1,80 @@
-01	a+			xaax	(1,3)
+#01	a+			xaax	(1,3)
 03	(a?)((ab)?)		ab	(0,2)(0,0)(0,2)(0,2)
-04	(a?)((ab)?)(b?)		ab	(0,2)(0,1)(1,1)(?,?)(1,2)
+04	(a?)((ab)?)(b?)		ab	(0,2)(0,0)(0,2)(0,2)(2,2)
 05	((a?)((ab)?))(b?)	ab	(0,2)(0,2)(0,0)(0,2)(0,2)(2,2)
-06	(a?)(((ab)?)(b?))	ab	(0,2)(0,1)(1,2)(1,1)(?,?)(1,2)
+06	(a?)(((ab)?)(b?))	ab	(0,2)(0,1)(1,2)(1,1)(1,2)
 07	(.?)			x	(0,1)(0,1)
-08	(.?){1}			x	(0,1)(0,1)
+#08	(.?){1}			x	(0,1)(0,1)
 09	(.?)(.?)		x	(0,1)(0,1)(1,1)
-10	(.?){2}			x	(0,1)(1,1)
+#10	(.?){2}			x	(0,1)(1,1)
 11	(.?)*			x	(0,1)(0,1)
-12	(.?.?)			xxx	(0,2)(0,2)
-13	(.?.?){1}		xxx	(0,2)(0,2)
+#12	(.?.?)			xxx	(0,2)(0,2)
+12	(.?.?.?)		xxx	(0,3)(0,3)
+#13	(.?.?){1}		xxx	(0,2)(0,2)
 14	(.?.?)(.?.?)		xxx	(0,3)(0,2)(2,3)
-15	(.?.?){2}		xxx	(0,3)(2,3)
+#15	(.?.?){2}		xxx	(0,3)(2,3)
 16	(.?.?)(.?.?)(.?.?)	xxx	(0,3)(0,2)(2,3)(3,3)
-17	(.?.?){3}		xxx	(0,3)(3,3)
-18	(.?.?)*			xxx	(0,3)(2,3)
-19	a?((ab)?)(b?)		ab	(0,2)(1,1)(?,?)(1,2)
-20	(a?)((ab)?)b?		ab	(0,2)(0,1)(1,1)(?,?)
-21	a?((ab)?)b?		ab	(0,2)(1,1)(?,?)
-22	(a*){2}			xxxxx	(0,0)(0,0)
+#17	(.?.?){3}		xxx	(0,3)(3,3)
+18	(.?.?)*			xxx	(0,3)(0,2)(2,3)
+19	a?((ab)?)(b?)		ab	(0,2)(0,2)(0,2)(2,2)
+20	(a?)((ab)?)b?		ab	(0,2)(0,0)(0,2)(0,2)
+21	a?((ab)?)b?		ab	(0,2)(0,2)(0,2)
+#22	(a*){2}			xxxxx	(0,0)(0,0)
 23	(ab?)(b?a)		aba	(0,3)(0,2)(2,3)
 24	(a|ab)(ba|a)		aba	(0,3)(0,2)(2,3)
-25	(a|ab|ba)		aba	(0,2)(0,2)
+#25	(a|ab|ba)		aba	(0,2)(0,2)
 26	(a|ab|ba)(a|ab|ba)	aba	(0,3)(0,2)(2,3)
-27	(a|ab|ba)*		aba	(0,3)(2,3)
-28	(aba|a*b)		ababa	(0,3)(0,3)
+27	(a|ab|ba)*		aba	(0,3)(0,2)(2,3)
+#28	(aba|a*b)		ababa	(0,3)(0,3)
 29	(aba|a*b)(aba|a*b)	ababa	(0,5)(0,2)(2,5)
-1029	(aba|a*b)(aba|a*b)(aba|a*b)	ababa	NOMATCH
-30	(aba|a*b)*		ababa	(0,5)(2,5)
-31	(aba|ab|a)		ababa	(0,3)(0,3)
+#1029	(aba|a*b)(aba|a*b)(aba|a*b)	ababa	NOMATCH
+30	(aba|a*b)*		ababa	(0,5)(0,2)(2,5)
+#31	(aba|ab|a)		ababa	(0,3)(0,3)
 32	(aba|ab|a)(aba|ab|a)	ababa	(0,5)(0,2)(2,5)
 1032	(aba|ab|a)(aba|ab|a)(aba|ab|a)	ababa	(0,5)(0,2)(2,4)(4,5)
-33	(aba|ab|a)*		ababa	(0,5)(2,5)
-34	(a(b)?)			aba	(0,2)(0,2)(1,2)
-35	(a(b)?)(a(b)?)		aba	(0,3)(0,2)(1,2)(2,3)(?,?)
-36	(a(b)?)+		aba	(0,3)(2,3)(?,?)
+33	(aba|ab|a)*		ababa	(0,5)(0,2)(2,5)
+#34	(a(b)?)			aba	(0,2)(0,2)(1,2)
+35	(a(b)?)(a(b)?)		aba	(0,3)(0,2)(1,2)(2,3)
+36	(a(b)?)+		aba	(0,3)(0,2)(1,2)(2,3)
 37	(.*)(.*)		xx	(0,2)(0,2)(2,2)
 38	.*(.*)			xx	(0,2)(2,2)
-39	(a.*z|b.*y)		azbazby	(0,5)(0,5)
+#39	(a.*z|b.*y)		azbazby	(0,5)(0,5)
 40	(a.*z|b.*y)(a.*z|b.*y)	azbazby	(0,7)(0,5)(5,7)
-41	(a.*z|b.*y)*		azbazby	(0,7)(5,7)
+41	(a.*z|b.*y)*		azbazby	(0,7)(0,5)(5,7)
 42	(.|..)(.*)		ab	(0,2)(0,2)(2,2)
-43	((..)*(...)*)			xxx		(0,3)(0,3)(?,?)(0,3)
-44	((..)*(...)*)((..)*(...)*)	xxx		(0,3)(0,3)(?,?)(0,3)(3,3)(?,?)(?,?)
-45	((..)*(...)*)*			xxx		(0,3)(0,3)(?,?)(0,3)
-83	(aa(b(b))?)+		aabbaa	(0,6)(4,6)(?,?)(?,?)
-84	(a(b)?)+		aba	(0,3)(2,3)(?,?)
-85	([ab]+)([bc]+)([cd]*)		abcd		(0,4)(0,2)(2,3)(3,4)
-90	^(A([^B]*))?(B(.*))?		Aa		(0,2)(0,2)(1,2)(?,?)(?,?)
-91	^(A([^B]*))?(B(.*))?		Bb		(0,2)(?,?)(?,?)(0,2)(1,2)
-110	(^){0,3}		a	(0,0)(0,0)
-111	($){0,3}		a	(0,0)(?,?)
-112	(^){1,3}		a	(0,0)(0,0)
-113	($){1,3}		a	(1,1)(1,1)
-200	((s^)|(s)|(^)|($)|(^.))*	searchme	(0,1)(0,1)(?,?)(0,1)(?,?)(?,?)(?,?)
-201	s(()|^)e	searchme	(0,2)(1,1)(1,1)
-202	s(^|())e	searchme	(0,2)(1,1)(1,1)
-203	s(^|())e	searchme	(0,2)(1,1)(1,1)
-204	s()?e	searchme	(0,2)(1,1)
-205	s(^)?e	searchme	(0,2)(?,?)
-206	((s)|(e)|(a))*	searchme	(0,3)(2,3)(?,?)(?,?)(2,3)
-207	((s)|(e)|())*	searchme	(0,2)(1,2)(?,?)(1,2)(?,?)
-208	((b*)|c(c*))*	cbb	(0,3)(1,3)(1,3)(?,?)
-209	(yyy|(x?)){2,4}	yyyyyy	(0,6)(3,6)(?,?)
-210	($)|()	xxx	(0,0)(?,?)(0,0)
-211	$()|^()	ac\n	(0,0)(?,?)(0,0)
-212	^()|$()	ac\n	(0,0)(0,0)(?,?)
-213	($)?(.)	__	(0,1)(?,?)(0,1)
-214	(.|()|())*	c	(0,1)(0,1)(?,?)(?,?)
-215	((a)|(b)){2,}	ab	(0,2)(1,2)(?,?)(1,2)
-216	.()|((.)?)	NULL	(0,0)(?,?)(0,0)(?,?)
-217	(.|$){2,}	xx	(0,2)(1,2)
-218	(.|$){2,2}	xx	(0,2)(1,2)
-219	(.){2,}	xx	(0,2)(1,2)
-220	(a|())(b|())(c|())	abc	(0,3)(0,1)(?,?)(1,2)(?,?)(2,3)(?,?)
-220	ab()c|ab()c()	abc	(0,3)(2,2)(-1,-1)(-1,-1)
-250	(b(c)|d(e))*	bcde	(0,4)(2,4)(-1,-1)(3,4)
-251	(a(b)*)*	aba	(0,3)(2,3)(-1,-1)
+43	((..)*(...)*)			xxx		(0,3)(0,3)(0,3)
+44	((..)*(...)*)((..)*(...)*)	xxx		(0,3)(0,3)(0,3)(3,3)
+45	((..)*(...)*)*			xxx		(0,3)(0,3)(0,3)
+83	(aa(b(b))?)+		aabbaa	(0,6)(0,4)(2,4)(3,4)(4,6)
+84	(a(b)?)+		aba	(0,3)(0,2)(1,2)(2,3)
+#85	([ab]+)([bc]+)([cd]*)		abcd		(0,4)(0,2)(2,3)(3,4)
+#90	^(A([^B]*))?(B(.*))?		Aa		(0,2)(0,2)(1,2)(?,?)(?,?)
+#91	^(A([^B]*))?(B(.*))?		Bb		(0,2)(?,?)(?,?)(0,2)(1,2)
+#110	(^){0,3}		a	(0,0)(0,0)
+#111	($){0,3}		a	(0,0)(?,?)
+#112	(^){1,3}		a	(0,0)(0,0)
+#113	($){1,3}		a	(1,1)(1,1)
+#200	((s^)|(s)|(^)|($)|(^.))*	searchme	(0,1)(0,1)(?,?)(0,1)(?,?)(?,?)(?,?)
+#201	s(()|^)e	searchme	(0,2)(1,1)(1,1)
+#202	s(^|())e	searchme	(0,2)(1,1)(1,1)
+#203	s(^|())e	searchme	(0,2)(1,1)(1,1)
+#204	s()?e	searchme	(0,2)(1,1)
+#205	s(^)?e	searchme	(0,2)(?,?)
+#206	((s)|(e)|(a))*	searchme	(0,3)(2,3)(?,?)(?,?)(2,3)
+#207	((s)|(e)|())*	searchme	(0,2)(1,2)(?,?)(1,2)(?,?)
+208	((b*)|c(c*))*	cbb	(0,3)(0,1)(1,1)(1,3)(1,3)
+#209	(yyy|(x?)){2,4}	yyyyyy	(0,6)(3,6)(?,?)
+#210	($)|()	xxx	(0,0)(?,?)(0,0)
+#211	$()|^()	ac\n	(0,0)(?,?)(0,0)
+#212	^()|$()	ac\n	(0,0)(0,0)(?,?)
+#213	($)?(.)	__	(0,1)(?,?)(0,1)
+214	(.|()|())*	c	(0,1)(0,1)
+#215	((a)|(b)){2,}	ab	(0,2)(1,2)(?,?)(1,2)
+#216	.()|((.)?)	NULL	(0,0)(?,?)(0,0)(?,?)
+#217	(.|$){2,}	xx	(0,2)(1,2)
+#218	(.|$){2,2}	xx	(0,2)(1,2)
+#219	(.){2,}	xx	(0,2)(1,2)
+220	(a|())(b|())(c|())	abc	(0,3)(0,1)(1,2)(2,3)
+##220	ab()c|ab()c()	abc	(0,3)(2,2)(-1,-1)(-1,-1)
+250	(b(c)|d(e))*	bcde	(0,4)(0,2)(1,2)(2,4)(3,4)
+251	(a(b)*)*	aba	(0,3)(0,2)(1,2)(2,3)