使用“|”分割字符串

Pra*_*ady 2 java regex salesforce apex-code

我有一个字符串

|      859706 | Conficker infected host at 192.168.155.60    |        5744 |       7089 |        5 |                 4 | 1309714576 |
                1 | completed           | 
Run Code Online (Sandbox Code Playgroud)

我需要拆分 using | 当我给出以下拆分时,它只是管道( | )符号,我将数组的大小设为 0

columns=parts[i].split('|');
Run Code Online (Sandbox Code Playgroud)

其中部分和列是字符串数组

Pau*_*ora 6

| 是一个正则表达式特殊字符 - 你可以用反斜杠转义它,所以在java中,你会写

columns=parts[i].split("\\|"); //first backslash escapes the second for java
Run Code Online (Sandbox Code Playgroud)

编辑:如果您需要支持尾随空列,请不要忘记使用

columns=parts[i].split("\\|", -1);
Run Code Online (Sandbox Code Playgroud)