2

Pattern.quote("pattern") 返回\Qpattern\E。如果字符串中没有元字符,是否真的有必要将字符串字面化?

4

2 回答 2

5

不,这不是必需的,但这就是实施者选择做的事情,可能是为了简化实施,并且因为不必要的成本\Q而且\E相当小。

在我的 JDK 中,唯一关心的Pattern.quote()是模式中是否已经存在。它不寻找任何其他特殊字符。\Q\E

于 2012-12-02T09:13:44.183 回答
1

我的猜测是它更简单,更有效。与其进行第一次检查是否有元字符,然后再进行第二次引用它们,只需假设存在元字符并始终引用。

于 2012-12-02T09:15:23.980 回答