首页 > 编程语言 >Java验证电子邮箱地址、电话号码

Java验证电子邮箱地址、电话号码

时间:2023-09-20 10:32:41浏览次数:36  
标签:regex Java String 邮箱地址 matcher replace 电话号码 Pattern public


demo1:

/**
 * 本类用于 处理、检查导入数据的格式
 * @author Administrator
 * weiwenshuai 2011 09 15
 */
public class CheckData {
 
 /**
  * 验证手机号码、电话号码是否有效
  *  手机号前面加86的情况也考虑
  * 新联通  
    *(中国联通+中国网通)手机号码开头数字 130、131、132、145、155、156、185、186
    * 新移动
    * (中国移动+中国铁通)手机号码开头数字 134、135、136、137、138、139、147、150、151、152、157、158、159、182、183、187、188
    * 新电信
     * (中国电信 <http://baike.baidu.com/view/3214.htm>+中国卫通)手机号码开头数字 133、153、189、180
  * 座机:
  *3/4位区号(数字)+ “-” + 7/8位(数字)+ “-”+数字位数不限
  *说明:“-”+数字位数不限;这段可有可无
  */
 public static String checkphoto(String photo){ 
  if(null!=photo){
   String reisphoto=photo.replace(",",",").replace(";",",").replace(";",",").replace(" ", ",").replace(" ",",").replace("/",",")
   .replace("\\", ",");
   String[] photo1=reisphoto.split(",");
   String[] photo2=new String[photo1.length];
   boolean isfirst;
   if(null!=photo1&&photo1.length>0){
    for(int i=0;i<photo1.length;i++){
    isfirst=false;
    if(photo1[i].matches("(^[0-9]{3,4}-[0-9]{3,8}$)|^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|2|3|5|6|7|8|9])\\d{8}$")){
     photo2[i]=photo1[i];
     isfirst=true;
    }
    //第二规则 “-”+数字位数不限 和手机号前面加86的情况也考虑
    if(!isfirst){
     if(photo1[i].matches("(^[0-9]{3,4}-[0-9]{3,8}-[0-9]{0,100}$)|^((\\+86)|(86))?(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|2|3|5|6|7|8|9])\\d{8}$")){
      photo2[i]=photo1[i];
     }
    }
    }
    //如果两个电话 只用一个
    if(photo2.length>0){
     return photo2[0];
    }
   }
  }  
  return null;
 }
 public static void main(String[] args){
  String[] photo =new String[]{"1523620111","15811363254 15811364216","15811364216","13011111111,15811364216","022-6232903-22","022-6232903","+8615811364216","8615811224181"};
  for(int i=0;i<photo.length;i++){
   System.out.println(CheckData.checkphoto(photo[i]));
  }
  
 }
}

 

demo2:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * <p>
 *
 * <p>Copyright the original author or authors.
 *
 * @author Liu Huibin
 * @date Aug 27, 2010
 * @dateLastModified Aug 27, 2010
 */
public class Test {
public static void main(String[] args) {

//电子邮件
 String check = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";
 Pattern regex = Pattern.compile(check);
 Matcher matcher = regex.matcher("[email protected]");
 boolean isMatched = matcher.matches();
 System.out.println(isMatched);

 

/* 电话号码

String check = "^(13[4,5,6,7,8,9]|15[0,8,9,1,7]|188|187)\\d{8}$";
 Pattern regex = Pattern.compile(check);
 Matcher matcher = regex.matcher("13555655606");
 boolean isMatched = matcher.matches();
 System.out.println(isMatched);

*/
}
}

 

标签:regex,Java,String,邮箱地址,matcher,replace,电话号码,Pattern,public
From: https://blog.51cto.com/u_16255870/7534782

相关文章

  • 66基于java的志愿者服务管理系统设计与实现(配套lun文,PPT,可参考做毕业设计)
    本章节给大家带来一个基于java志愿者服务管理系统设计与实现,可适用于校园志愿者活动服务平台,校园爱心志愿者活动,爱心活动管理信息系统,大学志愿者服务平台,大学生志愿者服务平台,大学生爱心活动系统,在线志愿者活动平台,校园志愿者活动,大学志愿者活动平台等等;引言现如今,校园志愿者......
  • java将map的key转为大写
    普通的stream流,toMap方法会调用merge方法,该方法如果value传值为null的时候,会报空指针异常,因此直接使用collect()方法进行规约操作publicstaticvoidmain(String[]args){Map<String,String>testMap=newHashMap<>();testMap.put("apple",null);testMap.put("......
  • 十大排序算法总结及其Java代码实现
    概述基于比较的排序算法,常见的有以下几种算法最好最坏平均空间稳定性思想注意事项冒泡排序O(n)O(n^2)O(n^2)O(1)是比较最好情况需要额外判断选择排序O(n^2)O(n^2)O(n^2)O(1)否比较顺序选择元素,交换次数较多,不适合大规模数据堆排序O(nlogn)O(nlogn)O(nlogn)O(1)否选择需要使用到数据......
  • Java连接phoenix问题
    这个错误的原因是找不到文件,所以要在本地配置一下hadoop的环境变量下载将其中hadoop这个文件放在c盘windows下system32目录下就ok了 ......
  • 基于java的学生课程管理系统-计算机毕业设计源码+LW文档
    计算机技术的发展,改变了的生产生活方式。在高校,越来越多的教务管理使用管理系统进行管理,用来提高管理效率。在传统的教学管理中,高校往往通过大量的人力和物力进行管理,通过手工记录课程信息,统计科目资料。传统的管理方法容易出错,而学生课程管理系统可以帮助教师管理课程信息,查看课程......
  • 基于java的高校智慧课堂管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、研究的背景和意义研究背景:随着计算机网络技术和互联网技术的飞速发展,社会的快速进步和人们生活质量的不断提高,人们的文化生活受到了极大的变化。而我们国家的教育也在随着社会的发展发生巨大的改变。在计算机技术的飞速发展前提下,特别是智能Android操作系统的问世,基于移动设......
  • 基于java的酒店管理系统的设计与实现-计算机毕业设计源码+LW文档
    摘要信息化的迅速发展,对人们的衣食住行产生了很大影响。越来越多的人习惯并依赖于通过信息技术和智能化的形式来处理日常各类事物。为了满足住店用户预定酒店的需要,以及适应现代化酒店管理的需求,决定开发酒店管理系统。帮助会员快速的在线预定,提高了预定效率。本系统是选择面向......
  • 【HNU 个人项目互评】结对编程互评-Java
    【结对编程互评-Java】中小学数学卷子自动生成程序项目名称:中小学数学卷子自动生成程序编程语言:Java代码作者:张钉评价人:张诗泉目录1项目要求1.1目标用户1.2实现功能2代码分析3功能测试3.1登录功能测试3.2出题功能测试3.3保存与查重功能测试4优缺......
  • Javaweb(第一天)
    一、在网页中的一些基本操作(1)添加title 1<title>杭州亚运会开幕式将实现两个“首次”</title> (2)添加标题(h1---h6) 1<h1>杭州亚运会开幕式将实现两个“首次”</h1> (3)在网页中添加音频,图片,视频audioimgvideo对应三种添加方式(4)在网页中添加文本内容,以及首行缩进,居中,靠......
  • 无涯教程-JavaScript - SUMIF函数
    描述您可以使用SUMIF函数对满足指定条件的范围内的值求和。语法SUMIF(range,criteria,[sum_range])争论Argument描述Required/Optionalrange您要通过条件判断的单元格范围。每个范围中的单元格必须是数字或包含数字的名称,数组或引用。空白和文本值将被忽略。......