使用函数split拆分此String。这是我的代码:
String data= "data^data";
String[] spli = data.split("^");
当我尝试在spli中只包含一个字符串时。看起来java在拆分时看不到“^”。有谁知道如何用字母“^”分割这个字符串?
修改
求助:P
答案 0 :(得分:7)
这是因为String.split
采用正则表达式,而不是文字字符串。您必须转义^
,因为它在正则表达式中具有不同的含义(在字符串的开头处锚定)。因此,拆分实际上将在第一个字符之前完成,从而为您提供完整的字符串。
使用\
转义正则表达式元字符,它必须是Java字符串中的\\
,所以
data.split("\\^")
应该有用。
答案 1 :(得分:3)
你需要逃避它,因为它需要reg-ex
\\^
答案 2 :(得分:3)
^
等特殊字符需要使用\
答案 3 :(得分:2)
这不起作用,因为.split()
期望它的参数是正则表达式。 “^”在正则表达式中有一个特殊的含义,所以不能按预期工作。为了让它工作,你需要逃避它。使用\\^
。
答案 4 :(得分:2)
原因是split
的参数是regular expression,因此“^”表示行的开头。所以你需要转义为ASCII- ^:使用参数“\\^
”。