PCRE2 – Perl-compatible regular expressions (revised API)
Synopsis
#include <pcre2.h>
pcre2_code *pcre2_compile(PCRE2_SPTR pattern, PCRE2_SIZE length,
uint32_t options, int *errorcode, PCRE2_SIZE *erroroffset,
pcre2_compile_context *ccontext);
Description
This function compiles a regular expression pattern into an internal form. Its arguments are:
pattern A string containing expression to be compiled
length The length of the string or PCRE2_ZERO_TERMINATED
options Option bits
errorcode Where to put an error code
erroffset Where to put an error offset
ccontext Pointer to a compile context or NULL The length of the pattern and any error offset that is returned are in code units, not characters. A compile context is needed only if you want to provide custom memory allocation functions, or to provide an external function for system stack size checking, or to change one or more of these parameters:
What \R matches (Unicode newlines, or CR, LF, CRLF only);
PCRE2’s character tables;
The newline character sequence;
The compile time nested parentheses limit;
The maximum pattern length (in code units) that is allowed.
The additional options bits (see pcre2_set_compile_extra_options()) The option bits are:
PCRE2_ANCHORED Force pattern anchoring
PCRE2_ALLOW_EMPTY_CLASS Allow empty classes
PCRE2_ALT_BSUX Alternative handling of