README revision 1.1 1 1.1 pgoyette regular expression test set
2 1.1 pgoyette Lines are at least three fields, separated by one or more tabs. "" stands
3 1.1 pgoyette for an empty field. First field is an RE. Second field is flags. If
4 1.1 pgoyette C flag given, regcomp() is expected to fail, and the third field is the
5 1.1 pgoyette error name (minus the leading REG_).
6 1.1 pgoyette
7 1.1 pgoyette Otherwise it is expected to succeed, and the third field is the string to
8 1.1 pgoyette try matching it against. If there is no fourth field, the match is
9 1.1 pgoyette expected to fail. If there is a fourth field, it is the substring that
10 1.1 pgoyette the RE is expected to match. If there is a fifth field, it is a comma-
11 1.1 pgoyette separated list of what the subexpressions should match, with - indicating
12 1.1 pgoyette no match for that one. In both the fourth and fifth fields, a (sub)field
13 1.1 pgoyette starting with @ indicates that the (sub)expression is expected to match
14 1.1 pgoyette a null string followed by the stuff after the @; this provides a way to
15 1.1 pgoyette test where null strings match. The character `N' in REs and strings
16 1.1 pgoyette is newline, `S' is space, `T' is tab, `Z' is NUL.
17 1.1 pgoyette
18 1.1 pgoyette The full list of flags:
19 1.1 pgoyette - placeholder, does nothing
20 1.1 pgoyette b RE is a BRE, not an ERE
21 1.1 pgoyette & try it as both an ERE and a BRE
22 1.1 pgoyette C regcomp() error expected, third field is error name
23 1.1 pgoyette i REG_ICASE
24 1.1 pgoyette m ("mundane") REG_NOSPEC
25 1.1 pgoyette s REG_NOSUB (not really testable)
26 1.1 pgoyette n REG_NEWLINE
27 1.1 pgoyette ^ REG_NOTBOL
28 1.1 pgoyette $ REG_NOTEOL
29 1.1 pgoyette # REG_STARTEND (see below)
30 1.1 pgoyette p REG_PEND
31 1.1 pgoyette
32 1.1 pgoyette For REG_STARTEND, the start/end offsets are those of the substring
33 1.1 pgoyette enclosed in ().
34