ライブラリ
- ビルトイン (48)
クラス
- File (48)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - DOSISH 対応 (12)
- extname (12)
-
ruby 1
. 8 . 4 feature (12) - split (12)
検索結果
先頭5件
-
File
. basename(filename , suffix = "") -> String (18155.0) -
filename の一番後ろのスラッシュに続く要素を返します。もし、 引数 suffix が与えられて、かつそれが filename の末尾に 一致するなら、それを取り除いたものを返します。
...File.basename("ruby/ruby.c") #=> "ruby.c"
p File.basename("ruby/ruby.c", ".c") #=> "ruby"
p File.basename("ruby/ruby.c", ".*") #=> "ruby"
p File.basename("ruby/ruby.exe", ".*") #=> "ruby"
p File.basename("ruby/y.tab.c", ".*") #=> "y.tab"
//}
File.basename の動作は basename(3)......に従います。
//emlist[例][ruby]{
p File.basename("foo/bar/") # => "bar"
//}
@param filename ファイル名を表す文字列を指定します。
@param suffix サフィックスを文字列で与えます。'.*' という文字列を与えた場合、'*' はワイルドカードと......して働き
'.' を含まない任意の文字列にマッチします。
@see File.dirname, File.extname... -
File
. dirname(filename , level=1) -> String (18155.0) -
filename の一番後ろのスラッシュより前を文 字列として返します。スラッシュを含まないファイル名に対しては "."(カレントディレクトリ)を返します。
...ます。
//emlist[例][ruby]{
p File.dirname("dir/file.ext") # => "dir"
p File.dirname("file.ext") # => "."
//}
File.dirname の動作は dirname(3)
に従います。
//emlist[例][ruby]{
p File.dirname("foo/bar/") # => "foo"
p File.dirname("foo//bar") # => "foo"
//}
level......、最後のlevel個を取り除いた文字列を返します。
//emlist[levelを指定する例][ruby]{
File.dirname("/home/gumby/work/ruby.rb", 2) # => "/home/gumby"
File.dirname("/home/gumby/work/ruby.rb", 4) # => "/"
//}
@param filename ファイル名を表す文字列を指定します。......@param level 末尾からいくつ取り除くかを指定します。
@raise ArgumentError level が負の場合に発生します。
@see File.basename, File.extname... -
File
. dirname(filename) -> String (18143.0) -
filename の一番後ろのスラッシュより前を文 字列として返します。スラッシュを含まないファイル名に対しては "."(カレントディレクトリ)を返します。
...ます。
//emlist[例][ruby]{
p File.dirname("dir/file.ext") # => "dir"
p File.dirname("file.ext") # => "."
//}
File.dirname の動作は dirname(3)
に従います。
//emlist[例][ruby]{
p File.dirname("foo/bar/") # => "foo"
p File.dirname("foo//bar") # => "foo"
//}
@param......filename ファイル名を表す文字列を指定します。
@see File.basename, File.extname... -
ruby 1
. 8 . 4 feature (114.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
...>))
* ((<ruby 1.8.4 feature/File.basename [change]>))
* ((<ruby 1.8.4 feature/File.dirname [change]>))
* ((<ruby 1.8.4 feature/Dir.glob (Win全般) [bug]>))
* ((<ruby 1.8.4 feature/File.basename (Win全般) [change]>))
* ((<ruby 1.8.4 feature/File.dirname (Win全般) [bug]>))
* ((<ruby 1......le.split [change]
: File.basename [change]
: File.dirname [change]
#Tue Nov 22 14:46:57 2005 NAKAMURA Usaku <usa@ruby-lang.org>
#
# * file.c (rb_file_s_basename): skip slashes just after UNC top slashes.
#
# * test/ruby/test_path.rb (test_dirname, test_basename): follow new
#......spec. and add new tests.
UNCパスに対するFile.dirname・File.basename・File.splitの仕様
を変更した(UNCをサポートするプラットフォームのみ)。
File.split("//aaa") #=> old: ["//", "aaa"] new:["//aaa", "/"]
File.split("//aaa/") #=> old: ["//... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (54.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...らなかった場合は、ifnone の結果を返すようになりました。
=== File
: ((<File/File.basename>)) [CHANGE]
: ((<File/File.dirname>)) [CHANGE]
File.dirname と File.basename の動作が ((<SUSv3|URL:http://www.unix-systems.org/version3/online.html>)) に従うようになり......p File.dirname("foo/bar/")
p File.dirname("foo//bar")
=> ruby 1.6.8 (2002-12-24) [i586-linux]
"foo/bar"
"foo/"
=> ruby 1.8.0 (2003-05-02) [i586-linux]
"foo"
"foo"
p File.basename("foo/bar/")
p File.basename("foo//b......in32: map OS error to errno. [change]
: cygwin
cygwinでは常にバイナリモードになりました(((<ruby-dev:19583>)))
: ((<File/File.dirname>)) [CHANGE]
: ((<File/File.expand_path>)) [CHANGE]
: ((<File/File.join>)) [CHANGE]
DOSISHなプラットフォームでのドライブレタ... -
DOSISH 対応 (54.0)
-
DOSISH 対応 ruby version 1.7 では、DOSISH対応(DOS/Windows のパス名の扱いに対する変 更)が含まれています。(現在の)変更点を以下に示します。
...挙動について...
: File.dirname
パスセパレータとして従来の/に加えて\も認識するようになっています。
これに合わせて、マルチバイトで記述されたパス名への対応も行われています。
p File.dirname("C:\\foo\\bar")
=> ruby......4 (2001-06-04) [i586-mswin32]
"."
=> ruby 1.7.1 (2001-08-16) [i586-mswin32]
"C:\\foo"
p File.dirname("C:/foo")
p File.dirname("C:\\foo")
p File.dirname("C:foo")
=> ruby 1.6.4 (2001-06-04) [i586-mswin32]
"C:"
"."
"."
=> ruby 1.7.1 (2001-0......"C:\\"
"C:."
: File.basename
パスセパレータとして従来の/に加えて\も認識するようになっています。
これに合わせて、マルチバイトで記述されたパス名への対応も行われています。
p File.basename("C:\\foo\\bar")
=> ruby... -
File
. split(pathname) -> [String] (44.0) -
pathname を dirname とbasename に分割して、2 要 素の配列を返します。
...pathname を dirname とbasename に分割して、2 要
素の配列を返します。
//emlist[][ruby]{
[File.dirname(pathname), File.basename(pathname)]
//}
と同じです。
@param pathname パス名を表す文字列を指定します。... -
File
. extname(filename) -> String (12.0) -
ファイル名 filename の拡張子部分(最後の "." に続く文字列)を 返します。ディレクトリ名に含まれる "." や、ファイル名先頭の "." は拡張子の一部としては見なされません。filename に拡張子が含 まれない場合は空文字列を返します。
...tar.gz") # => ".gz"
p File.extname("foo/bar") # => ""
p File.extname("foo/.bar") # => ""
p File.extname("foo.txt/bar") # => ""
p File.extname(".foo") # => ""
//}
@param filename ファイル名を表す文字列を指定します。
@see File.basename, File.dirname......") # => ""
p File.extname(".foo") # => ""
# Windows の場合
p File.extname("foo.") # => ""
# Windows 以外の場合
p File.extname("foo.") # => "."
//}
@param filename ファイル名を表す文字列を指定します。
@see File.basename, File.dirname...