文字列を調べて、正規表現に一致する文字列のすべてのインスタンスを置き換えようとしています。何らかの理由で私が使用するif
と、それは機能し、正規表現一致の1つの文字列インスタンスのみを置き換えます。に変更するif
とwhile
、それ自体に奇妙な置換が行われ、他の文字列に触れずに、最初の正規表現に一致する文字列が混乱します...
pattern = Pattern.compile(regex);
matcher = pattern.matcher(docToProcess);
while (matcher.find()) {
start = matcher.start();
end = matcher.end();
match = docToProcess.substring(start, end);
stringBuilder.replace(start, end, createRef(match));
docToProcess = stringBuilder.toString();
}