1#
2# Basic Regular Expression
3
4# kip comments
5$0 ~ /^#/ { next; }
6
7# skip those option specific to regexec/regcomp
8$2 ~ /[msnr$#p^]/ { next; }
9
10# skip empty lines
11$0 ~ /^$/ { next; }
12
13# debug
14#{ printf ("<%s> <%s> <%s> <%s>\n", $1, $2, $3, $4); }
15
16# subreg expresion
17NF >= 5 { next; }
18
19# errors
20NF == 3 {
21#	gsub (/@/, ",");
22# it means empty lines
23    gsub (/\"\"/, "");
24# escapes
25    gsub (/\\\'/, "\\\'\'");
26# error in regex
27	if (index ($2, "C") != 0)
28	{
29		if (index ($2, "b") != 0)
30			printf ("2@%s@%s\n", $1, $3);
31	}
32# erro no match
33	else
34	{
35		if (index ($2, "b") != 0)
36			printf ("1@%s@%s\n", $1, $3);
37	}
38	next;
39}
40
41# ok
42NF == 4 {
43# skip those magic cookies can't rely on echo to gnerate them
44    if (match($3, /[NSTZ]/))
45        next;
46
47#	gsub (/@/, ",");
48# it means empty lines
49    gsub (/\"\"/, "");
50# escape escapes
51    gsub (/\\\'/, "\\\'\'");
52
53	if (index ($2, "b") != 0)
54		printf ("0@%s@%s\n", $1, $3);
55}
56