如何使用特殊字符 & |和 Split() 方法中的⊕?

How to use special characters & | and ⊕ in the Split() method?

我试过了

String text = "1&2⊕3|4";
String[] s = text.split("|⊕&");

然后什么都没发生,我也试过了

String text = "1&2⊕3|4";
String[] s = text.split("\|\⊕\&");

什么也没发生。那么,我该怎么办呢?

最简单的方法是通过添加方括号创建字符class

String text = "1&2⊕3|4";
String[] s = text.split("[|⊕&]");

您可以在 this excellent tutorial.

中阅读有关字符 classes 的更多信息

split 使用 Regex.

您在 String“|⊕&”上拆分。您需要 splitCharacter Class:

String[] s = text.split("[|⊕&]");

虽然您需要转义正则表达式中的特殊字符 |&,但如果它们位于字符 class 内,则您不需要。实际上只有右括号 ] 和反斜杠需要在字符 class 中转义(严格来说 - 需要转义,但如果它以 class).