$ 结束的意思 ^ 开头或者取反
案例一:
/** {n}表示前面那个字符取n次
* [k] 表示中括号里面的表达式取一次
* $符号为结束符号
* */
String regx="[1][3|5|7|9][0-9]{9}$";
String str3="13478597945";
System.out.println(Pattern.compile(regx).matcher(str3).find());
匹配前面表示跟前面一个字符合起来一起用。
贪婪式和懒汉式
String str5="gd123google.comgoodhelpgooooddaygood";
// String regx="g.*g";//贪婪模式 会匹配到最长
String regx="g.*?g";//懒汉模式 会匹配到最长
Matcher matcher = Pattern.compile(regx).matcher(str5);
while(matcher.find()){
System.out.println(matcher.start());
System.out.println(matcher.end());
System.out.println(matcher.group());
}
^在[^123] 表示不是1,2,3
^[12] 表示开头 是1 或者是2