如何使用groovy从这些行获取文件名。
File file = new File(SOURCE_FILE_NAME).eachLine{line->
println line
}
得到这样的一行:
/usr/local/
/usr/local/testing.groovy
/usr/local/picture.jpg
期待输出:
testing.groovy
picture.jpg
感谢
答案 0 :(得分:1)
我不知道groovy,但你正在寻找的正则表达式是[^/]+$
答案 1 :(得分:1)
File file = new File(SOURCE_FILE_NAME).eachLine{ path ->
println org.apache.commons.lang.StringUtils.substringAfterLast(path, "/")
}
答案 2 :(得分:0)
println (new File(yourString).name)
这应该有效。
答案 3 :(得分:0)
也(没有外部代表)
["/usr/local", "/usr/local/testing.groovy",
"/usr/local/picture.jpg"].each { item->
def pat = item =~ /(\w*\/)*(.*)/
if(pat.matches()) {
println pat.group(2)
}
}