子串字符串的一部分

时间:2013-02-19 20:57:20

标签: java android string

首先,我想原谅这个问题是否已经讨论过了,如果你指出一个已经回答的问题,我会很高兴的!我找不到能帮助我的人。

我必须在这样的字符串中仅提取最后一个“/”之后的最后一部分: /测试/ TEST2 / TEST3

我只需要提取“test3”。但我自己也找不到办法,所以我在寻求你的帮助。

3 个答案:

答案 0 :(得分:15)

您只需找到last index of /,然后点击substring

int lastIndex = text.lastIndexOf('/');
String lastPart = text.substring(lastIndex + 1);

(其他选项当然存在 - 例如正则表达式和/分割......但上面是我要做的。)

请注意,因为我们必须使用+ 1来越过最后一个/,所以即使不是,它也有一个方便的属性任何斜杠:

String text = "no slashes here";
int lastIndex = text.lastIndexOf('/'); // Returns -1
String lastPart = text.substring(lastIndex + 1); // x.substring(0).equals(x)

答案 1 :(得分:10)

使用String#lastIndexOf()

"/test/test2/test3".substring("/test/test2/test3".lastIndexOf("/")+1)

还假设它是一个文件路径。您也可以使用File#getname()

File f = new File("/test/test2/test3");
System.out.println(f.getName());

答案 2 :(得分:2)

如果您还需要隔离字符串的其他部分,这将是最简单的方法。

String s="a/b/c"; //Works also for "a b c" and "a/b/c/"
String[] parts=s.split("/");
System.out.println(parts[parts.length-1]);