なかだです。

At Thu, 28 Feb 2002 11:37:06 +0900,
K.Kosako <kosako / sofnec.co.jp> wrote:
> > |Perlの (?<=pattern), (?<!pattern) のことでしょうか。
> > |もしそうなら、patternが固定の文字列だけなら可能と思いますが、
> > |一般的な正規表現に対しては、これから検討してみないとわかりません。
> > 
> > いや、固定の文字列だけで十分です。でも、それってマルチバイト
> > 文字列に対して可能ですか? 手元ではm17n_mcback()という機能を
> > 増やして対応しようかなあと思ってました。
> 
> 文字単位で左に移動する方法ですが、
> 今はm17n_islead(code, c)を使用して、isleadが成功するところまで
> 左に移動してから、また右に戻るという方法で実装しています。
> (改行などが全く無い長い文字列のときに遅くなる可能性もありますが、
> それしか方法がない?)

たぶんないと思います。

> Ruby M17N以外の環境では、中田さんがregex.cに行った修正を
> 利用しています。
> 
> m17n_mcback()があれば、エンコーディングによっては
> もっと効率が良くなる可能性もあると思いますし、
> APIとして親切なので、増やして頂ければありがたいです。

SJISではisleadを探す方法は効率が落ちると思います。mcbackは必要
じゃないでしょうか。

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦