"XX09XX09XX09" 这段代码: String s = "09090-6ren">
gpt4 book ai didi

java - 使用 replaceAll 和正则表达式前置字符串

转载 作者:行者123 更新时间:2023-11-29 08:15:26 26 4
gpt4 key购买 nike

我不知道如何使用积极的前瞻来创建正则表达式。这个想法是在长字符串中的每两个字符前添加两个字符串。即

"090909" => "XX09XX09XX09"

这段代码:

String s = "090909";
String ns = s.replaceAll("(?=\\d\\d)", "XX");

...不起作用;输出是 XX0XX9XX0XX9XX09。但是这段代码有效:

String s = "090909";
String ns = s.replaceAll("(?=09)", "XX");

我对如何想出一个表达每两个字符向前看的表达式感到困惑。我是不是遗漏了一些界限或什么?

最佳答案

您可以使用以下内容:

String s = "090909";
String ns = s.replaceAll("(\\d\\d)", "XX$1");

() 将创建 capture ,并且 $1 访问捕获。

关于java - 使用 replaceAll 和正则表达式前置字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5188542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com