Rui Ueyama
rui31****@gmail*****
2006年 3月 5日 (日) 15:05:49 JST
Gaucheの正規表現に、PerlやPythonにみられる最近の 表現を追加してみました。 http://rui314.googlepages.com/gauche-0.8.7_pre1-re.patch このパッチで次の表現が使えるようになります。ただし、表現 を使えるというだけで、ほかの実装のような速度は期待できない 点に注意してください。 ・バックリファレンス - \n n番目の捕捉のカッコと同じ文字列がある場合に成功する 表現です。 ・名前つきの捕捉カッコ - (?<name>...) 捕捉のカッコに名前をつけて、細くされた文字列を名前で 参照できます。同じ名前を複数のカッコにつけると、成功 カッコの文字列が返ります。rxmatch-substringにname にシンボル渡すして、捕捉された文字列を得ることもでき ます。 名前つきの捕捉カッコはPerlにはありませんが、Pythonや 鬼車にはあります。 ・名前によるバックリファレンス - \k<name> \1や\2と同じように、名前つきのカッコに対するバックリファ レンスとして動きます。 ・後読み - (?<=re) または (?<!=re) 現在のポジションを進めずに、現在のポジションから文字列 の先頭に向かって、カッコの中の正規表現がマッチするか どうかを試すものです。 PerlやPythonと違ってreが固定長である必要はないです。 -- rui