我想替换 StringBuilder 中的一些文本。这个怎么做?
在这段代码中我得到了java.lang.StringIndexOutOfBoundsException
与matcher.find()
:
StringBuilder sb = new StringBuilder(input);
Pattern pattern = Pattern.compile(str_pattern);
Matcher matcher = pattern.matcher(sb);
while (matcher.find())
sb.replace(matcher.start(), matcher.end(), "x");
让我们有一个总长度为 50 的 StringBuilder,然后将前 20 个字符更改为“x”。所以 StringBuilder 缩小了 19,对吧 - 但是初始输入 pattern.matcher(sb) 没有改变,所以最终 StringIndexOutOfBoundsException。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)