[Mew-dist 07079] Re: 全部を選択するには
SAKAI Kiyotaka
ksakai at example.com
1998年 12月 11日 (金) 17:56:13 JST
>> In article <19981211173120U.matsui at example.com>, matsui at example.com writes:
> $head =~ //om
> が返ってきますので、//の中身が空だから直前のパターンが実行されているの
> ではないでしょうか? つまり意味のないコードには実は直前のパターンを必ず
> /:/にするという意味があったということで。(ヘッダにはたぶん必ず':'が含
> まれてますよね)
// でパターンマッチさせるとそういう意味になるのは知りませんでした。
すると、以下のパッチのように all, head, body で検索するときに pattern
が空であれば .* で検索するようにした方がよさそうですね。
# 結局は無条件にマッチするだけですので、「例外処理を正しく行う」程度の
# 意味しかありませんけど。
--
酒井 清隆 (E-mail: ksakai at example.com)
-------------- next part --------------
Index: IM/Grep.pm
===================================================================
RCS file: /home/ksakai/cvsroot/im-104/IM/Grep.pm,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 Grep.pm
--- Grep.pm 1998/12/10 03:56:08 1.1.1.1
+++ Grep.pm 1998/12/11 08:52:11
@@ -321,8 +321,10 @@
$pattern = make_japanese_pattern($pattern);
if ($field eq 'body') {
+ $pattern = ".*" unless $pattern;
$string = "\$$field =~ /$pattern/om$case_flag";
} elsif ($field =~ /^(all|head)$/) {
+ $pattern = ".*" unless $pattern;
$string = "\$$field =~ /$pattern/om$case_flag";
} elsif ($field ne '') {
$string = "\$head =~ /^$field:.*$pattern/om$case_flag";
Mew-dist メーリングリストの案内