Node:Matching POSIX Regexps, Next:Regexp Subexpressions, Previous:Flags for POSIX Regexps, Up:Regular Expressions
Once you have compiled a regular expression, as described in POSIX
Regexp Compilation, you can match it against strings using
regexec
. A match anywhere inside the string counts as success,
unless the regular expression contains anchor characters (^
or
$
).
int regexec (regex_t *compiled, char *string, size_t nmatch, regmatch_t matchptr [], int eflags) | Function |
This function tries to match the compiled regular expression
*compiled against string.
regexec returns 0 if the regular expression matches;
otherwise, it returns a nonzero value. See the table below for
what nonzero values mean. You can use regerror to produce an
error message string describing the reason for a nonzero value;
see Regexp Cleanup.
The argument eflags is a word of bit flags that enable various
options.
If you want to get information about what part of string actually
matched the regular expression or its subexpressions, use the arguments
matchptr and nmatch. Otherwise, pass 0 for
nmatch, and NULL for matchptr. See Regexp
Subexpressions.
|
regexec
accepts the following flags in the
eflags argument:
REG_NOTBOL
REG_NOTEOL
regexec
can return:
REG_NOMATCH
REG_ESPACE
regexec
ran out of memory.