REGEX(3B) REGEX(3B)
re_comp, re_exec - regular expression handler
#include unistd.h
char *re_comp(const char *s);
int re_exec(const char *s);
Re_comp compiles a string into an internal form suitable for pattern
matching. Re_exec checks the argument string against the last string
passed to re_comp.
Re_comp returns 0 if the string s was compiled successfully; otherwise a
string containing an error message is returned. If re_comp is passed 0 or
a null string, it returns without changing the currently compiled regular
expression.
Re_exec returns 1 if the string s matches the last compiled regular
expression, 0 if the string s failed to match the last compiled regular
expression, and -1 if the compiled regular expression was invalid
(indicating an internal error).
The strings passed to both re_comp and re_exec may have trailing or
embedded newline characters; they are terminated by nulls. The regular
expressions recognized are described in the manual entry for ed(1), given
the above difference. However, re_comp does not handle range regular
expressions (\{m,n\}) supported by ed(1) and regcmp(3G).
Re_exec returns -1 for an internal error.
Re_comp returns one of the following strings if an error occurs:
No previous regular expression
Regular expression too long
unmatched \(
missing ]
too many \(\) pairs
unmatched \)
ed(1), ex(1), egrep(1), fgrep(1), grep(1), regcmp(3G).
PPPPaaaaggggeeee 1111 [ Back ]
|