如何使用Java拆分具有特殊字符的字符串
如何使用Java拆分具有特殊字符的字符串 我有非常简单的验证码,如下所示: 5+10 我得到一个错误: 线程主java.util.regex.PatternSyntaxException中的异常: 索引0附近悬空的元字符“+” 如何修复它如何使用Java拆分具有特殊字符的字符串,java,regex,Java,Regex,如何使用Java拆分具有特殊字符的字符串 我有非常简单的验证码,如下所示: 5+10 我得到一个错误: 线程主java.util.regex.PatternSyntaxException中的异常: 索引0附近悬空的元字符“+” 如何修复它 谢谢。+是正则表达式中的保留字符,并将regExp作为参数。您可以通过\\+将其转义,现在匹配+。在方括号中键入它 String captcha = "5 + 10"; String[] captchaSplit = captcha.split("[+]");
谢谢。+是正则表达式中的保留字符,并将regExp作为参数。您可以通过\\+将其转义,现在匹配+。在方括号中键入它
String captcha = "5 + 10";
String[] captchaSplit = captcha.split("[+]");
如果需要使用多个特殊符号/字符拆分字符串,使用包含拆分器类的Guava库更方便:
您可能希望在*[+]*上拆分,以修剪空格的目标。
String captcha = "5 + 10";
String[] captchaSplit = captcha.split("[+]");
@Test
public void testSplitter() {
String str = "1***2***3";
List<String> list = Lists.newArrayList(Splitter.on("***").split(str));
Assert.assertThat(list.size(), is(3));
}