String.split(“*”)在Android Eclipse中返回异常
有没有解决方案......
答案 0 :(得分:8)
String#split("*")
应该抛出异常。 String#split
接受正则表达式字符串,"*"
是无效的正则表达式。 *
表示“前一项目的零或更多”,但之前没有项目。
如果您尝试按星号分割星号,请使用:split("\\*")
。有两个反斜杠,因为你需要将一个反斜杠传递给正则表达式解析器,告诉它*
是文字的,当然这是一个字符串,所以要得到一个反斜杠,你必须逃避它。因此,两个。
String[] splitOnAsterisk = "one*two*three".split("\\*");
答案 1 :(得分:4)
在这里完全猜测,但你试过逃避*
吗?即String.split("\*")
?还有什么想要拆分?
答案 2 :(得分:2)
改为
String[] s1 = s.split("\\*");
答案 3 :(得分:0)
你想:
String.split("[*]")
split函数采用正则表达式