将字符串拆分为多个管道符号

splitting a string over multiple pipe signs

非常尴尬,但我无法在管道上拆分包含多个管道的字符串:

45 ||| naive but I cannot split a string containing

这个失败了,我不知道为什么:

String split[] = st.split("\|\|\|");
System.out.println(split[1]);
Output: 5

我期望的是:

naive but I cannot split a string containing

有什么意见吗?

我运行这段代码,这是我得到的:

String str = "45 ||| naive but I cannot split a string containing";
System.out.println(Arrays.toString(str.split("\|\|\|")));

Output :
[45 , naive but I cannot split a string containing]

很明显,它正在拆分字符串。