[#39325] File.fnmatch の改良について — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

はじめまして、山本です。

18 messages 2004/03/05

[#39429] trial version of Ruby/Tk — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

18 messages 2004/03/23
[#39454] Re: trial version of Ruby/Tk — "Shirai,Kaoru" <shirai@...> 2004/03/31

白井です。

[#39460] Re: trial version of Ruby/Tk — Hidetoshi NAGAI <nagai@...> 2004/04/01

永井@知能.九工大です.

[#39465] Re: trial version of Ruby/Tk — "Shirai,Kaoru" <shirai@...> 2004/04/01

白井です。

[#39466] Re: trial version of Ruby/Tk — Hidetoshi NAGAI <nagai@...> 2004/04/01

永井@知能.九工大です.

[#39453] Re: int/int in Ruby2? — Masaaki Sakano <mas@...>

坂野 正明です。

36 messages 2004/03/31
[#39455] Re: int/int in Ruby2? — NISHIMATSU Takeshi <t-nissie@...> 2004/03/31

西松と申します.

[#39470] Re: int/int in Ruby2? — Masaaki Sakano <mas@...> 2004/04/01

坂野 正明です。

[#39473] Re: int/int in Ruby2? — matz@... (Yukihiro Matsumoto) 2004/04/01

まつもと ゆきひろです

[#39484] Re: int/int in Ruby2? — Masaaki Sakano <mas@...> 2004/04/03

坂野 正明です。

[#39528] Re: int/int in Ruby2? — "T Akutsu" <locrian@...> 2004/04/09

あくつです。なんかわくわくしてきだぞ。(^^;)

[ruby-list:39338] Re: File.fnmatch の改良について

From: "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date: 2004-03-06 08:04:41 UTC
List: ruby-list #39338
山本です。

>こんにちは、なかむら(う)です。
>
>In message "[ruby-list:39336] Re: File.fnmatch    の改良について"
>    on Mar.06,2004 14:52:58, <ocean@m2.ccsnet.ne.jp> wrote:
>| 納得しました。情報ありがとうございました。
>| BeOSのbashで確認したところ、[\*] はやはりエスケープとして
>| 働いてました。[a-b-c] も、なかむらさんの仰るように [a-bc-] として働いてました。
>| (fnmatch(3) もそう働いているということでいいでしょうか?)
>
>この件に関してはそうです。

了解しました。

>| 第一に、FNM_PATHNAME のときの [a/c] の解釈です。
>| 
>| bash では [a/c] は '[a' + '/' + 'c]' として解釈していて、
>| 
>| E:\ruby-cvs>miniruby_1_8 -e "puts File.fnmatch('[a/c]', '[a/c]', File::FNM_PATHNAME)"
>| false
>| 
>| E:\ruby-cvs>miniruby_1_8 -e "puts File.fnmatch('[a/c]', 'a', File::FNM_PATHNAME)"
>| true
>| 
>| という File.fnmatch の動作と異なっています。fnmatch(3) はどう振舞ってますか?
>
>NetBSDのfnmatch(3)はRubyと同じです。

うーん・・・すみません、glob(3) はどう振舞ってますか?

  ・fnmatch(3) + FNM_PATHNAME と同じく、'[a/c]' ==> '[ac]' で 'a' か 'c' にマッチ
  ・bash と同じく、'[a/c]' は '[a' の下の 'c]' にマッチ

>| 第二に、DOSISH は不完全な気がするので、少なくともパターンでは '/' のみとしたいのですが、
>| こちらはどうでしょうか?
>
>パターン側もマッチ対象文字列側も / だけでいいと思ってます。
>パターン側はどうしようもないですし、そういう制限があるなら無
>理にマッチ対象文字列側の \ と同一視するのもめんどくさ...じゃ
>なくて、紛らわしいですし。

まつもとさんも  / だけでいいと仰ってましたし、とりあえず / だけにしてみます。

>| 第三に、FNM_PERIOD を復活させたほうがいいのでしょうか?それとも今のまま FNM_DOTMATCH でしょうか?
>
>先の私の主張から考えると、一貫性という面からはFNM_PERIODを復
>活させるべき、なんでしょうねえ。
>
>File.glob_match? ができれば、そっちは FNM_PERIOD|FNM_PATHNAME
>相当なんだから、File.fnmatchはfnmatch(3)との互換性を高めても
>かまわない、のかなあ...
>
>というわけでこれについては結論なしです ^^;

これも、現状のままにしておきます。


In This Thread