split String bye last found char

时间:2014-07-15 10:56:13

标签: java

如何通过java中最后找到的char来拆分一些String?

"(abcab, a)" should result {"abc","b"}
"(aklbamabcabdef, a)" should result {"aklbamabc","bdef"}

3 个答案:

答案 0 :(得分:1)

作业?

    String string="adacda";
    char toFind='d';
    String result=string.substring(string.lastIndexOf(toFind));
    System.out.println(result);

如果要使用正则表达式实现该目的,请使用

    /.*d([^d]*)/

让一切都超越了最后一次' d'例如第一个捕获组中的字符

http://regex101.com/r/vP3kT8/1

答案 1 :(得分:0)

鉴于分裂字符为'a',您可以执行以下操作:

String test = "abcab";
int idx = test.lastIndexOf('a');
return new String[] {test.substring(0x00,idx),test.substring(idx+0x01)};

或查看jdoodle demo

答案 2 :(得分:0)

你可以试试这个。您正在查看lastIndexOf()

    String str="(abcab, a)";
    int lastIndex=str.lastIndexOf('a');
    System.out.println(str.substring(1,lastIndex));
    System.out.println(str.substring(lastIndex,str.length()-1));