Pattern compile(String regex, int flags)
\[\]
其中flags的取值有以下几种:
- CASE_INSENSITIVE
忽略大小写(?i);也可以通过在正则表达式中加(?i)实现。 - MULTILINE
开启多行模式(?m);此时每行都能单独匹配^或$。不开多行模式的话整个字符串会被视作一行(加\n也没用)。 - DOTALL
开启dotAll模式(?s);此时字符.可以匹配一切字符,包括换行符。 - UNICODE_CASE
开启Unicode模式(?u);在Unicode字符集中进行忽略大小写的匹配。而CASE_INSENSITIVE仅对Unicode和ASCII的公有部分忽略大小写(没看懂,直接翻译了这句话)。 - CANON_EQ
- UNIX_LINES
开启Unix模式(?d); - LITERAL
注意:以CASE_INSENSITIVE为例,使用前需要import static java.util.regex.Pattern.CASE_INSENSITIVE; 否则应当使用Pattern.CASE_INSENSITIVE。