From: pegacorn@... Date: 2004-05-04T12:17:37+09:00 Subject: [ruby-list:39630] Re: Re [ruby-dev:23297] 大文字・小文字の区別がDOSISHかどうかで変わる、パス名マッチ関数の提案 From: matz@ruby-lang.org (Yukihiro Matsumoto) Date: Tue, 4 May 2004 00:21:14 +0900 Message-Id: <1083597647.604516.7687.nullmailer@picachu.netlab.jp> /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ここで問題にするのは、 > > * どのような機能が必要とされているのか > * それはどのクラスに所属すべきか > > の両方です。 > > で、私にはfnmatchというメソッドが持つ機能は汎用のパターンマッ > チャであると感じられます。こういう風にfnmatchを使っています、 > という意見はついぞ聞かれないのですが(まだ新しいメソッドです > し)、私ならファイル名とは直接関係ないワイルドカードマッチに > 使います。大文字小文字の扱いを環境依存にすることはそのような > 使い方を阻害するので採用したくありません。 そういう機能のメソッドがあれば 私もおそらく今後使うだろうと思いますし、 環境依存でない方が良いと思います。 で、後は名前の問題かと。 > で、主にそのような使い方を期待するならFileクラスのメソッドで > はない方がよいだろうという意見はごもっともです。Fileクラスで > 妥協するか、別の場所を探すか、それはそれで検討したいと思います。 > でも、Regexpではありえないと思いますけど。 Regexp に特にこだわりません。 パターンマッチといえば Regexp と思っただけですので。 ただ、後で思ったのですが、ruby の正規表現とは違う正規表現を ruby の正規表現に変換するメソッドがあっても良いのかなと思いました。 Regexp.sh_format('*.rb') => /.*\.rb$/ or Regexp.new('*.rb', Regexp::FORMAT_SH) => /.*\.rb$/ ---- 馬越