从两个字符之间获取字符串

fay*_*yza 1 java string special-characters

我需要从两个字符之间获取字符串.我有这个

S= "10:21:35 |Manipulation       |Mémoire centrale   |MAJ Registre mémoire"
Run Code Online (Sandbox Code Playgroud)

它必须在变量中返回4个字符串:

a=10:21:35
b=Manipulation
c=Mémoire centrale
d=MAJ Registre mémoire
Run Code Online (Sandbox Code Playgroud)

T.J*_*der 6

String#split.由于它接受正则表达式字符串,并且|是正则表达式中的特殊字符,因此您需要将其转义(使用反斜杠).而且,由于\是在Java中字符串字面特殊字符,你需要逃脱,也一样,人们有时会感到迷惑.所以给出:

String S = "10:21:35 |Manipulation |Mémoire centrale |MAJ Registre mémoire";
Run Code Online (Sandbox Code Playgroud)

然后

String[] parts = S.split("\\|");
int index;
for (index = 0; index < parts.length; ++index) {
    System.out.println(parts[index]);
}
Run Code Online (Sandbox Code Playgroud)

会输出

10:21:35 
Manipulation 
Mémoire centrale 
MAJ Registre mémoire

(前三位尾随空格; trim必要时有空格.)