我想问一下java正则表达式,希望我能在这里找到一些帮助。
我有一个类似"textX|textY|textZ"
的字符串。
现在我想在java中的每个|
字符上拆分它。
我用
尝试了string.split("\|");
但我刚收到"Invalid escape sequence"
错误。
当我使用|
作为分隔符时,如何拆分上面的字符串?
答案 0 :(得分:4)
您需要在Java中进行双重转义,因此请使用:
String[] tokens = string.split("\\|")
或者使用字符类:
String[] tokens = string.split("[|]");
答案 1 :(得分:2)
你应该使用\\|
来转义元字符。
答案 2 :(得分:2)
在Java中,你需要为正则表达式转义两次字符:一次用于字符串,一次用于正则表达式。
尝试
string.split("\\|")
答案 3 :(得分:2)
您必须使用双反斜杠\\
:string.split("\\|")
。
这是因为反斜杠是两者的转义字符:java和regex。第一个转义java的第二个,所以“真正的”反斜杠传递给正则表达式。
答案 4 :(得分:1)
简单地做
string.split("\\|");
当我们逃脱时,在java中的我们用两个反斜杠