2013-03-15 74 views
1

卸下正則表達式我有以下字符串:從字符串

/home/user/Documents/something/

我想在它的結束,除去*/部分。在這種情況下,這是something/。我怎樣才能用java來存檔?

+0

試試這個我已經在regularexpressplanet.com/+測試[AZ] +/$ – Pragnani 2013-03-15 12:00:24

回答

2

你不需要正則表達式來做到這一點,下面是一個使用字符串操作方法非正則表達式的解決方案:

String s = "/home/user/Documents/something/"; 
    String sub =s.substring(0, s.lastIndexOf("/")); 
    System.out.println(sub.substring(0,sub.lastIndexOf("/")+1)); 
+0

這幾乎是很好,但它刪除「\東西\」,而不是「東西「就像它應該。 – Kristopher 2013-03-15 12:10:52

+0

@soulreaver現在它會:) – PermGenError 2013-03-15 12:12:24

2

試試這個

str = str.replaceAll("[^/]*/$",""); 

沒有測試,應該工作。

0

您可以使用下面的代碼。它會從你的字符串刪除最後一個過去:

 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)); 
    }