我有这个正则表达式:
^(([A-Z]:)|((\\|/){1,2}\w+)\$?)((\\|/)(\w[\w ]*.*))+\.([txt|exe]+)$
但每次我将它分配给任何字符串时,Eclipse 都会返回无效的转义序列,我插入了一个反斜杠,但它给我同样的错误。
如何在java中将上述表达式赋值给字符串?
最佳答案
用“\\\\”替换所有的“\\”。 Java 没有对正则表达式的语言支持。所以你需要“\\”从编译器得到一个反斜杠到字符串中。如果正则表达式应包含转义的反斜杠,则需要“\\\\”。
final String re = "^(([A-Z]:)|((\\\\|/){1,2}\\w+)\\$?)((\\\\|/)(\\w[\\w ]*.*))+\\.([txt|exe]+)$"
关于java - 由于转义序列错误,无法在 Java 中使用正则表达式,如何消除错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27365008/