English

Regular Expressions with Backreferences: Polynomial-Time Matching Techniques

Formal Languages and Automata Theory 2024-02-09 v2 Information Retrieval

Abstract

Regular expressions with backreferences (regex, for short), as supported by most modern libraries for regular expression matching, have an NP-complete matching problem. We define a complexity parameter of regex, called active variable degree, such that regex with this parameter bounded by a constant can be matched in polynomial-time. Moreover, we formulate a novel type of determinism for regex (on an automaton-theoretic level), which yields the class of memory-deterministic regex that can be matched in time O(|w|p(|r|)) for a polynomial p (where r is the regex and w the word). Natural extensions of these concepts lead to properties of regex that are intractable to check.

Keywords

Cite

@article{arxiv.1903.05896,
  title  = {Regular Expressions with Backreferences: Polynomial-Time Matching Techniques},
  author = {Markus L. Schmid},
  journal= {arXiv preprint arXiv:1903.05896},
  year   = {2024}
}
R2 v1 2026-06-23T08:07:51.671Z