java使用正则表达式判断邮箱格式是否正确的方法

 更新时间:2015年07月27日 17:17:22   作者:杜英恒  
这篇文章主要介绍了java使用正则表达式判断邮箱格式是否正确的方法,涉及java正则表达式及字符串的相关操作技巧,需要的朋友可以参考下

本文实例讲述了java使用正则表达式判断邮箱格式是否正确的方法。分享给大家供大家参考。具体如下:

import java.io.*;
public class CheckEmail 
{ 
 public static boolean checkEmail(String email)
  {// 验证邮箱的正则表达式 
   String format = "\\p{Alpha}\\w{2,15}[@][a-z0-9]{3,}[.]\\p{Lower}{2,}";
   //p{Alpha}:内容是必选的,和字母字符[\p{Lower}\p{Upper}]等价。如:200896@163.com不是合法的。
   //w{2,15}: 2~15个[a-zA-Z_0-9]字符;w{}内容是必选的。 如:dyh@152.com是合法的。
   //[a-z0-9]{3,}:至少三个[a-z0-9]字符,[]内的是必选的;如:dyh200896@16.com是不合法的。
   //[.]:'.'号时必选的; 如:dyh200896@163com是不合法的。
   //p{Lower}{2,}小写字母,两个以上。如:dyh200896@163.c是不合法的。
   if (email.matches(format))
    { 
     return true;// 邮箱名合法,返回true 
    }
   else
    {
     return false;// 邮箱名不合法,返回false
    }
  } 
 public static void main(String[] args) throws Exception
 {
  String email = "cc**365@163.com"; // 需要进行验证的邮箱
   while(true)
  {
    email = new BufferedReader(new InputStreamReader(System.in)).readLine();
   if (CheckEmail.checkEmail(email))// 验证邮箱
   {   
    System.out.println(email+"\n是合法的邮箱名。");
   }
   else
   {
    System.out.println(email+"\n不是合法的邮箱名。");
   }
  }
 }
}

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

希望本文所述对大家的java程序设计有所帮助。

相关文章

  • springboot如何集成mysql

    springboot如何集成mysql

    这篇文章主要介绍了springboot如何集成mysql问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • SpringBoot中处理跨域请求CORS的全面指南

    SpringBoot中处理跨域请求CORS的全面指南

    跨域资源共享是一种安全机制,它允许Web应用程序在一个域上的资源请求另一个域上的资源,下面就跟随小编一起来深入了解下SpringBoot中处理跨域请求CORS的具体操作吧
    2025-04-04
  • SpringSecurity实现动态权限校验的过程

    SpringSecurity实现动态权限校验的过程

    Spring Security过滤器链中,AuthorizationFilter的authorizationManager是我们要找的组件,该组件的check方法已被弃用,推荐使用authorize方法,最终通过接口路径和权限进行校验,本文给大家介绍SpringSecurity实现动态权限校验的相关知识,感兴趣的朋友一起看看吧
    2025-02-02
  • MyBatis-Plus中如何实现动态表名

    MyBatis-Plus中如何实现动态表名

    这篇文章主要介绍了MyBatis-Plus中如何实现动态表名问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • 了解SpringMVC的上传和下载

    了解SpringMVC的上传和下载

    今天小编就为大家分享一篇关于Spring整合Springmvc的相关介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2021-07-07
  • 浅谈Java的LinkedHashSet源码

    浅谈Java的LinkedHashSet源码

    这篇文章主要介绍了浅谈Java的LinkedHashSet源码,底层是链表实现的,是set集合中唯一一个能保证怎么存就怎么取的集合对象
    因为是HashSet的子类,所以也是保证元素唯一的,与HashSet的原理一样,需要的朋友可以参考下
    2023-09-09
  • 浅谈spring注解之@profile

    浅谈spring注解之@profile

    这篇文章主要介绍了浅谈spring注解之@profile,@profile通过配置来改变参数,这里整理的详细的用法,有兴趣的可以了解一下
    2017-10-10
  • Java中的CyclicBarrier循环栅栏深入解析

    Java中的CyclicBarrier循环栅栏深入解析

    这篇文章主要介绍了Java中的CyclicBarrier循环栅栏深入解析,CycleBarrier 它就相当于是一个栅栏,所有线程在到达栅栏后都需要等待其他线程,等所有线程都到达后,再一起通过,需要的朋友可以参考下
    2023-12-12
  • Servlet关于RequestDispatcher的原理详解

    Servlet关于RequestDispatcher的原理详解

    这篇文章主要介绍了Servlet关于RequestDispatcher的原理详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • 详解Java中的敏感信息处理

    详解Java中的敏感信息处理

    平时开发中常常会遇到像用户的手机号、姓名、身份证等敏感信息需要处理,这篇文章主要为大家整理了一些常用的方法,希望对大家有所帮助
    2025-01-01

最新评论