regex(3B)
NAME
regex, re_comp, re_exec − regular expression handler
SYNOPSIS
/usr/ucb/cc [ flag ... ] file ...
char ∗re_comp( sp)
register char ∗sp;
int re_exec(p1)
register char ∗p1;
DESCRIPTION
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 a NULL pointer if the string sp 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 p1 matches the last compiled regular expression, 0 if the string p1 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 NULL characters. The regular expressions recognized are described in the manual entry for ed(1), given the above difference.
RETURN VALUES
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 \)
SEE ALSO
ed(1), ex(1), grep(1), regcmp(1), regcmp(3G), regexpr(3G)
NOTES
Use of these interfaces should be restricted to only applications written on BSD platforms. Use of these interfaces with any of the system libraries or in multi-thread applications is unsupported.
Sun Microsystems — Last change: 22 Feb 1993