Name

PCRE — Perl-compatible regular expressions

Synopsis

#include <pcre.h>
int pcre_fullinfo( const pcre *code,
  const pcre_extra *extra,
  int what,
  void *where);
 

DESCRIPTION

This function returns information about a compiled pattern. Its arguments are:

 code                      Compiled regular expression
 extra                     Result of pcre_study() or NULL
 what                      What information is required
 where                     Where to put the information

The following information is available:

 PCRE_INFO_BACKREFMAX      Number of highest back reference
 PCRE_INFO_CAPTURECOUNT    Number of capturing subpatterns
 PCRE_INFO_DEFAULT_TABLES  Pointer to default tables
 PCRE_INFO_FIRSTBYTE       Fixed first byte for a match, or
                             -1 for start of string
                                or after newline, or
                             -2 otherwise
 PCRE_INFO_FIRSTTABLE      Table of first bytes (after studying)
 PCRE_INFO_JCHANGED        Return 1 if (?J) or (?-J) was used
 PCRE_INFO_LASTLITERAL     Literal last byte required
 PCRE_INFO_MINLENGTH       Lower bound length of matching strings
 PCRE_INFO_NAMECOUNT       Number of named subpatterns
 PCRE_INFO_NAMEENTRYSIZE   Size of name table entry
 PCRE_INFO_NAMETABLE       Pointer to name table
 PCRE_INFO_OKPARTIAL       Return 1 if partial matching can be tried
                             (always returns 1 after release 8.00)
 PCRE_INFO_OPTIONS         Option bits used for compilation
 PCRE_INFO_SIZE            Size of compiled pattern
 PCRE_INFO_STUDYSIZE       Size of study data

The yield of the function is zero on success or:

 PCRE_ERROR_NULL           the argument code was NULL
                           the argument where was NULL
 PCRE_ERROR_BADMAGIC       the "magic number" was not found
 PCRE_ERROR_BADOPTION      the value of what was invalid

There is a complete description of the PCRE native API in the pcreapi(3) page and a description of the POSIX API in the pcreposix(3) page.

COPYRIGHT

This manual page is taken from the PCRE library, which is distributed under the BSD license.