1: (?%...) nested matched pair regex tests 2008-09-04
2
3EA	(?%()		-(-)-			EPAREN
4EA	(?%()")		-(-)-			EPAREN
5
6EA	(?%())		-(-)-			(1,4)
7EA	(?%())		-(-)-)-			(1,4)
8EA	(?%())		-(-()-)-		(1,7)
9EA	(?%())		-(-\)-)-		(1,5)
10EA	(?%())		-(-\\)-)-		(1,6)
11EA	(?%())		-(-(-)-			(3,6)
12EA	(?%())		-(-(-)-)-		(1,8)
13
14EA	(?%()[])	-(-[-]-)-		(1,8)
15EA	(?%()[])	-[-(-)-]-		(3,6)
16EA	(?%()[])	-(-[-)-]-		NOMATCH
17
18EA	(?%[]())	-(-[-]-)-		(3,6)
19EA	(?%[]())	-[-(-)-]-		(1,8)
20EA	(?%[]())	-(-[-)-]-		NOMATCH
21
22EA	(?%()Q")	-(-")"-)-		(1,8)
23EA	(?%()Q")	-(-\")"-)-		(1,9)
24EA	(?%()Q")	-(-\")\"-)-		(1,10)
25
26EA	(?%()Q'Q")	-(-'")'-)-		(1,9)
27EA	(?%()Q'Q")	-(-\'")"-)-		NOMATCH
28EA	(?%()Q'Q")	-(-\'")"'-)-		(1,11)
29EA	(?%()Q'Q")	-(-\"')'\"-)-		(1,12)
30EA	(?%()Q'Q")	-(-')\''-)-		NOMATCH
31
32EA	(?%()L'Q")	-(-'")'-)-		(1,9)
33EA	(?%()L'Q")	-(-\'")"-)-		NOMATCH
34EA	(?%()L'Q")	-(-\'")"'-)-		(1,11)
35EA	(?%()L'Q")	-(-\"')'\"-)-		(1,12)
36EA	(?%()L'Q")	-(-')\''-)-		NOMATCH
37
38EA	(?%()Q")	-(-")"-)-		(1,8)
39EA	(?%()Q")	-(-\")"-)-		(1,9)
40EA	(?%()Q")	-(-\")\"-)-		(1,10)
41
42EA	(?%()E\\)	-(-\)-)-		(1,7)
43EA	(?%()E\\)	-(-\\)-)-		(1,6)
44EA	(?%()E\\Q")	-(-\")"-)-		(1,6)
45EA	(?%()E\\Q")	-(-\")\"-)-		(1,6)
46EA	(?%()E\\Q'Q")	-(-\'")"-)-		(1,10)
47EA	(?%()E\\Q'Q")	-(-\"')'\"-)-		(1,12)
48EA	(?%()E\\L'Q")	-(-\'")"-)-		(1,10)
49EA	(?%()E\\L'Q")	-(-\"')'\"-)-		(1,12)
50EA	(?%()E\\L'Q")	-(-\"')\'\"-)-		(1,13)
51EA	(?%()E\\L'Q")	-(-\"')\'\"'-)-		NOMATCH
52
53EA	(?%()T;)	-(-;-)-			NOMATCH
54EA	(?%()T;)	-(-);-			(1,4)
55EA	(?%()T;)	-(-)-			(1,4)
56
57EA	(?%()D;)	-(-;-)-			NOMATCH
58EA	(?%()D;)	-(-);-			(1,4)
59EA	(?%()D;)	-(-)-			(1,4)
60
61EA	(?%()S;)	-(-;-)-			(1,6)
62EA	(?%()S;)	-(-);-			(1,4)
63EA	(?%()S;)	-(-)-			(1,4)
64
65EA	([[:alnum:]]+)([[:space:]])*((?%()))	call(a+b,x/(c/d),(0));	(0,21)(0,4)(?,?)(4,21)
66
67EA	(?%T;)			NULL		NOMATCH
68EA	(?%D;)			NULL		NOMATCH
69EA	(?%S;)			NULL		NOMATCH
70
71EA	(?%T;OT)		NULL		NOMATCH
72EA	(?%D;OT)		NULL		NOMATCH
73EA	(?%S;OT)		NULL		NOMATCH
74
75EA	(?%T;)			-		NOMATCH
76EA	(?%D;)			-		NOMATCH
77EA	(?%S;)			-		NOMATCH
78
79EA	(?%T;OT)		-		(0,1)
80EA	(?%D;OT)		-		(0,1)
81EA	(?%S;OT)		-		(0,1)
82
83EA	(?%T;)			--		NOMATCH
84EA	(?%D;)			--		NOMATCH
85EA	(?%S;)			--		NOMATCH
86
87EA	(?%T;OT)		--		(0,2)
88EA	(?%D;OT)		--		(0,2)
89EA	(?%S;OT)		--		(0,2)
90
91EA	(?%T;E\\L'Q")		-(-)-		NOMATCH
92EA	(?%T;E\\L'Q")		-(-;-)-		(0,4)
93EA	(?%T;E\\L'Q")		-(-);-		(0,5)
94EA	(?%T;E\\L'Q")		-(-;-);-	(0,4)
95EA	(?%T;E\\L'Q")		-(-\;-);-	(0,8)
96EA	(?%T;E\\L'Q")		-(-';'-);-	(4,5)
97EA	(?%T;E\\L'Q")		-(-";"-);-	(4,5)
98
99EA	(?%T;E\\L'Q"())		-(-)-		NOMATCH
100EA	(?%T;E\\L'Q"())		-(-;-)-		(2,4)
101EA	(?%T;E\\L'Q"())		-(-);-		(0,5)
102EA	(?%T;E\\L'Q"())		-(-;-);-	(2,4)
103EA	(?%T;E\\L'Q"())		-(-\;-);-	(0,8)
104EA	(?%T;E\\L'Q"())		-(-';'-);-	(4,5)
105EA	(?%T;E\\L'Q"())		-(-";"-);-	(4,5)
106
107EA	(?%D;E\\L'Q")		-(-)-		NOMATCH
108EA	(?%D;E\\L'Q")		-(-;-)-		(0,4)
109EA	(?%D;E\\L'Q")		-(-);-		(0,5)
110EA	(?%D;E\\L'Q")		-(-;-);-	(0,4)
111EA	(?%D;E\\L'Q")		-(-\;-);-	(0,8)
112EA	(?%D;E\\L'Q")		-(-';'-);-	(0,9)
113EA	(?%D;E\\L'Q")		-(-";"-);-	(0,9)
114
115EA	(?%D;E\\L'Q"())		-(-)-		NOMATCH
116EA	(?%D;E\\L'Q"())		-(-;-)-		(2,4)
117EA	(?%D;E\\L'Q"())		-(-);-		(0,5)
118EA	(?%D;E\\L'Q"())		-(-;-);-	(2,4)
119EA	(?%D;E\\L'Q"())		-(-\;-);-	(0,8)
120EA	(?%D;E\\L'Q"())		-(-';'-);-	(0,9)
121EA	(?%D;E\\L'Q"())		-(-";"-);-	(0,9)
122
123EA	(?%S;E\\L'Q")		-(-)-		NOMATCH
124EA	(?%S;E\\L'Q")		-(-;-)-		(0,4)
125EA	(?%S;E\\L'Q")		-(-);-		(0,5)
126EA	(?%S;E\\L'Q")		-(-;-);-	(0,4)
127EA	(?%S;E\\L'Q")		-(-\;-);-	(0,8)
128EA	(?%S;E\\L'Q")		-(-';'-);-	(0,9)
129EA	(?%S;E\\L'Q")		-(-";"-);-	(0,9)
130
131EA	(?%S;E\\L'Q"())		-(-)-		NOMATCH
132EA	(?%S;E\\L'Q"())		-(-;-)-		(2,4)
133EA	(?%S;E\\L'Q"())		-(-);-		(0,5)
134EA	(?%S;E\\L'Q"())		-(-;-);-	(0,7)
135EA	(?%S;E\\L'Q"())		-(-\;-);-	(0,8)
136EA	(?%S;E\\L'Q"())		-(-';'-);-	(0,9)
137EA	(?%S;E\\L'Q"())		-(-";"-);-	(0,9)
138
139EA	(?%T;OTE\\L'Q")		-(-)-		(0,5)
140EA	(?%T;OTE\\L'Q")		-(-;-)-		(0,4)
141EA	(?%T;OTE\\L'Q")		-(-);-		(0,5)
142EA	(?%T;OTE\\L'Q")		-(-;-);-	(0,4)
143EA	(?%T;OTE\\L'Q")		-(-\;-);-	(0,8)
144EA	(?%T;OTE\\L'Q")		-(-';'-);-	(4,5)
145EA	(?%T;OTE\\L'Q")		-(-";"-);-	(4,5)
146
147EA	(?%T;OTE\\L'Q"())	-(-)-		(0,5)
148EA	(?%T;OTE\\L'Q"())	-(-;-)-		(2,4)
149EA	(?%T;OTE\\L'Q"())	-(-);-		(0,5)
150EA	(?%T;OTE\\L'Q"())	-(-;-);-	(2,4)
151EA	(?%T;OTE\\L'Q"())	-(-\;-);-	(0,8)
152EA	(?%T;OTE\\L'Q"())	-(-';'-);-	(4,5)
153EA	(?%T;OTE\\L'Q"())	-(-";"-);-	(4,5)
154
155EA	(?%D;OTE\\L'Q")		-(-)-		(0,5)
156EA	(?%D;OTE\\L'Q")		-(-;-)-		(0,4)
157EA	(?%D;OTE\\L'Q")		-(-);-		(0,5)
158EA	(?%D;OTE\\L'Q")		-(-;-);-	(0,4)
159EA	(?%D;OTE\\L'Q")		-(-\;-);-	(0,8)
160EA	(?%D;OTE\\L'Q")		-(-';'-);-	(0,9)
161EA	(?%D;OTE\\L'Q")		-(-";"-);-	(0,9)
162
163EA	(?%D;OTE\\L'Q"())	-(-)-		(0,5)
164EA	(?%D;OTE\\L'Q"())	-(-;-)-		(2,4)
165EA	(?%D;OTE\\L'Q"())	-(-);-		(0,5)
166EA	(?%D;OTE\\L'Q"())	-(-;-);-	(2,4)
167EA	(?%D;OTE\\L'Q"())	-(-\;-);-	(0,8)
168EA	(?%D;OTE\\L'Q"())	-(-';'-);-	(0,9)
169EA	(?%D;OTE\\L'Q"())	-(-";"-);-	(0,9)
170
171EA	(?%S;OTE\\L'Q")		-(-)-		(0,5)
172EA	(?%S;OTE\\L'Q")		-(-;-)-		(0,4)
173EA	(?%S;OTE\\L'Q")		-(-);-		(0,5)
174EA	(?%S;OTE\\L'Q")		-(-;-);-	(0,4)
175EA	(?%S;OTE\\L'Q")		-(-\;-);-	(0,8)
176EA	(?%S;OTE\\L'Q")		-(-';'-);-	(0,9)
177EA	(?%S;OTE\\L'Q")		-(-";"-);-	(0,9)
178
179EA	(?%S;OTE\\L'Q"())	-(-)-		(0,5)
180EA	(?%S;OTE\\L'Q"())	-(-;-)-		(0,7)
181EA	(?%S;OTE\\L'Q"())	-(-);-		(0,5)
182EA	(?%S;OTE\\L'Q"())	-(-;-);-	(0,7)
183EA	(?%S;OTE\\L'Q"())	-(-\;-);-	(0,8)
184EA	(?%S;OTE\\L'Q"())	-(-';'-);-	(0,9)
185EA	(?%S;OTE\\L'Q"())	-(-";"-);-	(0,9)
186
187K	%(()		-(-)-			NOMATCH
188K	%(()")		-(-)-			NOMATCH
189
190K	%(())		-(-)-			(1,4)(1,4)
191K	%(())		-(-)-)-			(1,4)(1,4)
192K	%(())		-(-()-)-		(1,7)(1,7)
193K	%(())		-(-\)-)-		(1,5)(1,5)
194K	%(())		-(-\\)-)-		(1,6)(1,6)
195K	%(())		-(-(-)-			(3,6)(3,6)
196K	%(())		-(-(-)-)-		(1,8)(1,8)
197
198K	%(()[])		-(-[-]-)-		(1,8)(1,8)
199K	%(()[])		-[-(-)-]-		(3,6)(3,6)
200K	%(()[])		-(-[-)-]-		NOMATCH
201
202K	%([]())		-(-[-]-)-		(3,6)(3,6)
203K	%([]())		-[-(-)-]-		(1,8)(1,8)
204K	%([]())		-(-[-)-]-		NOMATCH
205
206K	%(()Q")		-(-")"-)-		(1,8)(1,8)
207K	%(()Q")		-(-\")"-)-		(1,9)(1,9)
208K	%(()Q")		-(-\")\"-)-		(1,10)(1,10)
209
210K	%(()Q'Q")	-(-'")'-)-		(1,9)(1,9)
211K	%(()Q'Q")	-(-\'")"-)-		NOMATCH
212K	%(()Q'Q")	-(-\'")"'-)-		(1,11)(1,11)
213K	%(()Q'Q")	-(-\"')'\"-)-		(1,12)(1,12)
214K	%(()Q'Q")	-(-')\''-)-		NOMATCH
215
216K	%(()L'Q")	-(-'")'-)-		(1,9)(1,9)
217K	%(()L'Q")	-(-\'")"-)-		NOMATCH
218K	%(()L'Q")	-(-\'")"'-)-		(1,11)(1,11)
219K	%(()L'Q")	-(-\"')'\"-)-		(1,12)(1,12)
220K	%(()L'Q")	-(-')\''-)-		NOMATCH
221
222K	%(()Q")		-(-")"-)-		(1,8)(1,8)
223K	%(()Q")		-(-\")"-)-		(1,9)(1,9)
224K	%(()Q")		-(-\")\"-)-		(1,10)(1,10)
225
226K	%(()E\\)	-(-\)-)-		(1,7)(1,7)
227K	%(()E\\)	-(-\\)-)-		(1,6)(1,6)
228K	%(()E\\Q")	-(-\")"-)-		(1,6)(1,6)
229K	%(()E\\Q")	-(-\")\"-)-		(1,6)(1,6)
230K	%(()E\\Q'Q")	-(-\'")"-)-		(1,10)(1,10)
231K	%(()E\\Q'Q")	-(-\"')'\"-)-		(1,12)(1,12)
232K	%(()E\\L'Q")	-(-\'")"-)-		(1,10)(1,10)
233K	%(()E\\L'Q")	-(-\"')'\"-)-		(1,12)(1,12)
234K	%(()E\\L'Q")	-(-\"')\'\"-)-		(1,13)(1,13)
235K	%(()E\\L'Q")	-(-\"')\'\"'-)-		NOMATCH
236
237K	%(()T;)		-(-;-)-			NOMATCH
238K	%(()T;)		-(-);-			(1,4)(1,4)
239K	%(()T;)		-(-)-			(1,4)(1,4)
240
241K	%(()D;)		-(-;-)-			NOMATCH
242K	%(()D;)		-(-);-			(1,4)(1,4)
243K	%(()D;)		-(-)-			(1,4)(1,4)
244
245K	%(()S;)		-(-;-)-			(1,6)(1,6)
246K	%(()S;)		-(-);-			(1,4)(1,4)
247K	%(()S;)		-(-)-			(1,4)(1,4)
248
249K	*%(())*			-((-))-		(0,7)(2,5)
250K	~(-g)*%(())*		-((-))-		(0,6)(1,6)
251K	~(-g:*)%(())*		-((-))-		(0,7)(1,6)
252Km	*%(())*			-((-))-		(0,6)(1,6)
253K	*(?)%(())*(?)		-((-))-		(0,7)(0,2)(2,5)(5,7)
254K	~(-g)*(?)%(())*(?)	-((-))-		(0,6)(0,1)(1,6)(6,6)
255K	~(-g:*(?))%(())*(?)	-((-))-		(0,7)(0,1)(1,6)(6,7)
256Km	*(?)%(())*(?)		-((-))-		(0,6)(0,1)(1,6)(6,6)
257
258K	+([[:alnum:]])*([[:space:]])(%(()))	call(a+b,x/(c/d),(0));	(0,21)(0,4)(4,4)(4,21)(4,21)
259
260K	%(T;)			NULL		NOMATCH
261K	%(D;)			NULL		NOMATCH
262K	%(S;)			NULL		NOMATCH
263
264K	%(T;OT)			NULL		NOMATCH
265K	%(D;OT)			NULL		NOMATCH
266K	%(S;OT)			NULL		NOMATCH
267
268K	%(T;)			-		NOMATCH
269K	%(D;)			-		NOMATCH
270K	%(S;)			-		NOMATCH
271
272K	%(T;OT)			-		(0,1)(0,1)
273K	%(D;OT)			-		(0,1)(0,1)
274K	%(S;OT)			-		(0,1)(0,1)
275
276K	%(T;)			--		NOMATCH
277K	%(D;)			--		NOMATCH
278K	%(S;)			--		NOMATCH
279
280K	%(T;OT)			--		(0,2)(0,2)
281K	%(D;OT)			--		(0,2)(0,2)
282K	%(S;OT)			--		(0,2)(0,2)
283
284K	%(T;E\\L'Q")		-(-)-		NOMATCH
285K	%(T;E\\L'Q")		-(-;-)-		(0,4)(0,4)
286K	%(T;E\\L'Q")		-(-);-		(0,5)(0,5)
287K	%(T;E\\L'Q")		-(-;-);-	(0,4)(0,4)
288K	%(T;E\\L'Q")		-(-\;-);-	(0,8)(0,8)
289K	%(T;E\\L'Q")		-(-';'-);-	(4,5)(4,5)
290K	%(T;E\\L'Q")		-(-";"-);-	(4,5)(4,5)
291
292K	%(T;E\\L'Q"())		-(-)-		NOMATCH
293K	%(T;E\\L'Q"())		-(-;-)-		(2,4)(2,4)
294K	%(T;E\\L'Q"())		-(-);-		(0,5)(0,5)
295K	%(T;E\\L'Q"())		-(-;-);-	(2,4)(2,4)
296K	%(T;E\\L'Q"())		-(-\;-);-	(0,8)(0,8)
297K	%(T;E\\L'Q"())		-(-';'-);-	(4,5)(4,5)
298K	%(T;E\\L'Q"())		-(-";"-);-	(4,5)(4,5)
299
300K	%(D;E\\L'Q")		-(-)-		NOMATCH
301K	%(D;E\\L'Q")		-(-;-)-		(0,4)(0,4)
302K	%(D;E\\L'Q")		-(-);-		(0,5)(0,5)
303K	%(D;E\\L'Q")		-(-;-);-	(0,4)(0,4)
304K	%(D;E\\L'Q")		-(-\;-);-	(0,8)(0,8)
305K	%(D;E\\L'Q")		-(-';'-);-	(0,9)(0,9)
306K	%(D;E\\L'Q")		-(-";"-);-	(0,9)(0,9)
307
308K	%(D;E\\L'Q"())		-(-)-		NOMATCH
309K	%(D;E\\L'Q"())		-(-;-)-		(2,4)(2,4)
310K	%(D;E\\L'Q"())		-(-);-		(0,5)(0,5)
311K	%(D;E\\L'Q"())		-(-;-);-	(2,4)(2,4)
312K	%(D;E\\L'Q"())		-(-\;-);-	(0,8)(0,8)
313K	%(D;E\\L'Q"())		-(-';'-);-	(0,9)(0,9)
314K	%(D;E\\L'Q"())		-(-";"-);-	(0,9)(0,9)
315
316K	%(S;E\\L'Q")		-(-)-		NOMATCH
317K	%(S;E\\L'Q")		-(-;-)-		(0,4)(0,4)
318K	%(S;E\\L'Q")		-(-);-		(0,5)(0,5)
319K	%(S;E\\L'Q")		-(-;-);-	(0,4)(0,4)
320K	%(S;E\\L'Q")		-(-\;-);-	(0,8)(0,8)
321K	%(S;E\\L'Q")		-(-';'-);-	(0,9)(0,9)
322K	%(S;E\\L'Q")		-(-";"-);-	(0,9)(0,9)
323
324K	%(S;E\\L'Q"())		-(-)-		NOMATCH
325K	%(S;E\\L'Q"())		-(-;-)-		(2,4)(2,4)
326K	%(S;E\\L'Q"())		-(-);-		(0,5)(0,5)
327K	%(S;E\\L'Q"())		-(-;-);-	(0,7)(0,7)
328K	%(S;E\\L'Q"())		-(-\;-);-	(0,8)(0,8)
329K	%(S;E\\L'Q"())		-(-';'-);-	(0,9)(0,9)
330K	%(S;E\\L'Q"())		-(-";"-);-	(0,9)(0,9)
331
332K	%(T;OTE\\L'Q")		-(-)-		(0,5)(0,5)
333K	%(T;OTE\\L'Q")		-(-;-)-		(0,4)(0,4)
334K	%(T;OTE\\L'Q")		-(-);-		(0,5)(0,5)
335K	%(T;OTE\\L'Q")		-(-;-);-	(0,4)(0,4)
336K	%(T;OTE\\L'Q")		-(-\;-);-	(0,8)(0,8)
337K	%(T;OTE\\L'Q")		-(-';'-);-	(4,5)(4,5)
338K	%(T;OTE\\L'Q")		-(-";"-);-	(4,5)(4,5)
339
340K	%(T;OTE\\L'Q"())	-(-)-		(0,5)(0,5)
341K	%(T;OTE\\L'Q"())	-(-;-)-		(2,4)(2,4)
342K	%(T;OTE\\L'Q"())	-(-);-		(0,5)(0,5)
343K	%(T;OTE\\L'Q"())	-(-;-);-	(2,4)(2,4)
344K	%(T;OTE\\L'Q"())	-(-\;-);-	(0,8)(0,8)
345K	%(T;OTE\\L'Q"())	-(-';'-);-	(4,5)(4,5)
346K	%(T;OTE\\L'Q"())	-(-";"-);-	(4,5)(4,5)
347
348K	%(D;OTE\\L'Q")		-(-)-		(0,5)(0,5)
349K	%(D;OTE\\L'Q")		-(-;-)-		(0,4)(0,4)
350K	%(D;OTE\\L'Q")		-(-);-		(0,5)(0,5)
351K	%(D;OTE\\L'Q")		-(-;-);-	(0,4)(0,4)
352K	%(D;OTE\\L'Q")		-(-\;-);-	(0,8)(0,8)
353K	%(D;OTE\\L'Q")		-(-';'-);-	(0,9)(0,9)
354K	%(D;OTE\\L'Q")		-(-";"-);-	(0,9)(0,9)
355
356K	%(D;OTE\\L'Q"())	-(-)-		(0,5)(0,5)
357K	%(D;OTE\\L'Q"())	-(-;-)-		(2,4)(2,4)
358K	%(D;OTE\\L'Q"())	-(-);-		(0,5)(0,5)
359K	%(D;OTE\\L'Q"())	-(-;-);-	(2,4)(2,4)
360K	%(D;OTE\\L'Q"())	-(-\;-);-	(0,8)(0,8)
361K	%(D;OTE\\L'Q"())	-(-';'-);-	(0,9)(0,9)
362K	%(D;OTE\\L'Q"())	-(-";"-);-	(0,9)(0,9)
363
364K	%(S;OTE\\L'Q")		-(-)-		(0,5)(0,5)
365K	%(S;OTE\\L'Q")		-(-;-)-		(0,4)(0,4)
366K	%(S;OTE\\L'Q")		-(-);-		(0,5)(0,5)
367K	%(S;OTE\\L'Q")		-(-;-);-	(0,4)(0,4)
368K	%(S;OTE\\L'Q")		-(-\;-);-	(0,8)(0,8)
369K	%(S;OTE\\L'Q")		-(-';'-);-	(0,9)(0,9)
370K	%(S;OTE\\L'Q")		-(-";"-);-	(0,9)(0,9)
371
372K	%(S;OTE\\L'Q"())	-(-)-		(0,5)(0,5)
373K	%(S;OTE\\L'Q"())	-(-;-)-		(0,7)(0,7)
374K	%(S;OTE\\L'Q"())	-(-);-		(0,5)(0,5)
375K	%(S;OTE\\L'Q"())	-(-;-);-	(0,7)(0,7)
376K	%(S;OTE\\L'Q"())	-(-\;-);-	(0,8)(0,8)
377K	%(S;OTE\\L'Q"())	-(-';'-);-	(0,9)(0,9)
378K	%(S;OTE\\L'Q"())	-(-";"-);-	(0,9)(0,9)
379