2014-12-01 11:14:53 -05:00
|
|
|
.TH PCRE2_PATTERN_INFO 3 "01 December 2014" "PCRE2 10.00"
|
2014-10-21 12:33:30 -04:00
|
|
|
.SH NAME
|
|
|
|
PCRE2 - Perl-compatible regular expressions (revised API)
|
|
|
|
.SH SYNOPSIS
|
|
|
|
.rs
|
|
|
|
.sp
|
|
|
|
.B #include <pcre2.h>
|
|
|
|
.PP
|
|
|
|
.nf
|
|
|
|
.B int pcre2_pattern_info(const pcre2 *\fIcode\fP, uint32_t \fIwhat\fP, void *\fIwhere\fP);
|
|
|
|
.fi
|
|
|
|
.
|
|
|
|
.SH DESCRIPTION
|
|
|
|
.rs
|
|
|
|
.sp
|
|
|
|
This function returns information about a compiled pattern. Its arguments are:
|
|
|
|
.sp
|
2014-12-01 11:14:53 -05:00
|
|
|
\fIcode\fP Pointer to a compiled regular expression
|
|
|
|
\fIwhat\fP What information is required
|
|
|
|
\fIwhere\fP Where to put the information
|
2014-10-21 12:33:30 -04:00
|
|
|
.sp
|
2014-12-01 11:14:53 -05:00
|
|
|
The recognized values for the \fIwhat\fP argument, and the information they
|
|
|
|
request are as follows:
|
2014-10-21 12:33:30 -04:00
|
|
|
.sp
|
|
|
|
PCRE2_INFO_ALLOPTIONS Final options after compiling
|
|
|
|
PCRE2_INFO_ARGOPTIONS Options passed to \fBpcre2_compile()\fP
|
|
|
|
PCRE2_INFO_BACKREFMAX Number of highest back reference
|
2014-12-01 11:14:53 -05:00
|
|
|
PCRE2_INFO_BSR What \eR matches:
|
|
|
|
PCRE2_BSR_UNICODE: Unicode line endings
|
|
|
|
PCRE2_BSR_ANYCRLF: CR, LF, or CRLF only
|
2014-10-21 12:33:30 -04:00
|
|
|
PCRE2_INFO_CAPTURECOUNT Number of capturing subpatterns
|
|
|
|
PCRE2_INFO_FIRSTBITMAP Bitmap of first code units, or NULL
|
|
|
|
PCRE2_INFO_FIRSTCODEUNIT First code unit when type is 1
|
|
|
|
PCRE2_INFO_FIRSTCODETYPE Type of start-of-match information
|
|
|
|
0 nothing set
|
|
|
|
1 first code unit is set
|
|
|
|
2 start of string or after newline
|
|
|
|
PCRE2_INFO_HASCRORLF Return 1 if explicit CR or LF matches
|
|
|
|
exist in the pattern
|
|
|
|
PCRE2_INFO_JCHANGED Return 1 if (?J) or (?-J) was used
|
|
|
|
PCRE2_INFO_JITSIZE Size of JIT compiled code, or 0
|
|
|
|
PCRE2_INFO_LASTCODEUNIT Last code unit when type is 1
|
|
|
|
PCRE2_INFO_LASTCODETYPE Type of must-be-present information
|
|
|
|
0 nothing set
|
|
|
|
1 code unit is set
|
|
|
|
PCRE2_INFO_MATCHEMPTY 1 if the pattern can match an
|
|
|
|
empty string, 0 otherwise
|
|
|
|
PCRE2_INFO_MATCHLIMIT Match limit if set,
|
2014-12-01 11:14:53 -05:00
|
|
|
otherwise PCRE2_ERROR_UNSET
|
2014-10-21 12:33:30 -04:00
|
|
|
PCRE2_INFO_MAXLOOKBEHIND Length (in characters) of the longest
|
|
|
|
lookbehind assertion
|
|
|
|
PCRE2_INFO_MINLENGTH Lower bound length of matching strings
|
|
|
|
PCRE2_INFO_NAMEENTRYSIZE Size of name table entries
|
|
|
|
PCRE2_INFO_NAMECOUNT Number of named subpatterns
|
|
|
|
PCRE2_INFO_NAMETABLE Pointer to name table
|
|
|
|
PCRE2_CONFIG_NEWLINE Code for the newline sequence:
|
2014-12-01 11:14:53 -05:00
|
|
|
PCRE2_NEWLINE_CR
|
|
|
|
PCRE2_NEWLINE_LF
|
|
|
|
PCRE2_NEWLINE_CRLF
|
|
|
|
PCRE2_NEWLINE_ANY
|
|
|
|
PCRE2_NEWLINE_ANYCRLF
|
2014-10-21 12:33:30 -04:00
|
|
|
PCRE2_INFO_RECURSIONLIMIT Recursion limit if set,
|
|
|
|
otherwise PCRE2_ERROR_UNSET
|
|
|
|
PCRE2_INFO_SIZE Size of compiled pattern
|
|
|
|
.sp
|
2014-12-01 11:14:53 -05:00
|
|
|
If \fIwhere\fP is NULL, the function returns the amount of memory needed for
|
|
|
|
the requested information, in bytes. Otherwise, the \fIwhere\fP argument must
|
|
|
|
point to an unsigned 32-bit integer (uint32_t variable), except for the
|
|
|
|
following \fIwhat\fP values, when it must point to a variable of the type
|
|
|
|
shown:
|
2014-10-21 12:33:30 -04:00
|
|
|
.sp
|
2014-11-25 06:55:07 -05:00
|
|
|
PCRE2_INFO_FIRSTBITMAP const uint8_t *
|
2014-10-21 12:33:30 -04:00
|
|
|
PCRE2_INFO_JITSIZE size_t
|
|
|
|
PCRE2_INFO_NAMETABLE PCRE2_SPTR
|
|
|
|
PCRE2_INFO_SIZE size_t
|
|
|
|
.sp
|
|
|
|
The yield of the function is zero on success or:
|
|
|
|
.sp
|
|
|
|
PCRE2_ERROR_NULL the argument \fIcode\fP is NULL
|
|
|
|
PCRE2_ERROR_BADMAGIC the "magic number" was not found
|
|
|
|
PCRE2_ERROR_BADOPTION the value of \fIwhat\fP is invalid
|
|
|
|
PCRE2_ERROR_BADMODE the pattern was compiled in the wrong mode
|
|
|
|
PCRE2_ERROR_UNSET the requested information is not set
|
|
|
|
.P
|
|
|
|
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.
|