?=是匹配相应的字符串并且不替换@H_301_3@
我们举一个例子,@H_301_3@
String str="ssasss";@H_301_3@
我们想把其中的a改成b@H_301_3@
那么我们直接replaceAll("a","b");就好了。@H_301_3@
如果我想把其中的a改成ba呢?@H_301_3@
你或许会说replaceAll("a","ba");就可以了。。确实,这样确实没问题。@H_301_3@
但是我其实本意并不是想替换a的,我只是想在a前面插入一个b而已。按照这种思路应该怎么写呢?@H_301_3@
这时候就用到?=@H_301_3@
String replace = str.replaceAll("(?=a)","b");@H_301_3@
这样应该就可以了。结果显示为:ssbasss
@H_301_3@
那么如果我想在a的后面插入一个b呢?@H_301_3@
String replace = str.replaceAll("(?<=a)","b");@H_301_3@
就可以了。 @H_301_3@ 原文链接:https://www.f2er.com/regex/362367.html