我想拆分以下字符串“Good ^ Evening”我使用拆分选项它不拆分值。请帮我。
这就是我一直在尝试的:
String Val = "Good^Evening";
String[] valArray = Val.Split("^");
答案 0 :(得分:31)
我假设你做了类似的事情:
String[] parts = str.split("^");
这不起作用,因为split
的参数实际上是regular expression,其中^
具有特殊含义。试试这个:
String[] parts = str.split("\\^");
\\
实际上等同于单个\
(第一个\
是字符串文字中的Java转义序列所必需的)。它是正则表达式中的一个特殊字符,意思是“按字面意思使用下一个字符,不要解释它的特殊含义”。
答案 1 :(得分:7)
您应该使用的正则表达式是“\ ^”,您将其写为"\\^"
作为Java字符串文字;即。
String[] parts = "Good^Evening".split("\\^");
正则表达式需要'\'转义,因为插入符号('^')是正则表达式语言中的元字符。第二个'\'转义是必需的,因为'\'是字符串文字中的转义。
答案 2 :(得分:0)
试试这个
String str = "Good^Evening";
String newStr = str.replaceAll("[^]+", "");