xref: /freebsd-src/contrib/netbsd-tests/lib/libc/regex/data/subexp.in (revision c7aa572cacdeca83c35c12a378909d0b659300a9)
157718be8SEnji Cooper# subexpressions
257718be8SEnji Coopera(b)(c)d	-	abcd	abcd	b,c
357718be8SEnji Coopera(((b)))c	-	abc	abc	b,b,b
457718be8SEnji Coopera(b|(c))d	-	abd	abd	b,-
557718be8SEnji Coopera(b*|c|e)d	-	abbd	abbd	bb
657718be8SEnji Coopera(b*|c|e)d	-	acd	acd	c
757718be8SEnji Coopera(b*|c|e)d	-	ad	ad	@d
857718be8SEnji Coopera(b?)c		-	abc	abc	b
957718be8SEnji Coopera(b?)c		-	ac	ac	@c
1057718be8SEnji Coopera(b+)c		-	abc	abc	b
1157718be8SEnji Coopera(b+)c		-	abbbc	abbbc	bbb
1257718be8SEnji Coopera(b*)c		-	ac	ac	@c
1357718be8SEnji Cooper(a|ab)(bc([de]+)f|cde)	-	abcdef	abcdef	a,bcdef,de
14c0437644SKyle Evans# Begin FreeBSD
15*adeebf4cSKyle Evansa\(b|c\)d	b	ab|cd	ab|cd	b|c
16c0437644SKyle Evans# End FreeBSD
1757718be8SEnji Cooper# the regression tester only asks for 9 subexpressions
1857718be8SEnji Coopera(b)(c)(d)(e)(f)(g)(h)(i)(j)k	-	abcdefghijk	abcdefghijk	b,c,d,e,f,g,h,i,j
1957718be8SEnji Coopera(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)l	-	abcdefghijkl	abcdefghijkl	b,c,d,e,f,g,h,i,j,k
2057718be8SEnji Coopera([bc]?)c	-	abc	abc	b
2157718be8SEnji Coopera([bc]?)c	-	ac	ac	@c
2257718be8SEnji Coopera([bc]+)c	-	abc	abc	b
2357718be8SEnji Coopera([bc]+)c	-	abcc	abcc	bc
2457718be8SEnji Coopera([bc]+)bc	-	abcbc	abcbc	bc
2557718be8SEnji Coopera(bb+|b)b	-	abb	abb	b
2657718be8SEnji Coopera(bbb+|bb+|b)b	-	abb	abb	b
2757718be8SEnji Coopera(bbb+|bb+|b)b	-	abbb	abbb	bb
2857718be8SEnji Coopera(bbb+|bb+|b)bb	-	abbb	abbb	b
2957718be8SEnji Cooper(.*).*		-	abcdef	abcdef	abcdef
3057718be8SEnji Cooper(a*)*		-	bc	@b	@b
3157718be8SEnji Cooper
3257718be8SEnji Cooper# do we get the right subexpression when it is used more than once?
3357718be8SEnji Coopera(b|c)*d	-	ad	ad	-
3457718be8SEnji Coopera(b|c)*d	-	abcd	abcd	c
3557718be8SEnji Coopera(b|c)+d	-	abd	abd	b
3657718be8SEnji Coopera(b|c)+d	-	abcd	abcd	c
3757718be8SEnji Coopera(b|c?)+d	-	ad	ad	@d
3857718be8SEnji Coopera(b|c?)+d	-	abcd	abcd	@d
3957718be8SEnji Coopera(b|c){0,0}d	-	ad	ad	-
4057718be8SEnji Coopera(b|c){0,1}d	-	ad	ad	-
4157718be8SEnji Coopera(b|c){0,1}d	-	abd	abd	b
4257718be8SEnji Coopera(b|c){0,2}d	-	ad	ad	-
4357718be8SEnji Coopera(b|c){0,2}d	-	abcd	abcd	c
4457718be8SEnji Coopera(b|c){0,}d	-	ad	ad	-
4557718be8SEnji Coopera(b|c){0,}d	-	abcd	abcd	c
4657718be8SEnji Coopera(b|c){1,1}d	-	abd	abd	b
4757718be8SEnji Coopera(b|c){1,1}d	-	acd	acd	c
4857718be8SEnji Coopera(b|c){1,2}d	-	abd	abd	b
4957718be8SEnji Coopera(b|c){1,2}d	-	abcd	abcd	c
5057718be8SEnji Coopera(b|c){1,}d	-	abd	abd	b
5157718be8SEnji Coopera(b|c){1,}d	-	abcd	abcd	c
5257718be8SEnji Coopera(b|c){2,2}d	-	acbd	acbd	b
5357718be8SEnji Coopera(b|c){2,2}d	-	abcd	abcd	c
5457718be8SEnji Coopera(b|c){2,4}d	-	abcd	abcd	c
5557718be8SEnji Coopera(b|c){2,4}d	-	abcbd	abcbd	b
5657718be8SEnji Coopera(b|c){2,4}d	-	abcbcd	abcbcd	c
5757718be8SEnji Coopera(b|c){2,}d	-	abcd	abcd	c
5857718be8SEnji Coopera(b|c){2,}d	-	abcbd	abcbd	b
5957718be8SEnji Coopera(b+|((c)*))+d	-	abd	abd	@d,@d,-
6057718be8SEnji Coopera(b+|((c)*))+d	-	abcd	abcd	@d,@d,-
61