请考虑以下代码。
String s = "000000Xabcdefgh\nijkX00000000";
s = s.replaceAll("X.*X", "");
System.out.println(s);
我希望Xabcdefgh\nijkX
替换为空字符串,但由于中间有换行符,所以不会替换任何内容。为什么正则表达式匹配在换行符处终止?匹配正则表达式时如何忽略换行符?
答案 0 :(得分:0)
试试这个:
String s = "000000Xabcdefgh\nijkX00000000";
s = s.replaceAll("X.*( |\t|\r\n|\r|\n).*X", "");
System.out.println(s);
这将处理所有其他空格/换行符。