Lew*_*909 0 ruby string filenames
这是我的代码
file_name = Dir['path/xml/test/*.txt']
file_name.to_s # => ["path/xml/test/test.txt"]
Run Code Online (Sandbox Code Playgroud)
我想回来:
"test"
Run Code Online (Sandbox Code Playgroud)
我可以使用下面的代码:
file_name = Dir['path/xml/test/*.txt']
file_name.to_s[15,60].gsub(/.txt["]/,"").gsub(/]/,"")
Run Code Online (Sandbox Code Playgroud)
但它不是很优雅.是否有更优雅的方式只返回文件名没有.txt和[]?
是.
File.basename(Dir['path/xml/test/*.txt'].first, ".txt")
# => "test"
Run Code Online (Sandbox Code Playgroud)
要为所有文件执行此操作,
Dir['path/xml/test/*.txt'].map{|e| File.basename(e, ".txt")}
Run Code Online (Sandbox Code Playgroud)