Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
PCRE2_PATTERN_INFO(3)	    Library Functions Manual	   PCRE2_PATTERN_INFO(3)

NAME
     PCRE2 - Perl-compatible regular expressions (revised API)

SYNOPSIS

     #include <pcre2.h>

     int pcre2_pattern_info(const pcre2_code *code, uint32_t what,
	void *where);

DESCRIPTION

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

       code	Pointer to a compiled regular expression pattern
       what	What information is required
       where	Where to put the information

     The recognized values for the what argument, and the information  they  re-
     quest are as follows:

       PCRE2_INFO_ALLOPTIONS	  Final options after compiling
       PCRE2_INFO_ARGOPTIONS	  Options passed to pcre2_compile()
       PCRE2_INFO_BACKREFMAX	  Number of highest backreference
       PCRE2_INFO_BSR		  What \R matches:
				    PCRE2_BSR_UNICODE: Unicode line endings
				    PCRE2_BSR_ANYCRLF: CR, LF, or CRLF only
       PCRE2_INFO_CAPTURECOUNT	  Number of capturing subpatterns
       PCRE2_INFO_DEPTHLIMIT	  Backtracking depth limit if set,
				    otherwise PCRE2_ERROR_UNSET
       PCRE2_INFO_EXTRAOPTIONS	  Extra options that were passed in the
				    compile context
       PCRE2_INFO_FIRSTBITMAP	  Bitmap of first code units, or NULL
       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_FIRSTCODEUNIT   First code unit when type is 1
       PCRE2_INFO_FRAMESIZE	  Size of backtracking frame
       PCRE2_INFO_HASBACKSLASHC   Return 1 if pattern contains \C
       PCRE2_INFO_HASCRORLF	  Return 1 if explicit CR or LF matches
				    exist in the pattern
       PCRE2_INFO_HEAPLIMIT	  Heap memory limit if set,
				    otherwise PCRE2_ERROR_UNSET
       PCRE2_INFO_JCHANGED	  Return 1 if (?J) or (?-J) was used
       PCRE2_INFO_JITSIZE	  Size of JIT compiled code, or 0
       PCRE2_INFO_LASTCODETYPE	  Type of must-be-present information
				    0 nothing set
				    1 code unit is set
       PCRE2_INFO_LASTCODEUNIT	  Last code unit when type is 1
       PCRE2_INFO_MATCHEMPTY	  1 if the pattern can match an
				    empty string, 0 otherwise
       PCRE2_INFO_MATCHLIMIT	  Match limit if set,
				    otherwise PCRE2_ERROR_UNSET
       PCRE2_INFO_MAXLOOKBEHIND   Length (in characters) of the longest
				    lookbehind assertion
       PCRE2_INFO_MINLENGTH	  Lower bound length of matching strings
       PCRE2_INFO_NAMECOUNT	  Number of named subpatterns
       PCRE2_INFO_NAMEENTRYSIZE   Size of name table entries
       PCRE2_INFO_NAMETABLE	  Pointer to name table
       PCRE2_CONFIG_NEWLINE	  Code for the newline sequence:
				    PCRE2_NEWLINE_CR
				    PCRE2_NEWLINE_LF
				    PCRE2_NEWLINE_CRLF
				    PCRE2_NEWLINE_ANY
				    PCRE2_NEWLINE_ANYCRLF
				    PCRE2_NEWLINE_NUL
       PCRE2_INFO_RECURSIONLIMIT  Obsolete synonym for PCRE2_INFO_DEPTHLIMIT
       PCRE2_INFO_SIZE		  Size of compiled pattern

     If  where is NULL, the function returns the amount of memory needed for the
     requested information, in bytes. Otherwise, the where argument  must  point
     to an unsigned 32-bit integer (uint32_t variable), except for the following
     what values, when it must point to a variable of the type shown:

       PCRE2_INFO_FIRSTBITMAP	  const uint8_t *
       PCRE2_INFO_JITSIZE	  size_t
       PCRE2_INFO_NAMETABLE	  PCRE2_SPTR
       PCRE2_INFO_SIZE		  size_t

     The yield of the function is zero on success or:

       PCRE2_ERROR_NULL 	  the argument code is NULL
       PCRE2_ERROR_BADMAGIC	  the "magic number" was not found
       PCRE2_ERROR_BADOPTION	  the value of what is invalid
       PCRE2_ERROR_BADMODE	  the pattern was compiled in the wrong mode
       PCRE2_ERROR_UNSET	  the requested information is not set

     There  is	a  complete  description of the PCRE2 native API in the pcre2api
     page and a description of the POSIX API in the pcre2posix page.

PCRE2 10.47			14 February 2019	   PCRE2_PATTERN_INFO(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pcre2_pattern_info&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help