docs/documentation/query-builder/phrase/regex-phrase.mdx
Regex phrase matches a specific sequence of regex queries. Think of it like a conjunction of regex queries, with positions and ordering of tokens enforced.
For example, the regex phrase query for ru.* shoes will match running shoes, but will not match shoes running.
from paradedb import ParadeDB, RegexPhrase
MockItem.objects.filter(
description=ParadeDB(RegexPhrase('ru.*', 'shoes'))
).values('description', 'rating', 'category')
from sqlalchemy import select
from sqlalchemy.orm import Session
from paradedb.sqlalchemy import search
stmt = (
select(MockItem.description, MockItem.rating, MockItem.category)
.where(search.regex_phrase(MockItem.description, ["ru.*", "shoes"]))
)
with Session(engine) as session:
session.execute(stmt).all()
MockItem.search(:description)
.regex_phrase("ru.*", "shoes")
.select(:description, :rating, :category)