我有以下字符串
\Qpipe,name=office1\E
我正在使用一个不支持\Q和的简化正则表达式库\E.
我试着删除它们
s.replaceAll("\\Q", "").replaceAll("\\E", "")
Run Code Online (Sandbox Code Playgroud)
但是,我得到了错误 Caused by: java.util.regex.PatternSyntaxException: Illegal/unsupported escape sequence near index 1
\E
^
有任何想法吗?
cod*_*ict 14
\是Java字符串和正则表达式引擎中的特殊转义字符.要将文字传递\给正则表达式引擎,您需要\\\\在Java字符串中.所以尝试:
s.replaceAll("\\\\Q", "").replaceAll("\\\\E", "")
Run Code Online (Sandbox Code Playgroud)
或者,更简单的方法是使用replace带字符串而不是正则表达式的方法:
s.replace("\\Q", "").replace("\\E", "")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11676 次 |
| 最近记录: |