在String上进行拆分时遇到一个非常奇怪的问题。 下面代码的第二行崩溃了:
String[] parts1 = "2 xy 3".split("xy"); //OK!
String[] parts2 = "2 ** 3".split("**"); //CRASHES java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 1: **
答案 0 :(得分:5)
试试这个:
String[] parts2 = "2 ** 3".split("\\*\\*");
问题是*
在正则表达式模式中有特殊含义,因此解决方法是在*
有关正则表达式如何在java中工作的更多信息,SlideShare上的my slide可能很有用。