xref: /freebsd/contrib/mandoc/test-rewb-bsd.c (revision 01d4e2149e5566e5d9394913dc9fb032da259e0b)
1*61d06d6bSBaptiste Daroussin #include <sys/types.h>
2*61d06d6bSBaptiste Daroussin #include <stddef.h>
3*61d06d6bSBaptiste Daroussin #include <regex.h>
4*61d06d6bSBaptiste Daroussin 
5*61d06d6bSBaptiste Daroussin int
main(void)6*61d06d6bSBaptiste Daroussin main(void)
7*61d06d6bSBaptiste Daroussin {
8*61d06d6bSBaptiste Daroussin 	regex_t	 re;
9*61d06d6bSBaptiste Daroussin 
10*61d06d6bSBaptiste Daroussin 	if (regcomp(&re, "[[:<:]]word[[:>:]]", REG_EXTENDED | REG_NOSUB))
11*61d06d6bSBaptiste Daroussin 		return 1;
12*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "the word is here", 0, NULL, 0))
13*61d06d6bSBaptiste Daroussin 		return 2;
14*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "same word", 0, NULL, 0))
15*61d06d6bSBaptiste Daroussin 		return 3;
16*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "word again", 0, NULL, 0))
17*61d06d6bSBaptiste Daroussin 		return 4;
18*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "word", 0, NULL, 0))
19*61d06d6bSBaptiste Daroussin 		return 5;
20*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "wordy", 0, NULL, 0) != REG_NOMATCH)
21*61d06d6bSBaptiste Daroussin 		return 6;
22*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "sword", 0, NULL, 0) != REG_NOMATCH)
23*61d06d6bSBaptiste Daroussin 		return 7;
24*61d06d6bSBaptiste Daroussin 	if (regexec(&re, "reworded", 0, NULL, 0) != REG_NOMATCH)
25*61d06d6bSBaptiste Daroussin 		return 8;
26*61d06d6bSBaptiste Daroussin 	return 0;
27*61d06d6bSBaptiste Daroussin }
28