Perl-compatible Regular Expressions (revised API: PCRE2)

The HTML documentation for PCRE2 consists of a number of pages that are listed below in alphabetical order. If you are new to PCRE2, please read the first one first.

pcre2 Introductory page
pcre2-config Information about the installation configuration
pcre2api PCRE2's native API
pcre2build Building PCRE2
pcre2callout The callout facility
pcre2compat Compability with Perl
pcre2convert Experimental foreign pattern conversion functions
pcre2demo A demonstration C program that uses the PCRE2 library
pcre2grep The pcre2grep command
pcre2jit Discussion of the just-in-time optimization support
pcre2limits Details of size and other limits
pcre2matching Discussion of the two matching algorithms
pcre2partial Using PCRE2 for partial matching
pcre2pattern Specification of the regular expressions supported by PCRE2
pcre2perform Some comments on performance
pcre2posix The POSIX API to the PCRE2 8-bit library
pcre2sample Discussion of the pcre2demo program
pcre2serialize Serializing functions for saving precompiled patterns
pcre2syntax Syntax quick-reference summary
pcre2test The pcre2test command for testing PCRE2
pcre2unicode Discussion of Unicode and UTF-8/UTF-16/UTF-32 support

There are also individual pages that summarize the interface for each function in the library.

pcre2_callout_enumerate Enumerate callouts in a compiled pattern
pcre2_code_copy Copy a compiled pattern
pcre2_code_copy_with_tables Copy a compiled pattern and its character tables
pcre2_code_free Free a compiled pattern
pcre2_compile Compile a regular expression pattern
pcre2_compile_context_copy Copy a compile context
pcre2_compile_context_create Create a compile context
pcre2_compile_context_free Free a compile context
pcre2_config Show build-time configuration options
pcre2_convert_context_copy Copy a convert context
pcre2_convert_context_create Create a convert context
pcre2_convert_context_free Free a convert context
pcre2_converted_pattern_free Free converted foreign pattern
pcre2_dfa_match Match a compiled pattern to a subject string (DFA algorithm; not Perl compatible)
pcre2_general_context_copy Copy a general context
pcre2_general_context_create Create a general context
pcre2_general_context_free Free a general context
pcre2_get_error_message Get textual error message for error number
pcre2_get_mark Get a (*MARK) name
pcre2_get_match_data_size Get the size of a match data block
pcre2_get_ovector_count Get the ovector count
pcre2_get_ovector_pointer Get a pointer to the ovector
pcre2_get_startchar Get the starting character offset
pcre2_jit_compile Process a compiled pattern with the JIT compiler
pcre2_jit_free_unused_memory Free unused JIT memory
pcre2_jit_match Fast path interface to JIT matching
pcre2_jit_stack_assign Assign stack for JIT matching
pcre2_jit_stack_create Create a stack for JIT matching
pcre2_jit_stack_free Free a JIT matching stack
pcre2_maketables Build character tables in current locale
pcre2_maketables_free Free character tables
pcre2_match Match a compiled pattern to a subject string (Perl compatible)
pcre2_match_context_copy Copy a match context
pcre2_match_context_create Create a match context
pcre2_match_context_free Free a match context
pcre2_match_data_create Create a match data block
pcre2_match_data_create_from_pattern Create a match data block getting size from pattern
pcre2_match_data_free Free a match data block
pcre2_next_match Get the match parameters for the next match
pcre2_pattern_convert Experimental foreign pattern converter
pcre2_pattern_info Extract information about a pattern
pcre2_serialize_decode Decode serialized compiled patterns
pcre2_serialize_encode Serialize compiled patterns for save/restore
pcre2_serialize_free Free serialized compiled patterns
pcre2_serialize_get_number_of_codes Get number of serialized compiled patterns
pcre2_set_bsr Set \R convention
pcre2_set_callout Set up a callout function
pcre2_set_character_tables Set character tables
pcre2_set_compile_extra_options Set compile time extra options
pcre2_set_compile_recursion_guard Set up a compile recursion guard function
pcre2_set_depth_limit Set the match backtracking depth limit
pcre2_set_glob_escape Set glob escape character
pcre2_set_glob_separator Set glob separator character
pcre2_set_heap_limit Set the match backtracking heap limit
pcre2_set_match_limit Set the match limit
pcre2_set_max_pattern_compiled_length Set the maximum length of a compiled pattern
pcre2_set_max_pattern_length Set the maximum length of a pattern
pcre2_set_max_varlookbehind Set the maximum match length for a variable-length lookbehind
pcre2_set_newline Set the newline convention
pcre2_set_offset_limit Set the offset limit
pcre2_set_optimize Set an optimization directive
pcre2_set_parens_nest_limit Set the parentheses nesting limit
pcre2_set_recursion_limit Obsolete: use pcre2_set_depth_limit
pcre2_set_recursion_memory_management Obsolete function that (from 10.30 onwards) does nothing
pcre2_set_substitute_callout Set a substitution callout function
pcre2_set_substitute_case_callout Set a substitution case callout function
pcre2_substitute Match a compiled pattern to a subject string and do substitutions
pcre2_substring_copy_byname Extract named substring into given buffer
pcre2_substring_copy_bynumber Extract numbered substring into given buffer
pcre2_substring_free Free extracted substring
pcre2_substring_get_byname Extract named substring into new memory
pcre2_substring_get_bynumber Extract numbered substring into new memory
pcre2_substring_length_byname Find length of named substring
pcre2_substring_length_bynumber Find length of numbered substring
pcre2_substring_list_free Free list of extracted substrings
pcre2_substring_list_get Extract all substrings into new memory
pcre2_substring_nametable_scan Find table entries for given string name
pcre2_substring_number_from_name Convert captured string name to number