gpt4 book ai didi

Java - 将数字添加到匹配的单词

转载 作者:行者123 更新时间:2023-11-29 06:59:03 24 4
gpt4 key购买 nike

我正在尝试为匹配词添加计数,如下所示:

Match word: "Text"

Input: Text Text Text TextText ExampleText

Output: Text1 Text2 Text3 Text4Text5 ExampleText6

我试过这个:

String text = "Text Text Text TextText ExampleText";
String match = "Text";
int i = 0;
while(text.indexOf(match)!=-1) {
text = text.replaceFirst(match, match + i++);
}

不起作用,因为它会永远循环,匹配保留在字符串中并且 IndexOf 永远不会停止。

你会建议我做什么?有更好的方法吗?

最佳答案

这是一个带有 StringBuilder 但不需要拆分的:

public static String replaceWithNumbers( String text, String match ) {
int matchLength = match.length();
StringBuilder sb = new StringBuilder( text );

int index = 0;
int i = 1;
while ( ( index = sb.indexOf( match, index )) != -1 ) {
String iStr = String.valueOf(i++);
sb.insert( index + matchLength, iStr );

// Continue searching from the end of the inserted text
index += matchLength + iStr.length();
}

return sb.toString();
}

关于Java - 将数字添加到匹配的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29250504/

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