`
superloafer
  • 浏览: 170300 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

用正则表达式验证Email代码段

    博客分类:
  • Java
阅读更多
以下是一段使用正则表达式验证Email的代码段:
StringBuffer regex = new StringBuffer();
		regex.append("(([\\da-zA-Z]+[-._+&'])*[\\da-zA-Z]+)");//user name re
		regex.append("@(");
		regex.append("([0-9a-zA-Z]([-0-9a-zA-Z]{0,65}[0-9a-zA-Z])?\\.)");//domain name re
		regex.append("+(arpa|aero|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|pro|travel|xxx|jobs|mobi|post|ac|ad|ae|af|ag|ai|al|am|an|ao|aq|ar|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|ee|eg|er|es|et|fi|fj|fk|fm|fo|fr|ga|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|in|io|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sk|sl|sm|sn|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tr|tt|tv|tw|tz|ua|ug|uk|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)");
		regex.append("|(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.){3}(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])|(0[xX]0*[\\da-fA-F]?[\\da-fA-F]\\.){3}0[xX]0*[\\da-fA-F]?[\\da-fA-F]|(0+[0-3][0-7][0-7]\\.){3}0+[0-3][0-7][0-7]|(0|[1-9]\\d{0,8}|[1-3]\\d{9}|4[01]\\d{8}|42[0-8]\\d{7}|429[0-3]\\d{6}|4294[0-8]\\d{5}|42949[0-5]\\d{4}|429496[0-6]\\d{3}|4294967[01]\\d{2}|42949672[0-8]\\d|429496729[0-5])|0[xX]0*[\\da-fA-F]{1,8}|([\\da-fA-F]{1,4}\\:){7}[\\da-fA-F]{1,4}|([\\da-fA-F]{1,4}\\:){6}((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.){3}(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])))");
		
		Pattern pattern;
		Perl5Matcher matcher = new Perl5Matcher();

		try {
			pattern = new Perl5Compiler().compile(regex.toString());
			if(!matcher.matches(mail, pattern)){
				return "Invalid email format for " + title;
			}
		} catch (MalformedPatternException e) {
		}
		
		int usernamepos = mail.indexOf("@");
		if(usernamepos > 64) {
			return "Invalid email format for " + title;
		}



验证url的正则表达式:
((https?|ftp|gopher|telnet|file|notes|ms-help):((//)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]*)
java中的写法:
(https?|ftp|gopher|telnet|file|notes|ms-help):((//)|(\\\\\\\\))+[\\w\\d:#@%/;$()~_?\\+-=\\\\\\.&]*

分享到:
评论

相关推荐

    JS正则表达式验证 常用的都有

    根据提供的文件信息,我们可以推断出此文档主要讨论的是JavaScript中的正则表达式验证方法以及一些其他相关的JavaScript功能。下面将详细介绍与标题“JS正则表达式验证 常用的都有”及描述中提到的知识点。 ### JS...

    正则表达式判断手机邮箱

    在实际应用中,我们可能会根据具体需求对这些正则表达式进行调整,比如限制手机号码的某些特定号码段,或者对邮箱地址的格式做更严格的限定。 在编程语言中,如JavaScript、Python、Java等,都有内置的正则表达式...

    Android 正则表达式验证手机和邮箱格式是否正确

    以下是如何使用正则表达式来验证手机和邮箱格式是否正确的详细步骤。 首先,我们需要了解手机和邮箱的常用格式规范: 1. 手机号码:通常在中国,手机号码以1开头,接着是3、4、5、7、8或9,然后是9位数字。例如,...

    vs 2005中使用正则表达式

    ### 使用Visual Studio 2005中的C#进行正则表达式操作 #### 一、正则表达式简介 正则表达式(Regular Expression),通常简称为regex或regexp,是一种强大的文本处理工具,用于字符串搜索、替换等操作。在文本处理...

    EL,正则表达式,java中常用的验证语言

    在这段代码中,`test()`方法会返回一个布尔值,表明输入的邮箱字符串是否符合正则表达式。 综上所述,EL、正则表达式和Java验证语言在软件开发中扮演着至关重要的角色。熟练掌握这些技能,能帮助开发者编写出更安全...

    正则表达式验证代码.txt

    根据给定文件的信息,我们可以提炼出以下几个关键的IT知识点,主要围绕正则表达式的使用、JavaScript与ASP脚本语言在Web开发中的应用,以及如何利用这些技术进行输入验证。 ### 正则表达式(Regular Expression) ...

    关于JQUERY的常用的正则表达式

    在进行Web前端开发时,利用jQuery结合正则表达式对用户输入的数据进行验证是一种非常常见的做法。这不仅可以提高用户体验,还能有效地确保数据的有效性和安全性。根据提供的文件信息,我们可以总结出以下常用正则...

    Oracle 10g 针对正则表达式的支持分析

    - **集成到SQL语句中**:可以直接在SQL查询中使用正则表达式进行条件过滤,无需编写额外的程序代码。 ##### 3.2 实现方法 - **REGEXP_LIKE**:用于判断一个字符串是否符合指定的正则表达式模式。 - **REGEXP_INSTR*...

    java正则表达式讲义.ppt

    使用Java正则表达式有许多优点,例如能显著减少判断EMAIL等复杂任务的代码量,提高编程效率。当然,这也需要开发者掌握正则表达式的用法,这可能需要额外的学习成本。 基础的正则表达式知识包括以下几个关键概念: ...

    php 正则表达式简单介绍

    上述代码利用正则表达式提取URL中的域名部分。 #### 结论 正则表达式是PHP开发中不可或缺的工具,掌握其基本语法和应用场景对于提高代码效率和质量有着重要作用。无论是数据验证、文本处理还是信息提取,正则...

    个人 正则表达式 学习小结

    此段代码用于验证用户输入的电子邮件地址是否符合常见的电子邮件格式。正则表达式`/^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}[0-9a-zA-Z]+[\.]?[0-9a-zA-Z]+$/`要求电子邮件地址必须由字母数字字符组成,包含一个“@”符号...

    正则表达式验证介绍

    ### 正则表达式验证介绍 正则表达式验证是在软件开发中常用的一种技术手段,尤其是在Web应用领域,它能够帮助开发者确保用户输入的数据符合预期的格式或模式。本文将详细介绍几种常用的验证控件,包括...

    C#字符串和正则表达式参考手册4

    假设我们需要从一段文本中提取所有的日期,可以使用如下正则表达式匹配YYYY-MM-DD格式的日期: ```csharp string text = "Today is 2023-08-15."; string datePattern = @"\b\d{4}-\d{2}-\d{2}\b"; MatchCollection ...

    Javascript正则表达式

    这段代码定义了一个函数 `test_email`,用于验证输入的字符串是否符合电子邮件地址的标准格式。这里使用了正则表达式的 `test` 方法来判断字符串是否匹配指定的模式。 ##### 2. HTML代码的屏蔽 ```javascript ...

    常用正则表达式举例已经写出代码

    匹配 Email 地址的正则表达式:`\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*` **用途**:此表达式用于验证电子邮件地址的格式。 - **应用场景**:表单提交前对用户输入的邮箱地址进行格式检查。 - **示例代码**:...

    Java 正则表达式详解

    正则表达式常用于验证用户输入的格式,例如验证电子邮件地址: ```java String email = "example@example.com"; String regex = "^\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"; Pattern pattern = ...

Global site tag (gtag.js) - Google Analytics