----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------
package day25;
/*
* 正则表达式:符合一定规则的表达式
* 作用:用于专门操作字符串
* 特点:用一些特定的符号来表示一些代码操作,这样就简化书写。
* 所以学习正则表达式就是在学习一些特殊符号的使用。
* 好处:可以简化对字符串的复杂操作。
*
* 具体操作功能:
* 1、匹配:
* String matches()方法。用规则匹配整个字符串,只要有一次不符合规则
* 就结束匹配。
*
*
*/
public class RegexDemoA {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
checkTel();
//checkQQ();
//checkQQ_1();
}
//使用正则表达式匹配手机号 13xxxx,15xxxxx 18xxxxx
public static void checkTel(){
String tel="13862354521";
String reg="[1][358][0-9]{9}";
boolean b=tel.matches(reg);
if(b){
System.out.println("Tel="+tel);
}
else{
System.out.println("电话号码格式错误!");
}
}
//使用正则表达式校验qq号码
public static void checkQQ(){
String qq="54646515";
String regex="[1-9][0-9]{4,14}";
boolean flag=qq.matches(regex);
if(flag){
System.out.println("qq: "+qq);
}
else{
System.out.println("qq格式错误!");
}
}
/*
* 对QQ号码进行校验
* 要求:5~15 0不能开头 只能是数字
*
*/
//这种方式,使用了String类中的方法,进行组合完成了需求,但是过程比较复杂
public static void checkQQ_1(){
String qq="123454574";
int len=qq.length();
if(len>=5 && len<=15){
if(!qq.startsWith("0")){ //Integer.parseInt("123")
//简单的校验非法字符串的方法
try{
long l=Long.parseLong(qq);
System.out.println("qq "+qq);
}catch(NumberFormatException e){
System.out.println("出现非法字符!");
}
//复杂的校验非法字符串的方法
/*
char [] arr=qq.toCharArray();
boolean flag=true;
for(int x=0;x<arr.length;x++){
if(!(arr[x]>='0' && arr[x]<='9')){
flag=false;
break;
}
}
if(flag){
System.out.println("qq: "+qq);
}
else{
System.out.println("出现非法字符!");
}
*/
}
else{
System.out.println("不能以0开头!");
}
}
else{
System.out.println("长度错误!");
}
}
}
---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------