From: nobu.nakada@... Date: 2002-03-07T15:41:27+09:00 Subject: [ruby-dev:16251] Re: [Oni Guruma] look behind なかだです。 At Thu, 7 Mar 2002 15:08:03 +0900, Tanaka Akira wrote: > > 現在のlook-behindの実装では、固定の文字列だけでなく、 > > 文字数が固定であるパターンのうちの幾つかは使用できます。 > > 疑問なんですが、なんで右から左にパターンマッチを行なうようにしないんで > すか? > > 左から右にパターンマッチを行なえるんだから、右から左にパターンマッチを > 行なうようにすれば固定長なんていう話は出てこない気がするんですが。 > > 基本的には、パターンを反転(連結を逆順にする)して、文字列に対するアクセ > スの「一文字進める」というのを「一文字戻す」と変えるだけで済むと思うん > ですが。 「一文字戻す」という操作が実は結構コストが高いというのが問題に なりそうな気がします。UTF-8や、EUCでもすでに文字境界にあってい る場合などはかなり軽減できるはずですが、SJISでは無理でしょう。 いや、一度文字境界を検出した先頭の位置を覚えておけばできるかな? あとは、back-referenceとか。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦