如何使用||拆分字符串

pad*_*ist 3 java string split

当我拆分字符串时:

"EMP ID || EMP NAME || DESIGNATION"

我把每个字母分开:

[,E,M,P ,, I,D,|,|,E,M,P,N,A,M,E,|,|,D,E,S,I,G,N,A, T,I,O,N]

我的代码是

String strHeader="EMP ID||EMP NAME||DESIGNATION";
String[] arrStrColumnsInRow=strHeader.split("||");
Run Code Online (Sandbox Code Playgroud)

我怎样才能将它拆分为:

[EMP ID,EMP NAME,DESIGNATION]

dej*_*uth 15

使用

String[] arrStrColumnsInRow=strHeader.split("\\|\\|");
Run Code Online (Sandbox Code Playgroud)

这是因为参数split正则表达式,其中|是逻辑运算符.


And*_*ter 5

| 对于正则表达式是特殊的——你需要对它们进行转义:

String strHeader = "EMP ID||EMP NAME||DESIGNATION";
String[] arrStrColumnsInRow = strHeader.split("\\|\\|");
System.err.println(Arrays.toString(arrStrColumnsInRow));
Run Code Online (Sandbox Code Playgroud)

输出:

[EMP ID, EMP NAME, DESIGNATION]
Run Code Online (Sandbox Code Playgroud)