我有正则表达式存储在DB - '\\\\E\\\\'
中,我使用java来获取它并将其与字符串匹配。
我认为,因为java从DB读取它知道自己逃避SQL特殊字符,我所需要的只是转义正则表达式特殊字符,所以这个表达式实际匹配'\\E\\'
。
问题是,它是'\E\'
而不是'\\E\\'
,为什么?
答案 0 :(得分:2)
如果要使用正则表达式匹配一个文字反斜杠字符,则需要在Java字符串中使用四个反斜杠。
\\
匹配一个字面反斜杠。"\\"
表示单个反斜杠。因此,您需要"\\\\\\\\E\\\\\\\\"
来构建与\\E\\
...