`
晨星★~雨泪
  • 浏览: 446918 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java常用正则表达式

    博客分类:
  • Java
阅读更多
  1. import  java.util.regex.Matcher;  
  2. import  java.util.regex.Pattern;  
  3.   
  4. /**  
  5.  * @author        Der      
  6.  * @date          2006-10-23  
  7.  * @packeage_name regex  
  8.  *   
  9.  */   
  10. public   class  RegexChk  
  11. {  
  12.   
  13.     public    boolean  startCheck(String reg,String string)  
  14.     {  
  15.         boolean  tem= false ;  
  16.           
  17.         Pattern pattern = Pattern.compile(reg);  
  18.         Matcher matcher=pattern.matcher(string);  
  19.           
  20.         tem=matcher.matches();  
  21.         return  tem;  
  22.     }  
  23.       
  24.   
  25.          /**  
  26.      * 检验整数,适用于正整数、负整数、0,负整数不能以-0开头,   
  27.           * 正整数不能以0开头  
  28.      *   
  29.      * */   
  30.     public   boolean  checkNr(String nr)  
  31.     {  
  32.         String reg="^(-?)[1-9]+\\d*|0" ;  
  33.         return  startCheck(reg,nr);  
  34.     }  
  35.   
  36.     /**  
  37.      * 手机号码验证,11位,不知道详细的手机号码段,只是验证开头必须是1和位数  
  38.      * */   
  39.     public   boolean  checkCellPhone(String cellPhoneNr)  
  40.     {  
  41.         String reg="^[1][\\d]{10}" ;  
  42.         return  startCheck(reg,cellPhoneNr);  
  43.     }  
  44.       
  45.     /**  
  46.      * 检验空白符  
  47.      * */   
  48.     public   boolean  checkWhiteLine(String line)  
  49.     {  
  50.         String regex="(\\s|\\t|\\r)+" ;  
  51.           
  52.         return  startCheck(regex,line);  
  53.     }  
  54.       
  55.       
  56.     /**  
  57.      * 检查EMAIL地址  
  58.      * 用户名和网站名称必须>=1位字符  
  59.      * 地址结尾必须是以com|cn|com|cn|net|org|gov|gov.cn|edu|edu.cn结尾  
  60.      * */   
  61.     public   boolean  checkEmailWithSuffix(String email)  
  62.     {  
  63.         String regex="\\w+\\@\\w+\\.(com|cn|com.cn|net|org|gov|gov.cn|edu|edu.cn)" ;  
  64.           
  65.         return  startCheck(regex,email);  
  66.     }  
  67.       
  68.       
  69.     /**  
  70.      * 检查EMAIL地址  
  71.      * 用户名和网站名称必须>=1位字符  
  72.      * 地址结尾必须是2位以上,如:cn,test,com,info  
  73.      * */   
  74.     public   boolean  checkEmail(String email)  
  75.     {  
  76.         String regex="\\w+\\@\\w+\\.\\w{2,}" ;  
  77.           
  78.         return  startCheck(regex,email);  
  79.     }  
  80.       
  81.     /**  
  82.      * 检查邮政编码(中国),6位,第一位必须是非0开头,其他5位数字为0-9  
  83.      * */   
  84.     public   boolean  checkPostcode(String postCode)  
  85.     {  
  86.         String regex="^[1-9]\\d{5}" ;  
  87.         return  startCheck(regex,postCode);  
  88.     }  
  89.       
  90.     /**  
  91.      * 检验用户名  
  92.      * 取值范围为a-z,A-Z,0-9,"_",汉字,不能以"_"结尾  
  93.      * 用户名有最小长度和最大长度限制,比如用户名必须是4-20位  
  94.      * */   
  95.     public   boolean  checkUsername(String username, int  min, int  max)  
  96.     {  
  97.         String regex="[\\w\u4e00-\u9fa5]{" +min+ "," +max+ "}(?<!_)" ;  
  98.         return  startCheck(regex,username);  
  99.     }  
  100.     /**  
  101.      * 检验用户名  
  102.      * 取值范围为a-z,A-Z,0-9,"_",汉字,不能以"_"结尾  
  103.      * 有最小位数限制的用户名,比如:用户名最少为4位字符  
  104.      * */   
  105.     public   boolean  checkUsername(String username, int  min)  
  106.     {  
  107.         //[\\w\u4e00-\u9fa5]{2,}?   
  108.         String regex="[\\w\u4e00-\u9fa5]{" +min+ ",}(?<!_)" ;  
  109.           
  110.         return  startCheck(regex,username);  
  111.     }  
  112.       
  113.     /**  
  114.      * 检验用户名  
  115.      * 取值范围为a-z,A-Z,0-9,"_",汉字  
  116.      * 最少一位字符,最大字符位数无限制,不能以"_"结尾  
  117.      * */   
  118.     public   boolean  checkUsername(String username)  
  119.     {  
  120.         String regex="[\\w\u4e00-\u9fa5]+(?<!_)" ;  
  121.         return  startCheck(regex,username);  
  122.     }  
  123.       
  124.     /**  
  125.      *  查看IP地址是否合法  
  126.      * */   
  127.     public   boolean  checkIP(String ipAddress)  
  128.     {  
  129.         String regex="(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\."  +  
  130.                      "(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\."  +  
  131.                      "(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\."  +  
  132.                      "(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])" ;  
  133.           
  134.         return  startCheck(regex,ipAddress);  
  135.     }  
  136.       
  137.     /**  
  138.      * 验证国内电话号码  
  139.      * 格式:010-67676767,区号长度3-4位,必须以"0"开头,号码是7-8位  
  140.      * */   
  141.     public   boolean  checkPhoneNr(String phoneNr)  
  142.     {  
  143.         String regex="^[0]\\d{2,3}\\-\\d{7,8}" ;  
  144.           
  145.         return  startCheck(regex,phoneNr);  
  146.     }  
  147.       
  148.     /**  
  149.      * 验证国内电话号码  
  150.      * 格式:6767676, 号码位数必须是7-8位,头一位不能是"0"  
  151.      * */   
  152.     public   boolean  checkPhoneNrWithoutCode(String phoneNr)  
  153.     {  
  154.         String reg="^[1-9]\\d{6,7}" ;  
  155.           
  156.         return  startCheck(reg,phoneNr);  
  157.     }  
  158.       
  159.     /**  
  160.      * 验证国内电话号码  
  161.      * 格式:0106767676,共11位或者12位,必须是0开头  
  162.      * */   
  163.     public   boolean  checkPhoneNrWithoutLine(String phoneNr)  
  164.     {  
  165.         String reg="^[0]\\d{10,11}" ;  
  166.           
  167.         return  startCheck(reg,phoneNr);  
  168.     }  
  169.       
  170.     /**  
  171.      * 验证国内身份证号码:15或18位,由数字组成,不能以0开头  
  172.      * */   
  173.     public   boolean  checkIdCard(String idNr)  
  174.     {  
  175.         String reg="^[1-9](\\d{14}|\\d{17})" ;  
  176.           
  177.         return  startCheck(reg,idNr);  
  178.     }  
  179.       
  180.     /**  
  181.      * 网址验证<br>  
  182.      * 符合类型:<br>  
  183.      *         http://www.test.com<br>  
  184.      *         http://163.com  
  185.      * */   
  186.     public   boolean  checkWebSite(String url)  
  187.     {  
  188.         //http://www.163.com   
  189.         String reg="^(http)\\://(\\w+\\.\\w+\\.\\w+|\\w+\\.\\w+)" ;  
  190.           
  191.         return  startCheck(reg,url);  
  192.     }  

出处:http://www.iteye.com/topic/199489

分享到:
评论

相关推荐

    Java常用正则表达式

    Java常用正则表达式 非常的实用 !!!适合随时的使用,欢迎下载!!!

    Java常用正则表达式.txt

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

    java常用正则表达式.txt

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

    java常用正则表达式(转)

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

    Java 常用正则表达式

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

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

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

    java正则表达式.zip

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它基于模式匹配的概念,能够高效地进行文本搜索、替换和解析。在Java中,正则表达式主要通过`java.util.regex`包来实现,提供了Pattern和Matcher两个核心...

    常用正则表达式集合

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

    常用java正则表达式

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

    java常用正则表达式 和 java 正则表达式详解 csdn 下载

    如果你曾经用过Perl或任何其他内建正则表达式支持的语言,你一定知道用正则表达式处理文本和匹配模式是多么简单。如果你不熟悉这个术语,那么“正则表达式”(Regular Expression)就是一个字符构成的串,它定义了一...

    常用正则表达式大全

    正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和查找、替换、提取等操作。...例如,在JavaScript、Python、Java等语言中,正则表达式的实现可能有所不同,但在核心概念上是相通的。

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

    以下是一些常用的Java正则表达式语法: 1. `.`:匹配任何字符。 2. `*`:匹配零个或多个字符。 3. `+`:匹配一个或多个字符。 4. `?`:匹配零个或一个字符。 5. `{n}`:匹配前一个字符的n次出现。 6. `{n,}`:匹配...

    java 字符串 正则表达式 详细实例代码

    本篇将深入探讨Java中的字符串、正则表达式及其在实际编程中的详细实例代码。 1. **字符串基础** - Java中的字符串是不可变的,这意味着一旦创建了字符串对象,就不能更改其内容。这由`final`关键字确保,提高了...

Global site tag (gtag.js) - Google Analytics