Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 381|回复: 0

[正则表达式学习]十个正则表达式测试(JAVA)

[复制链接]
  • TA的每日心情
    开心
    2021-3-12 23:18
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2014-10-28 23:58:44 | 显示全部楼层 |阅读模式
    1. 用户名正则表达式模式(测试代码请下载)
       
    1. ^[a-z0-9_-]{3,15}$
    复制代码

       
    1. ^                         # 行开始
    2.   [a-z0-9_-]              # 匹配列表中的字符,a-z,0�9,下划线,连字符
    3.             {3,15}        # 长度至少3个字符,最大长度为15
    4. $                         # 行结束
    复制代码

        2. 密码正则表达式模式
       
    1. ((?=.*d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%]).{6,20})
    复制代码

       
    1. (                        # 组开始
    2.     (?=.*d)             # 必须包含一个数字 0-9
    3.     (?=.*[a-z])          # 必须包含一个小写字符
    4.     (?=.*[A-Z])          # 必须包含一个大写字符
    5.     (?=.*[@#$%])         # 必须包含一个列表中的特殊字符"@#$%"
    6.                 .        # 检查所有字符串与前面的条件的匹配
    7.                  {6,20}  # 长度至少为6个字符,最大长度为20
    8. )                        # 组结束
    复制代码

        3. 16进制颜色代码正则表达式模式
       
    1. ^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$
    复制代码

       
    1. ^                       # 行开始
    2. #                      #   必须包含一个"#"符号
    3.   (                     #   组#1开始
    4.    [A-Fa-f0-9]{6}       #     列表中的任意字符串,长度为6
    5.    |                    #     ..或者
    6.    [A-Fa-f0-9]{3}       #     列表中的任意字符串,长度为3
    7.   )                     #   组#1结束
    8. $                       # 行结束
    复制代码

        4. Email 正则表达式模式
       
    1. ^[_A-Za-z0-9-]+(\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\.[A-Za-z0-9]+)*(\.[A-Za-z]{2,})$
    复制代码

       
    1. ^                            # 行开始
    2.   [_A-Za-z0-9-]+             #   必须以中括号中的字符为起始字符[],必须包含一个或多个(+)
    3.   (                          #   组#1开始
    4.     \.[_A-Za-z0-9-]+        #     接下来是一个点"."和中括号内的字符[],必须包含一个或者多个(+)
    5.   )*                         #   组#1结束, 这个组是可选的(*)
    6.     @                        #     必须包含一个"@"符号
    7.      [A-Za-z0-9]+            #       接下来是中括号内的字符[],必须包含一个或者多个(+)
    8.       (                      #         组 #2开始 � 一级TLD检查
    9.        \.[A-Za-z0-9]+       #           接下来是一个点"."和中括号内的字符[],必须包含一个或者多个(+)
    10.       )*                     #         组#2结束,这个组是可选的(*)
    11.       (                      #         组#3开始 � 二级TLD检查
    12.        \.[A-Za-z]{2,}       #           接下来是一个点"."和中括号内的字符[], 最小长度为2
    13.       )                      #         组#3结束
    14. $                            # 行结束
    复制代码

        5. 图像文件扩展名正则表达式模式
       
    1. ([^\s]+(\.(?i)(jpg|png|gif|bmp))$)
    复制代码

       
    1. (                         # 组#1开始
    2. [^\s]+                   #   必须包含一个或更多的任意字符(除了空格)
    3.        (                  #     组#2开始
    4.         \.                #       接下来是一个点"."
    5.          (?i)             #       忽略后边字符的大小写检查
    6.              (            #         组#3开始
    7.               jpg         #           包含字符"jpg"
    8.               |           #           ..或者
    9.               png         #           包含字符"png"
    10.               |           #           .. 或者
    11.               gif         #           包含字符"gif"
    12.               |           #           .. 或者
    13.               bmp         #           包含字符"bmp"
    14.              )            #         组#3结束
    15.        )                  #     组#2结束
    16. $                        #   字符串的结束
    17. )                         # 组#1结束
    复制代码

       
    1. 补充一个:[\s\S]*?([^\/]*?\.jpg)
    复制代码

        6. IP地址正则表达式模式
       
    1. ^([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.
    2. ([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])$
    复制代码

       
    1. ^                  # 行开始
    2. (                 #   组#1开始
    3.   [01]?\d\d?     #     可以是1到2个数字. 如果出现3个数字, 必须以0或者1开始
    4.                    #     例如 ([0-9], [0-9][0-9],[0-1][0-9][0-9])
    5.     |              #     ...或者
    6.   2[0-4]\d        #     以2开始, 紧跟着是0-4,并且以任意数字结尾(2[0-4][0-9])
    7.    |               #     ...或者
    8.   25[0-5]          #     以2开始, 紧跟着是5,并且以0-5结尾 (25[0-5])
    9. )                 #   组#1结束
    10.   \.               #   接下来是点"."
    11. ....               #   重复3次 (3x)
    12. $                  # 行结束
    复制代码

        7. 时间格式正则表达式模式
        12-小时制时间正则表达式模式
       
    1. (1[012]|[1-9]):[0-5][0-9](\s)?(?i)(am|pm)
    复制代码

       
    1. (                                  # 组#1开始
    2. 1[012]                            #   以10, 11, 12开始
    3. |                                 #   或者
    4. [1-9]                             #   以1,2,...9开始
    5. )                                  # 组#1结束
    6. :                                 #   接下来是一个冒号 (:)
    7.   [0-5][0-9]                       #     接下来是0..5和0..9,意思是00到59
    8.             (\s)?                 #       接下来是一个空格(可选)
    9.                   (?i)             #         下面的检查不区分大小写
    10.                       (am|pm)      #           接下来是AM或者PM
    复制代码

        24小时制时间正则表达式模式
       
    1. ([01]?[0-9]|2[0-3]):[0-5][0-9]
    复制代码

       
    1. (                                  # 组#1开始
    2. [01]?[0-9]                        #   以0-9,1-9,00-09,10-19开始
    3. |                                 #   或者
    4. 2[0-3]                            #   以20-23开始
    5. )                                  # 组#1结束
    6. :                                 #   接下来是一个冒号(:)
    7.   [0-5][0-9]                       #     接下来是0..5和0..9,意思是00到59
    复制代码

        8. 日期格式 (dd/mm/yyyy) 正则表达式模式
       
    1. (0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/((19|20)\d\d)
    复制代码

       
    1. (                          # 组#1开始
    2. 0?[1-9]                   #   01-09或者1-9
    3. |                         #   ..或者
    4. [12][0-9]                 #   10-19或者20-29
    5. |                         #   ..或者
    6. 3[01]                     #   30, 31
    7. )                          # 组#1结束
    8.   /                        #   接下来是一个"/"
    9.    (                       #     组#2开始
    10.     0?[1-9]                #       01-09或者1-9
    11.     |                      #       ..或者
    12.     1[012]                 #       10,11,12
    13.     )                      #     组#2结束
    14.      /                     #       接下来是一个"/"
    15.       (                    #         组#3开始
    16.        (19|20)\d\d       #           19[0-9][0-9]或者20[0-9][0-9]
    17.       )                    #         组#3结束
    复制代码

        9. HTML标签正则表达式模式
       
    1. <("[^"]*"|"[^"]*"|[^"">])*>
    复制代码

       
    1. <                # 以"<"标签开始
    2. (               #   组#1开始
    3.   "[^"]*"        #     只允许两个双引号成对出现-"string"
    4.   |              #     ..或者
    5.   "[^"]*"        #     只允许两个单引号成对出现- "string"
    6.   |              #     ..或者
    7.   [^"">]         #     不能出现单独的双引号、单引号和">"
    8. )               #   组#1结束
    9. *               #   0次或多次
    10. >                # 以结束标签">"结束
    复制代码

        10. HTML链接正则表达式模式
        HTML中的A标签正则表达式模式
       
    1. (?i)<a([^>]+)>(.+?)</a>
    复制代码

       
    1. (                 # 组#1开始
    2. ?i               #      所有的检查区分大小写
    3. )                 # 组#1结束
    4. <a                # 以"<a"开始
    5.   (               #      组#2开始
    6.    [^>]+          #        除了(">")之外的任意字符,至少一个字符
    7.   )               #      组#2结束
    8.   >               #        接下来是">"
    9.    (.+?)          #          匹配所有
    10.         </a>      #            以"</a>结束
    复制代码

        提取HTML链接正则表达式模式
       
    1. \s*(?i)href\s*=\s*("([^"]*)"|"[^"]*"|([^"">\s]+));
    复制代码

       
    1. s*                             # 可以以空格开始
    2.   (?i)                          #      所有的检查是不区分大小写的
    3.      href                       #        接下来是一个"href"字
    4.         s*=s*                 #          等号两边都允许空格,
    5.               (                 #            组#1开始
    6.                "([^"]*")        #              只允许2个双引号成对出现 - "string"
    7.                |                #              ..或者
    8.                "[^"]*"          #              只允许2个单引号成对出现 - "string"
    9.                |                #              ..或者
    10.                ([^"">]+)     #              或者不允许出现单独的单引号、双引号和">"
    11.                )                #            组#1结束
    复制代码

       
    D:java>java TestTen
    测试一:用户名正则表达式
    "j123_" 精确匹配 "^[a-z0-9_-]{3,15}$" ? true
        测试二:密码正则表达式
    "j123_J@" 精确匹配 "((?=.*d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%]).{6,20})" ? true
      
        测试三:16进制颜色代码
    "#af0067" 精确匹配 "^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$" ? true
        测试四:Email 正则表达式
    "j1242@sina.com" 精确匹配 "^([_A-Za-z0-9-]+)@[A-Za-z0-9]+(.[A-Za-z0-9]+)*(.[A-
    Za-z]{2,})$" ? true
        测试五:图像文件扩展名
    "j123_.jPG" 精确匹配 "([^s]+(.(?i)(jpg|png|gif|bmp))$)" ? true
        测试六: IP地址正则表达式
    "192.168.1.11" 精确匹配 "^([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25
    [0-5]).([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5])$" ? true
        测试七:时间格式正则表达式
    "12:35 PM" 精确匹配 "(1[012]|[1-9]):[0-5][0-9](s)?(?i)(am|pm)" ? true
        测试八:日期格式(dd/mm/yyyy)
    "02/09/2012" 精确匹配 "(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/((19|20)dd)"
    ? true
        测试九:HTML标签正则表达式
    "<img src="../test/j123.gif">" 精确匹配 "<("[^"]*"|"[^"]*"|[^"">])*>" ? true
        测试十:HTML链接正则表达式
    "<a hreF="www.baidu.com">www.baidu.com</a>" 精确匹配 ".*?(?i)hrefs*=s*("([^"]*
    )"|"[^"]*"|[^"">s]+).*?" ? true
      
          
       

       
         
         
          
          

            
          

            
          
         
       

      


    源码下载:http://file.javaxxz.com/2014/10/28/235844125.zip
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2025-2-26 01:37 , Processed in 0.366178 second(s), 50 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表