apache.commons.StringUtils.replacePattern()
我想知道使用而不是java.lang.String.replaceAll()
函数的利弊。
我听说该replacePattern()
功能提高了性能,但我在任何 javaDocs 或任何流行的 java 论坛中都找不到。replacePattern()
请让我知道使用该方法是否还有其他优点。
apache.commons.StringUtils.replacePattern()
我想知道使用而不是java.lang.String.replaceAll()
函数的利弊。
我听说该replacePattern()
功能提高了性能,但我在任何 javaDocs 或任何流行的 java 论坛中都找不到。replacePattern()
请让我知道使用该方法是否还有其他优点。
这是来自 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 没有。