あれ?再帰が動くぞ?

昨日の記事で “(?|((?1)))+$” がマッチしないと書きました。

だから、再帰がうまく動いていないと書きましたが、どうも事情が違うようです。

と言うのは、今日、次のような正規表現を試してみたのです。

A(?(g*))z

これも再帰なんですが、これはいともカンタンにマッチしてしまいました。

つまり、問題は再帰じゃないんですね。空文字遷移の扱いなんだとわかりました。

そこまでわかったのはいいんですが、ではどうすればいいかは今のところ皆目見当がつきません。

この先どうしたものか・・・考え中。

コメントを残す

メールアドレスが公開されることはありません。