本文介绍Java表达式的常用使用方法
正则表达式的构造
下面列出常用的构造摘要,想要完整的摘要请访问http://tool.oschina.net/apidocs/apidoc?api=jdk-zh的pattern类
预定义字符类
. 任何字符(与行结束符可能匹配也可能不匹配)
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
Greedy 数量词
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X X,恰好 n 次
X X,至少 n 次
X X,至少 n 次,但是不超过 m 次
中文字符匹配
\u4E00-\u9FA5
下面给出多个示例来说明正则的常规操作
手机号码
邮箱地址
网址
正则表达式的捕获组,这是一个很有用的东西,在需要获取指定字符串的时候,这个捕获组显得尤其重要。
Java中的捕获组用(正则表达式)使用,正则表达式中至少会有一个组,因为整个表达式就是一组,编号为0。
例如:请问表达式((A)(B(C)))中有几组?
答案是四组:((A)(B(C)))、(A)、(B(C))、(C)编号是0、1、2、3
我之所以说这个编号是因为后面获取的时候我们需要使用的到。
了解了什么是表达式分组之后,我们要怎么获取指定捕获组的字符串呢?
示例一
注意:捕获组要在匹配成功之后才能使用,什么意思呢?简而言之,就是需要在matcher之后才能使用。
示例二
end
喜欢的话关注一下吧