java的正则表达式使用

String 类的matches()提供比较字符串与给定的正则表达式是否匹配.

public boolean matches(String regex)

下表为正则表达式的原字符;

\d     任何一个数字,等价于[0-9]或[0123456789]

\D     任何一个非数字,等价于[^0-9]或[^0123456789]

 字母(A-Z不区分大小写)、数字、下划线是一种常用的字符集合,可用如下类元字符:

\w    任何一个字母(不区分大小写)、数字、下划线,等价于[0-9a-zA-Z_]

\W    任何一个非字母数字和下划线,等价于[^0-9a-zA-Z_]

 

3、匹配空白字符与非空白字符

\s      任何一下空白字符,等价于[\f\n\r\t\v]

\S      任何一下空白字符,等价于[^\f\n\r\t\v]


 

4、匹配十六进制或八进制数值

十六进制:用前缀\x来给出,如:\x0A对应于ASCII字符10(换行符),其效果等价于\n。

八进制:用前缀\0来给出,数值本身可以是两位或三位数字,如:\011对应于ASCII字符9(制表符),其效果等价于\t。

 

 POSIX字符类是很多正则表达式实现都支持的一种简写形式。Java也支持它,但JavaScript不支持。POSIX字符如下所示:

[:alnum:]  任何一个字母或数字,等价于[a-zA-Z0-9]

[:alpha:]   任何一个字母,等价于[a-zA-Z]

[:blank:]   空格或制表符,等价于[\t]

[:cntrl:]     ASCII控制字符(ASCII 0到31,再加上ASCII 127)

[:digit:]     任何一个数字,等价于[0-9]

[:graph:]  任何一个可打印字符,但不包括空格

[:lower:]   任何一个小写字母,等价于[a-z]

[:print:]    任何一个可打印字符

[:punct:]   既不属于[:alnum:]和[:cntrl:]的任何一个字符

[:space:]  任何一个空白字符,包括空格,等价于[^\f\n\r\t\v]

[:upper:]  任何一个大写字母,等价于[A-Z]

[:xdigit:]   任何一个十六进制数字,等价于[a-fA-F0-9]

\p{Alnum}         字母数字字符:[\p{Alpha}\p{Digit}]

\p{Alpha}          字母字符:[\p{Lower}\p{Upper}]

\p{ASCII}           所有 ASCII:[\x00-\x7F]

\p{Blank}           空格或制表符:[ \t]

\p{Cntrl}            控制字符:[\x00-\x1F\x7F]

\p{Digit}            十进制数字:[0-9]

\p{Graph}          可见字符:[\p{Alnum}\p{Punct}]

\p{Lower}          小写字母字符:[a-z]

\p{Print}            可打印字符:[\p{Graph}\x20]

\p{Punct}          标点符号:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~

\p{Space}          空白字符:[ \t\n\x0B\f\r]

\p{Upper}          大写字母字符:[A-Z]

\p{XDigit}          十六进制数字:[0-9a-fA-F]

例子

-----------------------------------------------

public class test(){

public static void main(String args[]){

  String regex="(\\w\\.)";

String email="249725579@qq.com"

boolean match=email.mathes(regex);

}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值