0

まず、この問題がすでに議論されている場合は申し訳ありませんが、すでに回答済みの質問を指摘していただければ幸いです。私を助けるものを見つけることができませんでした。

このような文字列の最後の「/」の後の最後の部分だけを抽出する必要があります:/ test / test2 / test3

「test3」だけを抽出する必要があります。しかし、私は自分で道に迷うことができないので、あなたの助けを求めています。

4

3 に答える 3

15

の最後のインデックス を見つけて/、その後の部分文字列を取得するだけです。

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)
于 2013-02-19T20:58:49.330 に答える
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());
于 2013-02-19T20:58:35.297 に答える
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]);
于 2013-02-19T23:05:23.333 に答える