Skip to main content

Module regex

Module regex 

Source
Expand description

小さなバックトラッキング正規表現エンジン。

パターンを命令列(バックトラッキング VM のバイトコード)へコンパイルし、再帰で実行する。 暴走(catastrophic backtracking)からカーネルを守るため 実行予算で打ち切る。

対応: リテラル・.・文字クラス [...]/[^...](範囲・\d\w\s 等)・アンカー ^ $・ 量指定子 * + ? {n} {n,} {n,m}(貪欲/非貪欲)・グループ (...)/(?:...)・選択 |・ 後方参照 \1・単語境界 \b \B。フラグ: i(無視) m(複数行) s(dotall) g(グローバル)。

Structs§

ClassData 🔒
Match
1 マッチ結果。captures[0] が全体、以降が各グループ(None は不参加)。
Parser 🔒
RegExpData
JS RegExp オブジェクトの内部状態(コンパイル済み + lastIndex)。
Regex

Enums§

ClassItem 🔒
文字クラスの 1 要素。
Inst 🔒
Node 🔒

Functions§

compile 🔒
eqc 🔒
is_word 🔒
item_match 🔒