Namazu-win32-users-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: アンダーパーのついたフォルダーをインデックス作成の除外をしたい



竹迫です。

既に問題は解決されたようですが、
若干気になる点がありましたので、補足しておきます。

"morimoto tetsuji" <morimoto@xxxxxxxxxxxx> wrote:
> > $EXCLUDE_PATH = ".*\\/(log|ind|mapfile)\\/.*|.*\\/(_.*)";
> 
> 無事に更新が完了しました。ありがとうございました。
> 約5000ファイルのインデックスが削除されましたが、

上の正規表現では、_ から始まるディレクトリ名だけではなく、
_ から始まるファイル名も除外してしまいます。

今回の例では、

$EXCLUDE_PATH = "/(_.*|log|ind|mapfile)/";

と書いておくのが、すっきりしていてわかりやすいと思います。

以下に、$EXCLUDE_PATH の正規表現の動作を確認する
簡単なサンプルスクリプトを載せておきます。

-----------------------------------------------------------------------
#!/usr/bin/perl -w

my ($EXCLUDE_PATH, $target);

$EXCLUDE_PATH = "/(_.*|log|ind|mapfile)/";

while ($target = <DATA>) {
    chomp($target);
    if ($target =~ /$EXCLUDE_PATH/ ) {
        print "[除外]: $target\n"
    }
    else {
        print "[対象]: $target\n"
    }
}
1;
__END__
//C/Inetpub/wwwroot/samples/default.htm
//C/Inetpub/wwwroot/samples/log.html
//C/Inetpub/wwwroot/samples/_important.html
//C/Inetpub/wwwroot/samples/a_lot_of/files.html
//C/Inetpub/wwwroot/samples/index/file.txt
//C/Inetpub/wwwroot/samples/__hogehoge/path.html
//C/Inetpub/wwwroot/samples/_test/hoge1.html
//C/Inetpub/wwwroot/samples/_test/hoge2.html
//C/Inetpub/wwwroot/samples/log/error/log
//C/Inetpub/wwwroot/samples/ind/image.gif
//C/Inetpub/wwwroot/samples/mapfile/image.gif
-----------------------------------------------------------------------

興味がありましたら、$EXCLUDE_PATH の値を変えていろいろと試してみて下さい。

--
  広島市立大学 情報科学部 情報機械システム工学科 知能ロボット講座
     竹迫 良範 <takesako@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>