0

apache.commons.StringUtils.replacePattern()我想知道使用而不是java.lang.String.replaceAll()函数的利弊。

我听说该replacePattern()功能提高了性能,但我在任何 javaDocs 或任何流行的 java 论坛中都找不到。replacePattern()请让我知道使用该方法是否还有其他优点。

4

1 回答 1

1

这是来自 OpenJDK 8的String.replaceAll的来源:

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

这是StringUtils.replacePattern的来源:

public static String replacePattern(final String source, final String regex, final String replacement) {
    return Pattern.compile(regex, Pattern.DOTALL).matcher(source).replaceAll(replacement);
}

这些方法之间的唯一区别是 replacePattern 传递了DOTALL 选项,而 replaceAll 没有。

于 2014-06-19T00:47:33.697 回答