我想通過字符數組來分割字符串, 所以我有這樣的代碼:分割字符串
String target = "hello,any|body here?";
char[] delim = {'|',',',' '};
String regex = "(" + new String(delim).replaceAll("(.)", "\\\\$1|").replaceAll("\\|$", ")");
String[] result = target.split(regex);
一切正常除非我想添加一個字符,如「Q」以DELIM []數組, 它拋出異常:
java.util.regex.PatternSyntaxException: Illegal/unsupported escape sequence near index 11
(\ |\,|\||\Q)
那麼,如何解決這個問題與非特殊字符的工作呢?
在此先感謝
+1不知道我們可以安全地使用類似'[\ Qdelims \ E]'的東西'。打算髮布類似的東西,但更符合邏輯的測試,但這是最簡單的答案。 – Pshemo