• 正则表达式


    一、概念

    ​ 正则表达式,又称规则表达式(Regular Expression)。通常被用来检索、替换符合某个模式(规则)的文本。

    二、正则表达式的规则

    ​ 正则表达式在java中主要涉及到两类,Pattern和Matcher。

    ​ java.util.regex.Pattern类的实例,主要是作用是给正则表达式一个匹配模式。在java里正则表达式是一个字符串,字符串的能力是非常有限的,因此在java里需要Pattern实例来包装这个正则表达式。

    ​ java.util.regex.Matcher类的实例,作用是增加表达式匹配字符串的权力,调用Matcher实例的方法,正则表达式可以匹配整个字符串。

    Pattern的构造函数是私有的,不能通过new来直接创建,所以通过静态方法compile(String regex)方法来创建,将给定的正则表达式编译并赋予给Pattern类。

    String regex = "abcd";
    Pattern p = Pattern.compile(regex);
    
    字符的取值范围 描述
    [abc] 表示abc中任意一个
    [^abc] 表示不是abc中任意一个
    [a-zA-Z] 表示大小写的英文字母
    [0-9] 表示是数字
    数量表达式 描述
    ? 表示出现0或1次
    + 表示出现1或多次
    * 表示出现0、1或多次
    {n} 表示出现n次
    {n,m} 表示出现n-m次
    {n,} 表示出现n次以上
    简洁的字符表示 描述
    . 表示任意的字符
    d 表示数字
    D 表示非数字
    s 表示由空字符组成
    S 表示由非空字符组成
    w 表示字母、数字、下划线
    W 表示不是由字母数组下划线组成
    逻辑表达式 描述
    XY 表示X后面跟着Y
    X|Y 表示X或Y
    (X) 将X看作一个整体

    三、正则验证

    验证一

    1. 定义正则表达式:Pattern p = Pattern.compile(String regex);
    2. 表达式的模式:Matcher m = p.matcher("需要匹配的数据");
    3. 验证:m.matches();

    验证二

    验证:boolean matches(String regex);

    拆分:String[] split (String regex);

    替换:String replaceAll(String regex, String replacement)

  • 相关阅读:
    10. Regular Expression Matching
    9. Palindrome Number (考虑负数的情况)
    8. String to Integer (整数的溢出)
    7. Reverse Integer (整数的溢出)
    LeetCode Minimum Size Subarray Sum
    LeetCode Course Schedule II
    Linux 文件缓存 (一)
    LeetCode Tries Prefix Tree
    Linux : lsof 命令
    LeetCode Binary Tree Right Side View
  • 原文地址:https://www.cnblogs.com/qqkkOvO/p/14050233.html
Copyright © 2020-2023  润新知