DriverTrac/venv/lib/python3.12/site-packages/polars/functions/escape_regex.py
2025-11-28 09:08:33 +05:30

30 lines
806 B
Python

from __future__ import annotations
import contextlib
from polars._utils.various import qualified_type_name
with contextlib.suppress(ImportError): # Module not available when building docs
import polars._plr as plr
import polars._reexport as pl
def escape_regex(s: str) -> str:
r"""
Escapes string regex meta characters.
Parameters
----------
s
The string whose meta characters will be escaped.
"""
if isinstance(s, pl.Expr):
msg = "escape_regex function is unsupported for `Expr`, you may want use `Expr.str.escape_regex` instead"
raise TypeError(msg)
elif not isinstance(s, str):
msg = f"escape_regex function supports only `str` type, got `{qualified_type_name(s)}`"
raise TypeError(msg)
return plr.escape_regex(s)