• 正则表达式


    同时包含数字和字母的正则表达式:

    ^(?=.*[0-9])(?=.*[a-zA-Z])(.{8,})$

     匹配emoji表情的正则表达式

    .*[^u0000-uFFFF].*

    匹配一个正整数,[1-9]设置第一个数字不是 0,[0-9]* 表示任意多个数字:

    [1-9][0-9]*

    ⚠️:*号要慎用

    0~99 的两位数

    [1-9][0-9]?
    [1-9][0-9]{0,1}

    您可能搜索 HTML 文档,以查找在 h1 标签内的内容

    贪婪:下面的表达式匹配从开始小于符号 (<) 到关闭 h1 标记的大于符号 (>) 之间的所有内容。

    <.*>

    非贪婪:如果您只需要匹配开始和结束 h1 标签,下面的非贪婪表达式只匹配 <h1>。

    <.*?>
    <w+?>

    通过在 *、+ 或 ? 限定符之后放置 ?,该表达式从"贪婪"表达式转换为"非贪婪"表达式或者最小匹配。

     匹配以一开头多个字母结尾的正则表达式:

    ([0-9])([a-z]+)
    ^[a-zA-Z0-9_]+$      // 所有包含一个以上的字母、数字或下划线的字符串 
    ^[1-9][0-9]*$        // 所有的正整数 
    ^-?[0-9]+$          // 所有的整数 
    ^[-]?[0-9]+(.[0-9]+)?$ // 所有的浮点数
    /** 英文字母 、数字和下划线 */
    public final static Pattern GENERAL = Pattern.compile("^\w+$");
    /** 数字 */
    public final static Pattern NUMBERS = Pattern.compile("\d+");
    /** 字母 */
    public final static Pattern WORD = Pattern.compile("[a-zA-Z]+");
    /** 单个中文汉字 */
    public final static Pattern CHINESE = Pattern.compile("[u4E00-u9FFF]");
    /** 中文汉字 */
    public final static Pattern CHINESES = Pattern.compile("[u4E00-u9FFF]+");
    /** 分组 */
    public final static Pattern GROUP_VAR = Pattern.compile("\$(\d+)");
    /** IP v4 */
    public final static Pattern IPV4 = Pattern.compile("\b((?!\d\d\d)\d+|1\d\d|2[0-4]\d|25[0-5])\.((?!\d\d\d)\d+|1\d\d|2[0-4]\d|25[0-5])\.((?!\d\d\d)\d+|1\d\d|2[0-4]\d|25[0-5])\.((?!\d\d\d)\d+|1\d\d|2[0-4]\d|25[0-5])\b");
    /** IP v6 */
    public final static Pattern IPV6 = Pattern.compile("(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]+|::(ffff(:0{1,4})?:)?((25[0-5]|(2[0-4]|1?[0-9])?[0-9])\.){3}(25[0-5]|(2[0-4]|1?[0-9])?[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1?[0-9])?[0-9])\.){3}(25[0-5]|(2[0-4]|1?[0-9])?[0-9]))");
    /** 货币 */
    public final static Pattern MONEY = Pattern.compile("^(\d+(?:\.\d+)?)$");
    /** 邮件,符合RFC 5322规范,正则来自:http://emailregex.com/ */
    // public final static Pattern EMAIL = Pattern.compile("(\w|.)+@\w+(\.\w+){1,2}");
    public final static Pattern EMAIL = Pattern.compile("(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)])", Pattern.CASE_INSENSITIVE);
    /** 移动电话 */
    public final static Pattern MOBILE = Pattern.compile("(?:0|86|\+86)?1[3456789]\d{9}");
    /** 18位身份证号码 */
    public final static Pattern CITIZEN_ID = Pattern.compile("[1-9]\d{5}[1-2]\d{3}((0\d)|(1[0-2]))(([012]\d)|3[0-1])\d{3}(\d|X|x)");
    /** 邮编 */
    public final static Pattern ZIP_CODE = Pattern.compile("[1-9]\d{5}(?!\d)");
    /** 生日 */
    public final static Pattern BIRTHDAY = Pattern.compile("^(\d{2,4})([/\-.年]?)(\d{1,2})([/\-.月]?)(\d{1,2})日?$");
    /** URL */
    public final static Pattern URL = Pattern.compile("[a-zA-z]+://[^\s]*");
    /** Http URL */
    public final static Pattern URL_HTTP = Pattern.compile("(https://|http://)?([\w-]+\.)+[\w-]+(:\d+)*(/[\w- ./?%&=]*)?");
    /** 中文字、英文字母、数字和下划线 */
    public final static Pattern GENERAL_WITH_CHINESE = Pattern.compile("^[u4E00-u9FFF\w]+$");
    /** UUID */
    public final static Pattern UUID = Pattern.compile("^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$");
    /** 不带横线的UUID */
    public final static Pattern UUID_SIMPLE = Pattern.compile("^[0-9a-z]{32}$");
    /** 中国车牌号码 */
    public final static Pattern PLATE_NUMBER = Pattern.compile("^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z][A-Z][A-Z0-9]{4}[A-Z0-9挂学警港澳]$");
    /** MAC地址正则 */
    public static final Pattern MAC_ADDRESS = Pattern.compile("((?:[A-F0-9]{1,2}[:-]){5}[A-F0-9]{1,2})|(?:0x)(\d{12})(?:.+ETHER)", Pattern.CASE_INSENSITIVE);
    /** 16进制字符串 */
    public static final Pattern HEX = Pattern.compile("^[a-f0-9]+$", Pattern.CASE_INSENSITIVE);
    /** 时间正则 */
    public static final Pattern TIME = Pattern.compile("\d{1,2}:\d{1,2}(:\d{1,2})?");

  • 相关阅读:
    RAID介绍,RAID5,10制作与损坏恢复
    ELK 安装过程
    centos 系统 yum安装软件报错
    linux系统磁盘分区
    python实现遍历两个文件夹,比对文件异常,生成比对报告功能
    win10新装系统,显卡风扇转动,链接正常开机,但设备管理器如果显示,无法更新驱动
    navicat premium 破解,无限试用方法
    安装vmware workstations 12 +ubuntu 遇到的一些问题
    win10 如何打开telnet,ftp等服务
    linux集群架构-keepalived高可用
  • 原文地址:https://www.cnblogs.com/qingmuchuanqi48/p/14123572.html
Copyright © 2020-2023  润新知