正则世界,唯我独尊
编写项目的时候,多多少少都有些验证,用的时候费力气去写或者满世界的找需要的资料太麻烦
就在这里进行汇总记录,后续会不断更新不断完善
正则表达式之——QQ号码验证
String regex = "[1-9][0-9]{4,14}";//第一位1-9之间的数字,第二位0-9之间的数字,数字范围4-14个之间
正则表达式之——微信号码验证
String regex = "/^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$/";
正则表达式之——手机号码验证
// "[1]"代表下一位为数字可以是几,"[0-9]"代表可以为0-9中的一个,"[5,7,9]"表示可以是5,7,9中的任意一位,[^4]表示除4以外的任何一个,\\d{8}"代表后面是可以是0~9的数字,有8位。String regex = "^((13[0-9])|(14[5,6,7,9])|(15[^4])|(16[5,6])|(17[0-9])|(18[0-9])|(19[1,8,9]))\\d{8}$";
正则表达式之——邮箱号码验证
String regex = "^[a-z0-9]+([._\\\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$";
正则表达式之——在程序中的应用
/*** @param uinfo 用户的信息,验证用户userID、QQ号、微信号、手机号、通知的邮箱* @return 如果验证失败返回失败信息,否则返回null*/public String checkUInfo(uinfo uinfo){//验证用户userIDif (uinfo==null||uinfo.getUserid()<=100000){return "传入非法数据";}//验证QQ号String qqnum = uinfo.getQqnum();String regex = "[1-9][0-9]{4,14}";//第一位1-9之间的数字,第二位0-9之间的数字,数字范围4-14个之间if (qqnum!=null&&!qqnum.matches(regex)){//如果不是,返回QQ号不正确return "QQ号码不正确";}//验证微信号regex = "/^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$/";String wxnum = uinfo.getWxnum();if (wxnum!=null&&!wxnum.matches(regex)){return "微信号码不正确";}//验证手机号/*** 判断字符串是否符合手机号码格式* 移动号段: 134 135 136 137 138 139 147 148 150 151 152 157 158 159 165 172 178 182 183 184 187 188 198* 联通号段: 130 131 132 145 146 155 156 166 170 171 175 176 185 186* 电信号段: 133 149 153 170 173 174 177 180 181 189 191 199* 虚拟运营商: 170* @param str* @return 待检测的字符串*/// "[1]"代表下一位为数字可以是几,"[0-9]"代表可以为0-9中的一个,"[5,7,9]"表示可以是5,7,9中的任意一位,[^4]表示除4以外的任何一个,\\d{8}"代表后面是可以是0~9的数字,有8位。regex = "^((13[0-9])|(14[5,6,7,9])|(15[^4])|(16[5,6])|(17[0-9])|(18[0-9])|(19[1,8,9]))\\d{8}$";String phonenum = uinfo.getPhonenum();if (phonenum!=null&&!phonenum.matches(regex)){return "手机号码不正确";}//验证邮箱号码regex = "^[a-z0-9]+([._\\\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$";String tallmail = uinfo.getTallmail();if (tallmail!=null&&!tallmail.matches(regex)){return "邮箱号码不正确";}return null;}
正则表达式验证手机号 正则表达式验证邮箱号 正则表达式验证QQ号 正则表达式验证微信号等