gpt4 book ai didi

java - 将替换字符串中的所有字符串替换为正则表达式?

转载 作者:行者123 更新时间:2023-12-01 17:43:51 24 4
gpt4 key购买 nike

这里是正文

<some string here could contain W or L letter><W1>123<W2>123<W3>123. 

希望更换

<W(number)> 

模式为

<L(number)>

模式。

String str = "<WLWLWL><W1><FS>123<W2><FS>345<E>";
System.out.println(str);

Pattern p = Pattern.compile("<[A-Z]\\d>");
Matcher m = p.matcher(str);

while(m.find()){
System.out.println(m.group());
}

str.replaceAll("<[A-Z]\\d>", "<L\\d>");
System.out.println(str);

我可以通过上面的代码准确找到我想要的内容,但替换不起作用。

我想替换字符串不包含正则表达式。那么最好的方法是什么?

最佳答案

我认为您正在寻找一个捕获组:

str = str.replaceAll("<[A-Z](\\d)>", "<L$1>");

注意开头的分配。 replaceAll() 不会修改字符串(字符串是不可变的);它返回一个新的。

关于java - 将替换字符串中的所有字符串替换为正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57779532/

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