从字符串中删除正则表达式

时间:2013-03-15 11:54:07

标签: java regex string

我有以下字符串:

/home/user/Documents/something/

我想删除它末尾的*/部分。在这种情况下,这是something/。我怎么能用java来实现呢?

3 个答案:

答案 0 :(得分:2)

试试这个

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

没有测试,应该工作。

答案 1 :(得分:2)

您不需要正则表达式来执行此操作,下面是使用字符串操作方法的非正则表达式解决方案:

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

答案 2 :(得分: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));
    }