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