简体   繁体   English

如何在Java中使用*分割字符串?

[英]How to Split string using * in java?

My String has contains multiple * but i want to split using * at of the first index ~*{ of this regex but they have split all the sting which contains *? 我的字符串包含多个*,但是我想使用*在此正则表达式的第一个索引~*{中进行拆分,但它们已拆分了包含*的所有字符串。

Here is the current code: 这是当前代码:

String text="hdr_Tran_Id=CRDSUMMARY~*hdr_Ref_No=1~*res_Status=00000~*{\"ResErrMsg\":\"SUCCESS\",\"ResTxnRefCode\":\"CARDNUMLIST\",\"ResLocalTxnDtTime\":\"20190830173112\",\"ResCardNumList\":[{\"ResCardNumber\":\"47703601****5004\",\"ResStatusDesc\":\"OPEN NORMAL\",\"ResCardStatus\":\"00\",\"ResEMailId\":\"lokesh.v4@gmail.com\",\"ResBirthDate\":\"16-11-1987\"},{\"ResCardNumber\":\"60820101****2002\",\"ResStatusDesc\":\"OPEN NORMAL\",\"ResCardStatus\":\"00\",\"ResEMailId\":\"bhandarkarn@gmail.com\",\"ResBirthDate\":\"01-01-1950\"}";




public static String validation(String text){
    System.out.println(text);
    String[] newText=null;
    String finalText=null;
    if (text.contains("~")) {
        newText=text.split("~*\\{");
        System.out.println("length "+newText.length);
        finalText=newText[1];
    System.out.println("New Text "+newText);
    System.out.println("Final  Text "+finalText);
    return finalText;
}

You can use 您可以使用

newText=text.split("~*\\{", 2);

Check String.split(java.lang.String regex, int limit) for reference 检查String.split(java.lang.String regex,int limit)以供参考

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM