`
lxdhdgss
  • 浏览: 44923 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

JAVA里的常用正则表达式验证

    博客分类:
  • JAVA
阅读更多
前段时间整理了一下正则表达式的验证,现在帖出来,希望对大家有用处。
package com.geedao.util;

/**
 * @author 卢向东 lxdhdgss@gmail.com 检验输入
 */
public class Regex {

	/**
	 * 检查email输入是否正确
	 * 正确的书写格式为 username@domain
	 * @param value
	 * @return
	 */
	public boolean checkEmail(String value, int length) {
			return value.matches("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*")&&value.length()<=length;
	}

	/**
	 * 检查电话输入是否正确
	 * 正确格式 012-87654321、0123-87654321、0123-7654321
	 * @param value
	 * @return
	 */
	public boolean checkTel(String value) {
		return value.matches("\\d{4}-\\d{8}|\\d{4}-\\d{7}|\\d(3)-\\d(8)");	
	}

	/**
	 * 检查手机输入是否正确
	 * 
	 * @param value
	 * @return
	 */
	public boolean checkMobile(String value) {
		return value.matches("^[1][3,5]+\\d{9}");
	}

	/**
	 * 检查中文名输入是否正确
	 * 
	 * @param value
	 * @return
	 */
	public boolean checkChineseName(String value, int length) {
		return value.matches("^[\u4e00-\u9fa5]+$")&&value.length()<=length;
	}
	/**
	 * 检查HTML中首尾空行或空格
	 * @param value
	 * @return
	 */
	public boolean checkBlank(String value){
		return value.matches("^\\s*|\\s*$");
	}
	/**
	 * 检查字符串是否含有HTML标签
	 * @param value
	 * @return
	 */
	
	public boolean checkHtmlTag(String value){
		return value.matches("<(\\S*?)[^>]*>.*?</\\1>|<.*? />");
	}
	/**
	 * 检查URL是否合法
	 * @param value
	 * @return
	 */
	public boolean checkURL(String value){
		return value.matches("[a-zA-z]+://[^\\s]*");
	}
	/**
	 * 检查IP是否合法
	 * @param value
	 * @return
	 */
	public boolean checkIP(String value){
		return value.matches("\\d{1,3}+\\.\\d{1,3}+\\.\\d{1,3}+\\.\\d{1,3}");
	}
	/**
	 * 检查ID是否合法,开头必须是大小写字母,其他位可以有大小写字符、数字、下划线
	 * @param value
	 * @return
	 */
	public boolean checkID(String value){
		return value.matches("[a-zA-Z][a-zA-Z0-9_]{4,15}$");
	}
	/**
	 * 检查QQ是否合法,必须是数字,且首位不能为0,最长15位
	 * @param value
	 * @return
	 */
	
	public boolean checkQQ(String value){
		return value.matches("[1-9][0-9]{4,13}");
	}
	/**
	 * 检查邮编是否合法
	 * @param value
	 * @return
	 */
	public boolean checkPostCode(String value){
		return value.matches("[1-9]\\d{5}(?!\\d)");
	}
	/**
	 * 检查身份证是否合法,15位或18位
	 * @param value
	 * @return
	 */
	public boolean checkIDCard(String value){
		return value.matches("\\d{15}|\\d{18}");
	}
	/**
	 * 检查输入是否超出规定长度
	 * 
	 * @param length
	 * @param value
	 * @return
	 */
	public boolean checkLength(String value, int length) {
		return ((value == null || "".equals(value.trim())) ? 0 : value.length()) <= length;
	}

	/**
	 * 检查是否为空字符串,空:true,不空:false
	 * 
	 * @param value
	 * @return
	 */
	public boolean checkNull(String value) {
		return value == null || "".equals(value.trim());
	}

}

我自己根据书上和网上的资料综合整理的。
其他链接:
中小企业软件
千祥新闻
浙江赛孚
分享到:
评论
4 楼 judasn 2012-08-15  
整理的不错,
3 楼 raozhengyong 2009-03-23  
terryzhou 写道
用JS更好吧
特别是CV库有个根据正则校正的tag

只是用js更快一点.
2 楼 terryzhou 2008-06-17  
用JS更好吧
特别是CV库有个根据正则校正的tag
1 楼 chbest 2008-06-16  
工具类:
是否用静态方法
异常是否需要抛出

相关推荐

    常用正则表达式HTML,JAVA合集

    在这个“常用正则表达式HTML,JAVA合集”中,我们主要关注的是HTML和Java环境下的正则表达式应用。 1. **HTML中的正则表达式**: 在HTML中,正则表达式通常用于表单验证,例如输入字段(如邮箱、电话号码、手机号码...

    java正则表达式.zip

    通过这些知识点,开发者可以熟练地在Java程序中运用正则表达式进行各种文本处理任务,如数据验证、信息提取等。在实际开发中,结合Java的IO和集合框架,正则表达式可以成为强大的文本处理工具。

    常用java正则表达式

    ### 常用Java正则表达式知识点 #### 一、引言 正则表达式是一种强大的工具,用于处理文本并查找模式。多种编程语言,包括Perl、PHP、Python、JavaScript以及Java等均内置了对正则表达式的支持。本文将详细介绍Java...

    Java 常用正则表达式

    Java 正则表达式是Java编程语言中用于处理文本模式匹配和字符串验证的强大工具。它们遵循特定的语法,可以用来检查字符串是否符合特定格式,例如手机号码、邮箱地址、日期等。以下是一些常见的Java正则表达式及其...

    正则表达式验证器,验证常用的编程语言的正则表达式

    "正则表达式验证器"是一个实用工具,它允许用户输入自定义的正则表达式,并通过提供测试用例来验证该表达式的正确性。 这个验证器特别适用于程序员,他们可能需要在多种不同的编程语言中使用正则表达式,如...

    正则表达式 Java 判断字串是否合理

    根据给定的文件信息,我们可以总结出以下...综上所述,通过以上知识点可以看出,Java正则表达式在处理各种格式的数据验证时非常实用且灵活。开发者可以根据具体需求选择合适的正则表达式来提高代码的健壮性和安全性。

    java 正则表达式工具类,手机号码等

    java 验证手机号码 身份证 email url 以及其他常用的正则表达式的验证方法。

    java中常用的匹配正则表达式实例大全.doc

    ### Java中常用的匹配正则表达式实例大全 #### 1. 匹配中文字符的正则表达式 正则表达式:`[\u4e00-\u9fa5]` **评注**:该表达式用于精确匹配任何中文字符。在处理包含中文的文本时极为有用,例如在进行文本分析、...

    java常用正则表达式(转)

    这篇博客“java常用正则表达式(转)”可能详细介绍了Java如何使用正则表达式进行各种操作。虽然没有具体的描述内容,但我们可以从标题和标签中推测,这篇博客可能涵盖了以下几个方面: 1. **正则表达式基础**: -...

    Java常用正则表达式.txt

    ### Java常用正则表达式详解 #### 匹配腾讯QQ号 **正则表达式:** [1-9][0-9]{4,} **评注:** 腾讯QQ号从10000开始。 - **解析:** 此表达式确保了QQ号的第一个数字必须是非零数字(即1到9之间的任意一个),接着...

    RegexUtils表单注册常用正则表达式验证工具类

    RegexUtils,Java 表单注册常用正则表达式验证工具类,常用正则表达式大集合。 1. 电话号码 2. 邮编 3. QQ 4. E-mail 5. 手机号码 6. URL 7. 是否为数字 8. 是否为中文 9. 身份证 10. 域名 11. IP

    java常用正则表达式.txt

    本文将深入解析《java常用正则表达式》文档中提及的几个关键正则表达式,帮助读者理解和掌握这些常用的模式,从而在实际开发中更加灵活地运用正则表达式的功能。 ### 手机号码验证 正则表达式:`^(13|15|18)\d{9}$...

    常用正则表达式 正则表达式

    正则表达式(Regular Expression...在不同的编程语言中,如JavaScript、Python、Java等,正则表达式的实现可能会有所不同,但基本的语法和概念是相通的。在实际使用时,根据具体语言的文档进行学习和实践是非常必要的。

    常用正则表达式集合

    在这个“常用正则表达式集合”中,你可能会找到许多实用的模板,帮助你在处理字符串时提高效率。下面我们将深入探讨正则表达式的基本概念、语法以及一些常见用法。 1. **基本概念** - **模式匹配**:正则表达式是...

    常用正则表达式.rar

    本压缩包"常用正则表达式.rar"提供了一些常见的正则表达式示例,主要包括校验数字、字符以及满足特殊需求的表达式。 1. **校验数字的表达式** - 验证整数:`^\d+$`,这将匹配任何由一个或多个数字组成的字符串。 ...

    常用正则表达式大全

    在编程中,正则表达式被广泛应用在文本分析、数据验证、字符串处理等多个场景。以下是一些常见的正则表达式元字符、运算符及其用法的详细解释: 1. **特殊字符**:在正则表达式中,一些字符具有特殊的含义,如`\`...

    Java正则表达式_动力节点Java学院整理

    这个示例代码使用了Java正则表达式来验证邮箱的格式是否正确。 Java正则表达式的常用语法 以下是一些常用的Java正则表达式语法: 1. `.`:匹配任何字符。 2. `*`:匹配零个或多个字符。 3. `+`:匹配一个或多个...

    java最常用的正则表达式

    Java中的正则表达式是处理字符串的强大工具,它在编程中扮演着不可或缺的角色,尤其是在数据验证、文本搜索和替换等方面。下面将详细讲解Java中如何使用正则表达式,并涵盖一些常用的功能。 首先,让我们了解正则...

    java-regex正则表达式

    Java正则表达式是编程语言Java中用于处理文本模式匹配和替换的重要工具。它基于一套特殊的语法,允许程序员高效地检查字符串是否符合特定的模式,或者根据这些模式进行字符串的替换和提取。以下是对Java正则表达式...

Global site tag (gtag.js) - Google Analytics