[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    regex(3C) manual page Table of Contents

Name

regex, re_comp, re_exec - regular expression handler

Synopsis

#include <re_comp.h>

char *re_comp(const char *sp);

int re_exec(const 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 are described on the regexp(5) manual page.

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

grep(1) , regcmp(1) , regcmp(3G) , regexpr(3G) , regexp(5)

Notes

The regular expressions of the form \{m\}, \{m,\}, or \{m,n\} are not supported.


Table of Contents