在Java中使用split时错误

shi*_*ley 1 java regex string split

我像这样在Java中使用split

String str = "Bx=1946^Cx=1043423";
String[] parts = str.split("^");
for (String part : parts)
    System.out.println(part);
Run Code Online (Sandbox Code Playgroud)

但事实证明,在拆分后,部件数组中只有一个元素,所以如果我想用"^"作为分隔符,我该怎么写?

谢谢

Sea*_*man 9

你需要逃避^,这在正则表达式(单词,行和其他的开头)中具有特殊含义:

String str = "Bx=1946^Cx=1043423";
String[] parts = str.split("\\^");
for (String part : parts)
    System.out.println(part);
Run Code Online (Sandbox Code Playgroud)

输出将是:

Bx=1946
Cx=1043423
Run Code Online (Sandbox Code Playgroud)