0

什么可能是字符串下面匹配的正则表达式

String str = "<Element>\r\n <Sub>regular</Sub></Element>";

有一个

carriage return "\r", new line character "\n" and a space after <Element>.

我的代码如下

if(str.matches("<Element>([\\s])<Sub>(.*)"))
{
     System.out.println("Matches");
}
4

1 回答 1

1

使用“点匹配换行符”开关:

if (str.matches("(?s)<Element>\\s*<Sub>(.*)"))

打开开关后,\s将匹配换行符。

我还修复了您的正则表达式,删除了两组冗余括号,并*在空格正则表达式之后添加了关键。

于 2013-04-02T06:42:00.980 回答