1131554Stjr#
2131554Stjr# Basic Regular Expression
3131554Stjr
4131554Stjr# kip comments
5131554Stjr$0 ~ /^#/ { next; }
6131554Stjr
7131554Stjr# skip those option specific to regexec/regcomp
8131554Stjr$2 ~ /[msnr$#p^]/ { next; }
9131554Stjr
10131554Stjr# skip empty lines
11131554Stjr$0 ~ /^$/ { next; }
12131554Stjr
13131554Stjr# debug
14131554Stjr#{ printf ("<%s> <%s> <%s> <%s>\n", $1, $2, $3, $4); }
15131554Stjr
16131554Stjr# subreg expresion
17131554StjrNF >= 5 { next; }
18131554Stjr
19131554Stjr# errors
20131554StjrNF == 3 {
21131554Stjr#	gsub (/@/, ",");
22131554Stjr# it means empty lines
23131554Stjr    gsub (/\"\"/, "");
24131554Stjr# escapes
25131554Stjr    gsub (/\\\'/, "\\\'\'");
26131554Stjr# error in regex
27131554Stjr	if (index ($2, "C") != 0)
28131554Stjr	{
29131554Stjr		if (index ($2, "b") != 0)
30131554Stjr			printf ("2@%s@%s\n", $1, $3);
31131554Stjr	}
32131554Stjr# erro no match
33131554Stjr	else
34131554Stjr	{
35131554Stjr		if (index ($2, "b") != 0)
36131554Stjr			printf ("1@%s@%s\n", $1, $3);
37131554Stjr	}
38131554Stjr	next;
39131554Stjr}
40131554Stjr
41131554Stjr# ok
42131554StjrNF == 4 {
43131554Stjr# skip those magic cookies can't rely on echo to gnerate them
44131554Stjr    if (match($3, /[NSTZ]/))
45131554Stjr        next;
46131554Stjr
47131554Stjr#	gsub (/@/, ",");
48131554Stjr# it means empty lines
49131554Stjr    gsub (/\"\"/, "");
50131554Stjr# escape escapes
51131554Stjr    gsub (/\\\'/, "\\\'\'");
52131554Stjr
53131554Stjr	if (index ($2, "b") != 0)
54131554Stjr		printf ("0@%s@%s\n", $1, $3);
55131554Stjr}
56