File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / pcre / doc / pcre_fullinfo.3
Revision 1.1.1.4 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Jul 22 08:25:56 2013 UTC (11 years ago) by misho
Branches: pcre, MAIN
CVS tags: v8_33, HEAD
8.33

    1: .TH PCRE_FULLINFO 3 "24 June 2012" "PCRE 8.30"
    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: .PP
   18: .B int pcre32_fullinfo(const pcre32 *\fIcode\fP, "const pcre32_extra *\fIextra\fP,"
   19: .ti +5n
   20: .B int \fIwhat\fP, void *\fIwhere\fP);
   21: .
   22: .SH DESCRIPTION
   23: .rs
   24: .sp
   25: This function returns information about a compiled pattern. Its arguments are:
   26: .sp
   27:   \fIcode\fP                      Compiled regular expression
   28:   \fIextra\fP                     Result of \fBpcre[16|32]_study()\fP or NULL
   29:   \fIwhat\fP                      What information is required
   30:   \fIwhere\fP                     Where to put the information
   31: .sp
   32: The following information is available:
   33: .sp
   34:   PCRE_INFO_BACKREFMAX      Number of highest back reference
   35:   PCRE_INFO_CAPTURECOUNT    Number of capturing subpatterns
   36:   PCRE_INFO_DEFAULT_TABLES  Pointer to default tables
   37:   PCRE_INFO_FIRSTBYTE       Fixed first data unit for a match, or
   38:                               -1 for start of string
   39:                                  or after newline, or
   40:                               -2 otherwise
   41:   PCRE_INFO_FIRSTTABLE      Table of first data units (after studying)
   42:   PCRE_INFO_HASCRORLF       Return 1 if explicit CR or LF matches exist
   43:   PCRE_INFO_JCHANGED        Return 1 if (?J) or (?-J) was used
   44:   PCRE_INFO_JIT             Return 1 after successful JIT compilation
   45:   PCRE_INFO_JITSIZE         Size of JIT compiled code
   46:   PCRE_INFO_LASTLITERAL     Literal last data unit required
   47:   PCRE_INFO_MINLENGTH       Lower bound length of matching strings
   48:   PCRE_INFO_NAMECOUNT       Number of named subpatterns
   49:   PCRE_INFO_NAMEENTRYSIZE   Size of name table entry
   50:   PCRE_INFO_NAMETABLE       Pointer to name table
   51:   PCRE_INFO_OKPARTIAL       Return 1 if partial matching can be tried
   52:                               (always returns 1 after release 8.00)
   53:   PCRE_INFO_OPTIONS         Option bits used for compilation
   54:   PCRE_INFO_SIZE            Size of compiled pattern
   55:   PCRE_INFO_STUDYSIZE       Size of study data
   56:   PCRE_INFO_FIRSTCHARACTER      Fixed first data unit for a match
   57:   PCRE_INFO_FIRSTCHARACTERFLAGS Returns
   58:                                   1 if there is a first data character set, which can
   59:                                     then be retrieved using PCRE_INFO_FIRSTCHARACTER,
   60:                                   2 if the first character is at the start of the data
   61:                                     string or after a newline, and
   62:                                   0 otherwise
   63:   PCRE_INFO_REQUIREDCHAR      Literal last data unit required
   64:   PCRE_INFO_REQUIREDCHARFLAGS Returns 1 if the last data character is set (which can then
   65:                               be retrieved using PCRE_INFO_REQUIREDCHAR); 0 otherwise
   66: .sp
   67: The \fIwhere\fP argument must point to an integer variable, except for the
   68: following \fIwhat\fP values:
   69: .sp
   70:   PCRE_INFO_DEFAULT_TABLES  const unsigned char *
   71:   PCRE_INFO_FIRSTTABLE      const unsigned char *
   72:   PCRE_INFO_NAMETABLE       PCRE_SPTR16           (16-bit library)
   73:   PCRE_INFO_NAMETABLE       PCRE_SPTR32           (32-bit library)
   74:   PCRE_INFO_NAMETABLE       const unsigned char * (8-bit library)
   75:   PCRE_INFO_OPTIONS         unsigned long int
   76:   PCRE_INFO_SIZE            size_t
   77:   PCRE_INFO_FIRSTCHARACTER  uint32_t
   78:   PCRE_INFO_REQUIREDCHAR    uint32_t
   79: .sp
   80: The yield of the function is zero on success or:
   81: .sp
   82:   PCRE_ERROR_NULL           the argument \fIcode\fP was NULL
   83:                             the argument \fIwhere\fP was NULL
   84:   PCRE_ERROR_BADMAGIC       the "magic number" was not found
   85:   PCRE_ERROR_BADOPTION      the value of \fIwhat\fP was invalid
   86: .P
   87: There is a complete description of the PCRE native API in the
   88: .\" HREF
   89: \fBpcreapi\fP
   90: .\"
   91: page and a description of the POSIX API in the
   92: .\" HREF
   93: \fBpcreposix\fP
   94: .\"
   95: page.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>