搞定Java正则

关于正则表达式:
Pattern p=Pattern.compile("[a-z]{3}");//把这个则正先编译
Matcher m=p.matcher("fgh");//可以理解为保存正则的结果
System.out.println(m.matcher());


 * + ?(表示次数)


* 0个或者0个以上字符
+一个或者一个以上
? 一个或者一个也没有
[] 范围,一个中括号就是一个字符
{}次数
.任意一个字符
预定义字符类 
. 任何字符(与行结束符可能匹配也可能不匹配) 
\d 数字:[0-9] 
\D 非数字: [^0-9] 
\s 空白字符:[ \t\n\x0B\f\r] 
\S 非空白字符:[^\s] 
\w 单词字符:[a-zA-Z_0-9] //注意里面有下划线的
\W 非单词字符:[^\w] 
^ 行的开头 
$ 行的结尾 
\b 单词边界 //单词的边界,空格,换行,等等。


Matcher里的方法
matches find lookingAt
matches匹配整个字符串
find 实用的时候小心一点,不是匹配整个,是匹配剩下的。
lookingAt 是每次都是从头开始匹配
start end
分别是(find)找到匹配的字符串的开始位置和结束位置。
()分组,几个小括号就是几组,第几个左小括号就是第几组。








你可能感兴趣的:(搞定Java正则)