--- title: Regex --- Finds documents containing terms that match a specific regex pattern. ## Regex Syntax ParadeDB supports all regex constructs of the Rust [regex](https://docs.rs/regex/latest/regex/) crate, with the following exceptions: 1. Lazy quantifiers such as `+?` 2. Word boundaries such as `\b` Otherwise, the full syntax of the [regex](https://docs.rs/regex/latest/regex/) crate is supported, including all Unicode support and relevant flags. A list of regex flags and grouping options can be [found here](https://docs.rs/regex/latest/regex/#grouping-and-flags), which includes: - named and numbered capture groups - case insensitivity flag (`i`) - multi-line mode (`m`) ## Basic Usage ```sql Function Syntax SELECT description, rating, category FROM mock_items WHERE id @@@ paradedb.regex('description', '(plush|leather)'); ``` ```sql JSON Syntax SELECT description, rating, category FROM mock_items WHERE id @@@ '{ "regex": { "field": "description", "pattern": "(plush|leather)" } }'::jsonb; ```
Specifies the field within the document to search for the term. A regex pattern string. ## Wildcard Query The following query finds all documents that match a wildcard pattern. ```sql Function Syntax SELECT description, rating, category FROM mock_items WHERE id @@@ paradedb.regex('description', 'key.*rd'); ``` ```sql JSON Syntax SELECT description, rating, category FROM mock_items WHERE id @@@ '{ "regex": { "field": "description", "pattern": "key.*rd" } }'::jsonb; ```