java中的正则表达式
2018-05-21 本文已影响7人
e小e
所谓的正则表达式,就是用来检查一个字符串是否符合一个标准的表达式。通常在不使用正则表达式的时候,我们去检查一个字符串是否符合一个标准的方法如下,拿一个检查qq的demo举例
qq的格式需要满足只能为数字,位数5~10位
/**
* qq号码只能为数字,位数5~10位
* @param qq
*/
private void checkQQ(String qq){
char[] chars = qq.toCharArray();
if (chars.length >= 5 && chars.length <= 10){
boolean flag = true;
for (char c : chars){
if (c >= '0' && c <= '9'){
continue;
}
flag = false;
break;
}
if (flag){
System.out.println("qq number format right");
}else{
System.out.println("qq number format error");
}
}else {
System.out.println("qq number format error");
return;
}
}
可以看出来使用上面的检查方法还是比较麻烦的,如果改成使用正则表达式的方式来检查qq的格式就会简单很多
private void checkQQ2(String qq){
String regex = "\\d{5,11}";
System.out.println(qq.matches(regex)?"qq number format right":"qq number format error");
}
那么怎么表达式的语法到底是怎样的呢,可以参考下文档
http://tool.oschina.net/apidocs/apidoc?api=jdk-zh