chiark / gitweb /
pcre3 (1:8.30-5) unstable; urgency=low
[pcre3.git] / doc / pcre_fullinfo.3
1 .TH PCRE_FULLINFO 3
2 .SH NAME
3 PCRE - Perl-compatible regular expressions
4 .SH SYNOPSIS
5 .rs
6 .sp
7 .B #include <pcre.h>
8 .PP
9 .SM
10 .B int pcre_fullinfo(const pcre *\fIcode\fP, "const pcre_extra *\fIextra\fP,"
11 .ti +5n
12 .B int \fIwhat\fP, void *\fIwhere\fP);
13 .PP
14 .B int pcre16_fullinfo(const pcre16 *\fIcode\fP, "const pcre16_extra *\fIextra\fP,"
15 .ti +5n
16 .B int \fIwhat\fP, void *\fIwhere\fP);
17 .
18 .SH DESCRIPTION
19 .rs
20 .sp
21 This function returns information about a compiled pattern. Its arguments are:
22 .sp
23   \fIcode\fP                      Compiled regular expression
24   \fIextra\fP                     Result of \fBpcre[16]_study()\fP or NULL
25   \fIwhat\fP                      What information is required
26   \fIwhere\fP                     Where to put the information
27 .sp
28 The following information is available:
29 .sp
30   PCRE_INFO_BACKREFMAX      Number of highest back reference
31   PCRE_INFO_CAPTURECOUNT    Number of capturing subpatterns
32   PCRE_INFO_DEFAULT_TABLES  Pointer to default tables
33   PCRE_INFO_FIRSTBYTE       Fixed first data unit for a match, or
34                               -1 for start of string
35                                  or after newline, or
36                               -2 otherwise
37   PCRE_INFO_FIRSTTABLE      Table of first data units (after studying)
38   PCRE_INFO_HASCRORLF       Return 1 if explicit CR or LF matches exist
39   PCRE_INFO_JCHANGED        Return 1 if (?J) or (?-J) was used
40   PCRE_INFO_JIT             Return 1 after successful JIT compilation
41   PCRE_INFO_JITSIZE         Size of JIT compiled code
42   PCRE_INFO_LASTLITERAL     Literal last data unit required
43   PCRE_INFO_MINLENGTH       Lower bound length of matching strings
44   PCRE_INFO_NAMECOUNT       Number of named subpatterns
45   PCRE_INFO_NAMEENTRYSIZE   Size of name table entry
46   PCRE_INFO_NAMETABLE       Pointer to name table
47   PCRE_INFO_OKPARTIAL       Return 1 if partial matching can be tried
48                               (always returns 1 after release 8.00)
49   PCRE_INFO_OPTIONS         Option bits used for compilation
50   PCRE_INFO_SIZE            Size of compiled pattern
51   PCRE_INFO_STUDYSIZE       Size of study data
52 .sp
53 The \fIwhere\fP argument must point to an integer variable, except for the
54 following \fIwhat\fP values:
55 .sp
56   PCRE_INFO_DEFAULT_TABLES  const unsigned char *
57   PCRE_INFO_FIRSTTABLE      const unsigned char *
58   PCRE_INFO_NAMETABLE       PCRE_SPTR16           (16-bit library)
59   PCRE_INFO_NAMETABLE       const unsigned char * (8-bit library)
60   PCRE_INFO_OPTIONS         unsigned long int
61   PCRE_INFO_SIZE            size_t
62 .sp
63 The yield of the function is zero on success or:
64 .sp
65   PCRE_ERROR_NULL           the argument \fIcode\fP was NULL
66                             the argument \fIwhere\fP was NULL
67   PCRE_ERROR_BADMAGIC       the "magic number" was not found
68   PCRE_ERROR_BADOPTION      the value of \fIwhat\fP was invalid
69 .P
70 There is a complete description of the PCRE native API in the
71 .\" HREF
72 \fBpcreapi\fP
73 .\"
74 page and a description of the POSIX API in the
75 .\" HREF
76 \fBpcreposix\fP
77 .\"
78 page.