在java String类中,matches测试字符串是否与正则表达式模式匹配。所以显然它是整个字符串对抗正则表达式模式,这是否意味着\A, \z, ^, $在这里是多余的?
String
matches
\A, \z, ^, $
如果没有,请提供示例,说明在这种情况下它们不是多余的原因。
除非你激活multiline mode,否则它们是多余的,在这种情况下,^和$将匹配单个行的开头和结尾而不是整个输入。
^
$
您可以在使用String#matches时使用正则表达式中的嵌入式标志表达式(?m)激活多行模式(通常在开头)。
String#matches
(?m)