Perl では、正規表現のデリミタでスラッシュ以外の文字が使えるようになってます。
if ($url =~ m#\Qhttp://miau.s9.xrea.com/blog/\E#) { ... }
みたいな感じでスラッシュが含まれる場合のマッチング等に便利なわけですけど。
萌ディタの Lex を作ろうとすると、これが結構厄介で。
というのも、それぞれのデリミタに状態を割り当てないといけないので、状態の数(30まで)が足りなくなったりして。
perl-substitution1、perl-substitution2 みたいに字句解析器をいくつも作れば済む話ではあるんだけど・・・あまりそういうことはやりたくないし。
とりあえず使用頻度の高そうなものだけ登録しようと思ったんだけど、どれが使用頻度高いのかな?という疑問が出てきた。
そんなわけで、ちょっと考えたことを書いてみました。
何かあればご意見くださいませ。
[Read More!]