我有一个字符串:
/abc/def/ghfj.doc
我想从中提取ghfj.doc,即在最后一个/之后的子字符串,或从右边的第一个/。
有人能帮帮忙吗?
我有一个字符串:
/abc/def/ghfj.doc
我想从中提取ghfj.doc,即在最后一个/之后的子字符串,或从右边的第一个/。
有人能帮帮忙吗?
当前回答
一个非常简单的String.split()实现:
String path = "/abc/def/ghfj.doc";
// Split path into segments
String segments[] = path.split("/");
// Grab the last segment
String document = segments[segments.length - 1];
其他回答
一个非常简单的String.split()实现:
String path = "/abc/def/ghfj.doc";
// Split path into segments
String segments[] = path.split("/");
// Grab the last segment
String document = segments[segments.length - 1];
String example = "/abc/def/ghfj.doc";
System.out.println(example.substring(example.lastIndexOf("/") + 1));
你都试过什么? 这很简单:
String s = "/abc/def/ghfj.doc";
s.substring(s.lastIndexOf("/") + 1)
我认为如果我们直接使用分裂函数会更好
String toSplit = "/abc/def/ghfj.doc";
String result[] = toSplit.split("/");
String returnValue = result[result.length - 1]; //equals "ghfj.doc"
用番石榴这样做:
String id="/abc/def/ghfj.doc";
String valIfSplitIsEmpty="";
return Iterables.getLast(Splitter.on("/").split(id),valIfSplitIsEmpty);
最终配置并使用Splitter
Splitter.on("/")
.trimResults()
.omitEmptyStrings()
...
还可以看看这篇关于番石榴分离器的文章和这篇关于番石榴迭代的文章