止まらないSkRegExp

一度いじり始めると止まらなくなるのが SkRegExp

今、私のもとには3つの SkRegExp がある。

一つは公開済みの version 1.1.17。

もう一つは先日ちょっと触れた SkRegExp2(非公開)。

最後の一つは version 1.2(非公開)。

最初の二つはいいとして version 1.2 について。

version 1.2 はTSkRegExp.MatchPrim メソッド内の nkLoop 部分が汚いと前から思っていて、そこをきれいに書き換えたバージョン。SkRegExp2 はこのソースから派生している。

最新のテストプログラムは通っているので 1.1.17 程度には安定している。

これを世に出したい。

なぜなら、SkRegExp2 をこのソースで共用できるかもしれないので。そうすればメンテナンスが楽だし。

だが、ちょっときれいに書き換えたぐらいでマイナーバージョンが上がるのもアレだ。少し手を加えることにする。

あまりにもカンタンだとモチベが上がらないし、かといって難しいと途中で投げてしまうに決まってる。

何か適当な課題はないかと、思いついたのが以下。

先読み、後読みの最適化

先読み、後読みは PCRE より遅い。まあ、まったく最適化してないから当然だ。

でも、これが必要な人はいるのか?

繰り返し時のキャプチャの最適化

繰り返しの処理中は、すべてのキャプチャバッファをスタックに退避している。

もちろん、対象となるキャプチャバッファだけを退避させた方がいいに決まっている。

どっちも地味だけど、まあ、とりあえずやってみっか。

コメントを残す

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