找到子字符串,但正则表达式失败

时间:2012-08-22 12:08:51

标签: java regex

假设我有一些字符串,并对其运行以下测试:

response.indexOf("</p:panelGrid>");
response.matches(".*</p:panelGrid>.*");

indexOf如何找到子字符串(它不返回-1),但第二次测试中的正则表达式匹配?

在尝试编写测试时,我遇到了这个问题,该测试检查在使用Pax Web的JSF中是否正确呈现了taglib。我无法在此测试之外重现此行为。

1 个答案:

答案 0 :(得分:7)

.匹配除换行符之外的所有内容。您必须将正则表达式字符串更改为

"(?s).*</p:panelGrid>.*"

然后它将始终匹配。