123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- .TH PCRE2_MATCH 3 "16 October 2018" "PCRE2 10.33"
- .SH NAME
- PCRE2 - Perl-compatible regular expressions (revised API)
- .SH SYNOPSIS
- .rs
- .sp
- .B #include <pcre2.h>
- .PP
- .nf
- .B int pcre2_match(const pcre2_code *\fIcode\fP, PCRE2_SPTR \fIsubject\fP,
- .B " PCRE2_SIZE \fIlength\fP, PCRE2_SIZE \fIstartoffset\fP,"
- .B " uint32_t \fIoptions\fP, pcre2_match_data *\fImatch_data\fP,"
- .B " pcre2_match_context *\fImcontext\fP);"
- .fi
- .
- .SH DESCRIPTION
- .rs
- .sp
- 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
- \fBmatch_data\fP block, which can be processed by functions with names that
- start with \fBpcre2_get_ovector_...()\fP or \fBpcre2_substring_...()\fP. The
- return from \fBpcre2_match()\fP 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:
- .sp
- \fIcode\fP Points to the compiled pattern
- \fIsubject\fP Points to the subject string
- \fIlength\fP Length of the subject string
- \fIstartoffset\fP Offset in the subject at which to start matching
- \fIoptions\fP Option bits
- \fImatch_data\fP Points to a match data block, for results
- \fImcontext\fP Points to a match context, or is NULL
- .sp
- A match context is needed only if you want to:
- .sp
- 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
- .sp
- The \fIlength\fP and \fIstartoffset\fP 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:
- .sp
- PCRE2_ANCHORED Match only at the first position
- PCRE2_COPY_MATCHED_SUBJECT
- On success, make a private subject copy
- PCRE2_ENDANCHORED Pattern can match only at end of subject
- PCRE2_NOTBOL Subject string is not the beginning of a line
- PCRE2_NOTEOL Subject string is not the end of a line
- PCRE2_NOTEMPTY An empty string is not a valid match
- .\" JOIN
- PCRE2_NOTEMPTY_ATSTART An empty string at the start of the subject
- is not a valid match
- PCRE2_NO_JIT Do not use JIT matching
- .\" JOIN
- PCRE2_NO_UTF_CHECK Do not check the subject for UTF
- validity (only relevant if PCRE2_UTF
- was set at compile time)
- .\" JOIN
- PCRE2_PARTIAL_HARD Return PCRE2_ERROR_PARTIAL for a partial
- match even if there is a full match
- .\" JOIN
- PCRE2_PARTIAL_SOFT Return PCRE2_ERROR_PARTIAL for a partial
- match if no full matches are found
- .sp
- For details of partial matching, see the
- .\" HREF
- \fBpcre2partial\fP
- .\"
- page. There is a complete description of the PCRE2 native API in the
- .\" HREF
- \fBpcre2api\fP
- .\"
- page and a description of the POSIX API in the
- .\" HREF
- \fBpcre2posix\fP
- .\"
- page.
|