[英]How can I split a string by two delimiters?
我知道您可以使用myString.split("something")
分割字符串。 但是我不知道如何用兩個定界符來分割字符串。
例:
mySring = "abc==abc++abc==bc++abc";
我需要這樣的東西:
myString.split("==|++")
它的正則表達式是什么?
用這個 :
myString.split("(==)|(\\+\\+)")
如果必須使用兩個子字符串進行拆分,我將如何處理:
String mainString = "This is a dummy string with both_spaces_and_underscores!"
String delimiter1 = " ";
String delimiter2 = "_";
mainString = mainString.replaceAll(delimiter2, delimiter1);
String[] split_string = mainString.split(delimiter1);
將第一個定界符的所有第二個實例替換為第一個,然后將第一個定界符拆分。
注意:使用replaceAll
允許您將regexp用於delimiter2
。 因此,您實際上應該用一些與delimiter1
的regexp匹配的字符串替換delimiter2
所有匹配項。
你可以用這個
mySring = "abc==abc++abc==bc++abc";
String[] splitString = myString.split("\\W+");
正則表達式\\ W + --->它將根據非單詞字符分割字符串。
嘗試這個
String str = "aa==bb++cc";
String[] split = str.split("={2}|\\+{2}");
System.out.println(Arrays.toString(split));
答案是一個數組
[aa, bb, cc]
{2}與前一個字符匹配。 即=或+(轉義)。 匹配任一側
我在Java中轉義了\\,所以正則表達式實際上是={2}|\\+{2}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.