忽略java字符串标记生成器中的最后一个分隔符

时间:2015-09-22 07:30:57

标签: java stringtokenizer

我有一个像这样的字符串" AddUser_test_NewUserForm_singinprocess"。

通过使用java字符串标记生成器,我希望输出如下:

增加会员

测试

NewUserForm_singinprocess

删除计是" _"我的主要目标是忽略最后一个" _" in" NewUserForm_singinprocess"作为一个分隔符。

我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

您可以使用String#split()轻松实现此目标:

public static void main(String args[]) throws Exception {
    String s = "AddUser_test_NewUserForm_singinprocess";
    System.out.println(Arrays.toString(s.split("_(?=.*_)")));
}

O / P:

[AddUser, test, NewUserForm_singinprocess]

答案 1 :(得分:0)

String strWithDelimeter = "Hello_Hi_Good_Morning";

    StringTokenizer strToken = new StringTokenizer(strWithDelimeter, "_");
    int noOfToken = strToken.countTokens();
    int count =1;
    String currentElement = null, lastElement = null,lastElement2 = null;
    while(strToken.hasMoreTokens()) {
        currentElement = strToken.nextToken().toString();
        if(count == noOfToken)
            lastElement = currentElement;
        else if(count == noOfToken-1)
            lastElement2 = currentElement;
        else 
            System.out.println(currentElement);
        count++;
    }
    System.out.println(lastElement2+"_"+lastElement);