# 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_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