繁体   English   中英

如何逃脱Java正则表达式 算子

[英]How to escape java regex | operator

我想问一些有关Java regex的问题,希望在这里能找到一些帮助。

我有一个看起来像"textX|textY|textZ"的字符串。 现在,我想在每个| Java中的字符。

我尝试过

string.split("\|");

但我只收到"Invalid escape sequence"错误。

我怎么可以拆分上面的字符串时,我使用| 作为分隔符?

您需要在Java中进行两次转义,所以请使用:

String[] tokens = string.split("\\|")

否则使用字符类:

String[] tokens = string.split("[|]");

您应该使用\\\\| 用于转义元字符。

在Java中,您需要两次对正则表达式转义字符:一次对字符串转义,一次对正则表达式转义。

尝试

string.split("\\|")

您必须使用双反斜杠\\\\string.split("\\\\|")

这是因为反斜杠是Java和regex的转义字符。 第一个转义第二个转义为Java,以便将“真实”反斜杠传递给regex。

简单地做

string.split("\\|");

在Java中,当我们转义时,我们通过两个反斜杠来实现

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM