【发布时间】:2013-08-31 06:34:10
【问题描述】:
我对在 java 中使用正则表达式相当陌生。我的动机是用反斜杠转义所有出现的“*”。 这是我尝试过的声明:
String replacementStr= str.replaceAll("(?=\\[*])", "\\\\");
这似乎不起作用。经过一番修修补补,发现这是可行的。
String replacementStr= str.replaceAll("(?=[]\\[*])", "\\\\");
根据我对正则表达式的了解,我认为 '[]' 代表一个空字符类。我在这里错过了什么吗?有人可以帮我理解一下吗?
注意:我试用的目的是学习使用正则表达式的前瞻功能。虽然问题中所述的目的不保证使用前瞻,但我只是试图将其用于教育目的。抱歉没有说清楚!
【问题讨论】:
-
为什么要使用前瞻?这对我来说没有意义。