Namazu-devel-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: filename検索他修正
- From: Yukio USUDA <usuda@xxxxxxxxxx>
- Date: Wed, 10 Mar 2004 12:45:04 +0900
- X-ml-name: namazu-devel-ja
- X-mail-count: 03806
- References: <404E4D8D.E9343C5A@asahi-net.or.jp>
臼田です
Tadamasa Teranishi wrote:
> > > ・全角スペースを半角スペースに変換するルーチンの追加
> >
> > 気づいていて直していませんでした。ありがとうございます。
> > 正規表現の検索負荷がどの程度なのかわかりませんが
> > 同じマッチングを二回するのは損な気がします。
>
> それは少し感じていますので、一回で済ますことに異議はありません。
>
> ただ、できれば eucjp_z2h を呼ぶのは避けたいです。
> 可能な限り eucjp_zen2han_ascii で解決したいです。というのは、
> eucjp_z2h をその都度呼び出すのはパフォーマンス的にかなり悪い
> のです。
同パッケージ内でのサブルーチン呼び出しでも悪いものなのですね。
いろいろ速度アップにはノウハウがありそうです。
> # インライン化できるのかな?
>
> それはそうと、
略
> うまく動かないようですが。
> --
すみませんコピーペーストで書いたもので
でたらめでした。
sub eucjp_zen2han_ascii ($) {
my ($str) = @_;
if (util::islang("ja")) {
$str =~ s/([\xa1-\xfe][\xa1-\xfe]|\x8e[\xa1-\xdf]|\x8f[\xa1-\xfe][\xa1-\xfe])/
my $tmp = $1;
$tmp = ($tmp =~ m!\xa3([\xb0-\xb9\xc1-\xda\xe1-\xfa])! ? $1 & "\x7F" :
$tmp);
$tmp =~ m!\xa1\xa1! ? " " : $tmp;
/gse;
}
$str;
}
でどうでしょうか。
臼田幸生