字符串替换效率java

时间:2017-03-21 12:15:41

标签: java regex replace matcher

更换字符串中的字符/子字符串更有效。我搜索过,我找到了两种方法:

output = output.replaceAll(REGEX, REPLACEMENT);

Pattern p = Pattern.compile(REGEX);
Matcher m = p.matcher(output);
output = m.replaceAll(REPLACEMENT);

我的意思是效率:更少的时间,循环和/或新变量。

1 个答案:

答案 0 :(得分:4)

如果你看一下String方法replaceAll,它会在幕后做同样的事情:

public String replaceAll(String regex, String replacement) {
    return Pattern.compile(regex).matcher(this).replaceAll(replacement);
}

如果要多次使用相同的模式。选择第二个选项会更好,因为您不需要每次都重新编译它。