pcre2_match
Name
pcre2_match - match a compiled pattern to a subject string (Perl compatible)
Synopsis
#include <pcre2.h>
int pcre2_match(const pcre2_code *code, PCRE2_SPTR subject,
PCRE2_SIZE length, PCRE2_SIZE start_offset,
uint32_t options, pcre2_match_data *match_data,
pcre2_match_context *mcontext);Description
This function matches a compiled regular expression against a given subject
string, using a matching algorithm that is similar to Perl’s. It returns
offsets to what it has matched and to captured substrings via the
match_data block, which can be processed by functions with names that
start with pcre2_get_ovector_...() or pcre2_substring_...(). The
return from pcre2_match() is one more than the highest numbered capturing
pair that has been set (for example, 1 if there are no captures), zero if the
vector of offsets is too small, or a negative error code for no match and other
errors. The function arguments are:
codePoints to the compiled pattern
subjectPoints to the subject string
lengthLength of the subject string
start_offsetOffset in the subject at which to start matching
optionsOption bits
match_dataPoints to a match data block, for results
mcontextPoints to a match context, or is
NULL
A match context is needed only if you want to:
Set up a callout function
Set a matching offset limit
Change the heap memory limit
Change the backtracking match limit
Change the backtracking depth limit
Set custom memory management specifically for the match
The length and start_offset values are code units, not characters.
The length may be given as PCRE2_ZERO_TERMINATED for a subject that is
terminated by a binary zero code unit. The options are:
For details of partial matching, see the
pcre2partial
page. There is a complete description of the PCRE2 native API in the
pcre2api
page and a description of the POSIX API in the
pcre2posix
page.