Avoid substring allocation in StringUtils.replace

Closes gh-24023
This commit is contained in:
Juergen Hoeller
2019-11-19 14:53:30 +01:00
parent f190168095
commit ee2fe1deb1

View File

@@ -399,14 +399,14 @@ public abstract class StringUtils {
int pos = 0; // our position in the old string
int patLen = oldPattern.length();
while (index >= 0) {
sb.append(inString.substring(pos, index));
sb.append(inString, pos, index);
sb.append(newPattern);
pos = index + patLen;
index = inString.indexOf(oldPattern, pos);
}
// append any characters to the right of a match
sb.append(inString.substring(pos));
sb.append(inString, pos, inString.length());
return sb.toString();
}