在String
下面可以匹配的正则表达式是什么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");
}
答案 0 :(得分:1)
使用“dot matches newline”开关:
if (str.matches("(?s)<Element>\\s*<Sub>(.*)"))
开启此开关后,\s
将匹配换行符。
我修复了你的正则表达式,移除了两组冗余括号,并在空格正则表达式之后添加了关键的*
。