我正在尝试将所有。(句点)替换为关键字 XXX ,这些关键字位于大文本的字母数字字词中。
例如:I am trying to match a.b.c.d.e ...
预期输出:I am trying to match aXXXbXXXcXXXdXXXe ...
我使用的模式:(\w+)([\.]+)(\w+)
实际结果:I am trying to match aXXXb.cXXXd.e ...
如何在不使用任何代码/存根的情况下通过正则表达式获得预期输出。
答案 0 :(得分:1)
您可以使用外观:
str = str.replaceAll("(?<=[a-zA-Z0-9])\\.(?=[a-zA-Z0-9])", "XXX");
答案 1 :(得分:0)
为什么不做某些事情,如果你想改变一切。 -
str = str.replaceAll("\\.", "XXX");
如果你不想改变,请在下面。如果有任何第一个或最后一个索引 -
str = str.replaceAll("\\.", "XXX").replaceAll("^XXX", ".").replaceAll("XXX$", ".");