gpt4 book ai didi

java - 增加字符串中的数字值

转载 作者:搜寻专家 更新时间:2023-11-01 01:30:42 25 4
gpt4 key购买 nike

所以,我有一些带有数字和其他符号的字符串,我想将每个数字的值递增 1。例如:我想从这个字符串中接收“test2check3”。我可以只用方法“replaceAll”来做这个吗? (i.replaceAll("\d", ...) 类似的东西)?,而不使用诸如 indexOf、charAt...之类的方法

最佳答案

我不认为你可以用一个简单的 replaceAll(...) 来做到这一点,你必须写几行:

Pattern digitPattern = Pattern.compile("(\\d)"); // EDIT: Increment each digit.

Matcher matcher = digitPattern.matcher("test1check2");
StringBuffer result = new StringBuffer();
while (matcher.find())
{
matcher.appendReplacement(result, String.valueOf(Integer.parseInt(matcher.group(1)) + 1));
}
matcher.appendTail(result);
return result.toString();

这里可能有一些语法错误,但它会像那样工作。

编辑:您评论说每个数字必须单独递增 (abc12d -> abc23d) 因此模式应从 (\\d+) 更改为 (\\d)

编辑 2:根据 Matcher 类的要求,将 StringBuilder 更改为 StringBuffer

关于java - 增加字符串中的数字值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1453365/

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