---
name: "pcre2_code_copy_with_tables"
section: "3"
platform: "linux"
package: "pcre2"
version: "10.49-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pcre2_code_copy_with_tables"
---

# pcre2\_code\_copy\_with\_tables(3)

Perl-compatible regular expressions (revised API)

## NAME

PCRE2 - Perl-compatible regular expressions (revised API)

## SYNOPSIS

**#include \<pcre2.h\>**

```
pcre2_code *pcre2_code_copy_with_tables(const pcre2_code *code);
```

## DESCRIPTION

This function makes a copy of the memory used for a compiled pattern, excluding any memory used by the JIT compiler. Without a subsequent call to **pcre2\_jit\_compile()**, the copy can be used only for non-JIT matching. Unlike **pcre2\_code\_copy()**, a separate copy of the character tables is also made, with the new code pointing to it. This memory will be automatically freed when **pcre2\_code\_free()** is called. The yield of the function is NULL if *code* is NULL or if sufficient memory cannot be obtained.

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.
