RE_COMP(3C) Standard C Library Functions RE_COMP(3C)
NAME
re_comp, re_exec - compile and execute regular expressions
SYNOPSIS
#include <re_comp.h>
char *re_comp(
const char *string);
int re_exec(
const char *string);
DESCRIPTION
The
re_comp() function converts a regular expression string (RE) into
an internal form suitable for pattern matching. The
re_exec() function compares the string pointed to by the
string argument with
the last regular expression passed to
re_comp().
If
re_comp() is called with a null pointer argument, the current
regular expression remains unchanged.
Strings passed to both
re_comp() and
re_exec() must be terminated by
a null byte, and may include
NEWLINE characters.
The
re_comp() and
re_exec() functions support
simple regular expressions, which are defined on the
regexp(7) manual page. The
regular expressions of the form
\{m
\},
\{m,
\}, or
\{m,n
\} are not
supported.
RETURN VALUES
The
re_comp() function returns a null pointer when the string pointed
to by the
string argument is successfully converted. Otherwise, a
pointer to one of the following error message strings is returned:
No previous regular expression
Regular expression too long
unmatched \(
missing ]
too many \(\) pairs
unmatched \)
Upon successful completion,
re_exec() returns
1 if
string matches the
last compiled regular expression. Otherwise,
re_exec() returns
0 if
string fails to match the last compiled regular expression, and
-1 if
the compiled regular expression is invalid (indicating an internal
error).
ERRORS
No errors are defined.
USAGE
For portability to implementations conforming to X/Open standards
prior to SUS,
regcomp(3C) and
regexec(3C) are preferred to these
functions. See
standards(7).
SEE ALSO
grep(1),
regcmp(1),
regcmp(3C),
regcomp(3C),
regexec(3C),
regexpr(3GEN),
regexp(7),
standards(7) February 26, 1997 RE_COMP(3C)