私は次の文字列を持っています:
/home/user/Documents/something/
*/
最後の部分を削除したいのですが。この場合、これはsomething/
です。Javaでそれを達成するにはどうすればよいですか?
これを試して
str = str.replaceAll("[^/]*/$","");
テストしませんでした、動作するはずです。
これを行うために正規表現は必要ありません。以下は、文字列操作メソッドを使用した非正規表現ソリューションです。
String s = "/home/user/Documents/something/";
String sub =s.substring(0, s.lastIndexOf("/"));
System.out.println(sub.substring(0,sub.lastIndexOf("/")+1));
次のコードを使用できます。それはあなたの文字列から最後の過去を削除します:
String str = "/home/user/Documents/something/";
Pattern pattern1 = Pattern.compile("(/.+?/)(\\w+?/$)");
Matcher matcher1 = pattern1.matcher(str);
while (matcher1.find()) {
System.out.println(matcher1.group(1));
}