子串字符串的一部分

Sei*_*hin 0 java string android

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

我必须在这样的字符串中提取最后一个"/"之后的最后一部分:/ test/test2/test3

我只需要提取"test3".但我自己也找不到办法,所以我要求你的帮助.

Jon*_*eet 15

你只需要找到最后一个索引 /,然后取出子串:

int lastIndex = text.lastIndexOf('/');
String lastPart = text.substring(lastIndex + 1);
Run Code Online (Sandbox Code Playgroud)

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

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

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


Per*_*ror 10

使用String#lastIndexOf()

"/test/test2/test3".substring("/test/test2/test3".lastIndexOf("/")+1)
Run Code Online (Sandbox Code Playgroud)

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

File f = new File("/test/test2/test3");
System.out.println(f.getName());
Run Code Online (Sandbox Code Playgroud)

  • 该死的,你太快了. (3认同)