From: n991059@... Date: 1997-05-22T12:53:58+09:00 Subject: [ruby-list:2996] sample program dir.rb not work? 平松です。rubyのソースに付いてくるサンプルプログラムに dir.rb というのがあります。引用すると、 # directory access # list all files but .*/*~/*.o dirp = Dir.open(".") for f in dirp $_ = f if (~/^\./ || ~/~$/ || ~/\.o/) print f, "\n" end end dirp.close です。 これは "."で始まらず、"~"や".o"で終らないファイルをリストするプロ グラムとして作ってあるようですが、実際には"."で始まり、"~"や".o" で終るファイルをリストしてしまいます。それで、for文の中のifを if (/^\./ || /~$/ || /\.o/) にしてみると、なんと動作が変わらなかったりします。 さて、ここで質問は、 `~' という文字は正規表現の否定のような 意味があるんじゃないんですか? ということです。マニュアルにも何も書いてなかったみたいですが、あっ てもなくても同じものなんですか? // 平松 祥史 n991059@yamata.icu.ac.jp // 国際基督教大学 3年 理学科 情報科学専修