在限制条件为特定字符出现有 0 或 1 次以上时,可以使用「?」
JA? J 或者 JA 出现
限制为连续出现指定次数字符「{a}」
J{2} JJ
J{3} JJJ
文字 a 个以上,并且「{a,}」
J{3,} JJJ,JJJJ,JJJJJ,???(3 次以上 J 并存)
文字个以上,b 个以下「{a,b}」
J{3,5} JJJ 或 JJJJ 或 JJJJJ
两者取一「|」
J|A J 或 A
Java|Hello Java 或 Hello
「()」中规定一个组合类型
比 如 , 我 查 询 <a href=\"index.html\">index</a> 中 <a href></a> 间 的 数 据 , 可 写 作
<a.*href=\".*\">(.+?)</a>
在使用 Pattern.compile 函数时,可以加入控制正则表达式的匹配行为的参数:
Pattern Pattern.compile(String regex, int flag)
flag 的取值范围如下:
Pattern.CANON_EQ 当且仅当两个字符的"正规分解(canonical decomposition)"都完全
相同的情况下,才认定匹配。比如用了这个标志之后,表达式"a\?"会匹配"?"。默认情况下,
不考虑"
规 范相等性(canonical equivalence)"。
Pattern.CASE_INSENSITIVE(?i) 默认情况下,大小写不明感的匹配只适用于 US-
ASCII 字符集。这个标志能让表达式忽略大小写进行匹配。要想对 Unicode 字符进行大小不
明感的匹 配,只要将 UNICODE_CASE 与这个标志合起来就行了。
Pattern.COMMENTS(?x) 在这种模式下,匹配时会忽略(正则表达式里的)空格字符(译
者注:不是指表达式里的"\\s",而是指表达式里的空格,tab,回车之类)。注释从#开始,