我有项目来检测编辑器是否有编写html实体,但是当它包含\ n它不起作用?为什么呢?
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexTest {
public static void main(String[] args) {
String text = "asdasdas <h1>Test</h1></div>";
String regex = ".*<[^<]+>.*";
Pattern pattern = Pattern.compile(regex);
Matcher m = pattern.matcher(text);
System.out.println(m.matches());
}
}
答案 0 :(得分:0)
如果您想考虑\n
,可以这样做:
Pattern pattern = Pattern.compile(regex, Pattern.DOTALL);
这会考虑转义序列。
您还可以使用Pattern.MULTILINE
,其中正则表达式与每行匹配。因此,如果您在正则表达式中添加^
或$
,则会为每个新行正确匹配正则表达式的开头和结尾。
This is a link to the Oracle docs which may help you better understand, rather than just application of the code.你知道的更多......:)