如何在Ruby中的两个字符之间获取字符串?

时间:2014-03-18 19:29:45

标签: ruby regex

好的,如果我的字符串是"Folder/New Folder/test.csv"这样的完整文件路径。如何在/'s之间获取所有内容?所以得到"New Folder"

谢谢!

4 个答案:

答案 0 :(得分:2)

根本不需要使用正则表达式...

> File.basename(File.dirname("Folder/New Folder/test.csv"))
=> "New Folder"

答案 1 :(得分:2)

您不必使用正则表达式来完成此任务。

字符串拆分

path = "Folder/New Folder/test.csv"
puts path.split('/')[1]

文件操作

path = File.dirname("Folder/New Folder/test.csv")
puts File.basename(path)

<强>正则表达式

path = "Folder/New Folder/test.csv"
puts path.scan(/\/(.*)\//)[0]

使用以上任何一种方式,您将获得以下输出:

#=> New Folder

答案 2 :(得分:1)

只做

File.dirname( "Folder/New Folder/test.csv" ).split('/')[-1]
# => "New Folder"

答案 3 :(得分:0)

如果您想使用正则表达式:

input = "Folder/New Folder/test.csv"
print input.scan(/\/(.*)\//).flatten