| .TH PCRE2_COMPILE 3 "30 October 2024" "PCRE2 10.48-DEV" |
| .SH NAME |
| PCRE2 - Perl-compatible regular expressions (revised API) |
| .SH SYNOPSIS |
| .rs |
| .sp |
| .B |
| .PP |
| .nf |
| .B pcre2_code *pcre2_compile(PCRE2_SPTR \fIpattern\fP, PCRE2_SIZE \fIlength\fP, |
| .B " uint32_t \fIoptions\fP, int *\fIerrorcode\fP, PCRE2_SIZE *\fIerroroffset,\fP" |
| .B " pcre2_compile_context *\fIccontext\fP);" |
| .fi |
| . |
| .SH DESCRIPTION |
| .rs |
| .sp |
| This function compiles a regular expression pattern into an internal form. Its |
| arguments are: |
| .sp |
| \fIpattern\fP A string containing expression to be compiled |
| \fIlength\fP The length of the string or PCRE2_ZERO_TERMINATED |
| \fIoptions\fP Primary option bits |
| \fIerrorcode\fP Where to put an error code |
| \fIerroffset\fP Where to put an error offset |
| \fIccontext\fP Pointer to a compile context or NULL |
| .sp |
| The length of the pattern and any error offset that is returned are in code |
| units, not characters. A NULL pattern with zero length is treated as an empty |
| string. 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 (see \fBpcre2_set_compile_recursion_guard()\fP), or to change one or |
| more of these parameters: |
| .sp |
| What \eR 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. |
| .sp |
| The primary option bits are: |
| .sp |
| PCRE2_ANCHORED Force pattern anchoring |
| PCRE2_ALLOW_EMPTY_CLASS Allow empty classes |
| PCRE2_ALT_BSUX Alternative handling of \eu, \eU, and \ex |
| PCRE2_ALT_CIRCUMFLEX Alternative handling of ^ in multiline mode |
| PCRE2_ALT_EXTENDED_CLASS Alternative extended character class syntax |
| PCRE2_ALT_VERBNAMES Process backslashes in verb names |
| PCRE2_AUTO_CALLOUT Compile automatic callouts |
| PCRE2_CASELESS Do caseless matching |
| PCRE2_DOLLAR_ENDONLY $ not to match newline at end |
| PCRE2_DOTALL . matches anything including NL |
| PCRE2_DUPNAMES Allow duplicate names for subpatterns |
| PCRE2_ENDANCHORED Pattern can match only at end of subject |
| PCRE2_EXTENDED Ignore white space and |
| PCRE2_FIRSTLINE Force matching to be before newline |
| PCRE2_LITERAL Pattern characters are all literal |
| PCRE2_MATCH_INVALID_UTF Enable support for matching invalid UTF |
| PCRE2_MATCH_UNSET_BACKREF Match unset backreferences |
| PCRE2_MULTILINE ^ and $ match newlines within data |
| PCRE2_NEVER_BACKSLASH_C Lock out the use of \eC in patterns |
| PCRE2_NEVER_UCP Lock out PCRE2_UCP, e.g. via |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |