如何在Java中的String类的split方法中用“|”拆分字符串

时间:2013-06-05 07:33:40

标签: java

我想在Java中用“|”拆分String。我找到了String类的split方法,它期望分割范围的正则表达式,但我不知道如何形成“|”的正则表达式。

例如,一个字符串是“AA | BB | CC”,我想只获得AA,BB和CC作为字符串数组。

7 个答案:

答案 0 :(得分:3)

String string = "AA|BB|CC";
String[] arr = string.split("\\|");
for (String s : arr) {
    System.out.println(s);
}

以上代码打印:

AA
BB
CC

答案 1 :(得分:2)

为此使用正则表达式,但| char是一个特殊字符,因此您必须使用它。

"AA | BB | CC".split("\\s*\\|\\s*");

答案 2 :(得分:1)

它是string.split("\\|")(管道必须转义)。

答案 3 :(得分:1)

|是正则表达式中的一个特殊字符,所以你必须逃避它。

尝试: string.split("\\|")

答案 4 :(得分:1)

传递给split方法的正则表达式应为:\\|

String text = "AA | BB | CC";
text.split("\\|")); // [AA ,  BB ,  CC]

如果你想摆脱这些空间,那么:

text.split("\\s*\\|\\s*")); // [AA, BB, CC]

答案 5 :(得分:1)

|是RegEX中的关键字。

String.split()将RegEx作为参数。你必须逃脱它。你可以这样做。

string.split(" \\| ");

答案 6 :(得分:1)

string.split("\\|")完成工作。

  • split()根据正则表达式
  • 拆分字符串
  • \需要将管道的正则表达式意义转换为“或”
  • 第二个反斜杠需要转义java编译器的第一个反斜杠。