zoukankan      html  css  js  c++  java
  • JAVA之正则表达式

    正则表达式:处理字符串的利器
    一个正则表达式就是由普通的字符例如字符( a 到 z)以及特殊字符(元字符)组成的文字模式


    API:
    String
    Pattern:正则表达式的编译表示形式。
    Matcher:匹配器

    Pattern:
    static Pattern compile(String regex) : 根据正则表达式创建,正则表达式对象
    Matcher matcher(String str) :根据需要判断的字符串 返回一个对应的匹配器

    Matcher:
    boolean find():
    尝试查找与该模式匹配的输入序列的下一个子序列

    String group() 返回由以前匹配操作所匹配的输入子序列。

    boolean lookingAt() 尝试将从区域开头开始的输入序列与该模式匹配

    replaceAll(String replacement) :将与正则表达式匹配的子序列替换成指定字符

    ------------------------------------------

    Greedy 数量词
    X? X,一次或一次也没有
    X* X,零次或多次
    X+ X,一次或多次
    X{n} X,恰好 n
    X{n,} X,至少 n
    X{n,m} X,至少 n 次,但是不超过 m

    Greedy,贪婪的,一次读取最多个数,不符合,回吐一个

    Reluctant 数量词
    X?? X,一次或一次也没有
    X*? X,零次或多次
    X+? X,一次或多次
    X{n}? X,恰好 n
    X{n,}? X,至少 n
    X{n,m}?

    X,至少 n 次,但是不超过 m

    Reluctant:勉强的 ,一次读取最少个数,不符合,再读一个

    Possessive 数量词
    X?+ X,一次或一次也没有
    X*+ X,零次或多次
    X++ X,一次或多次
    X{n}+ X,恰好 n
    X{n,}+ X,至少 n
    X{n,m}+ X,至少 n 次,但是不超过 m

    Possessive :占有的,一次读取最多个数,不会回吐一个

    量词的区别会导致匹配的结果不同

  • 相关阅读:
    凸包Graham Scan算法实现
    人与人之间的差距是从大学开始的
    google笔试题两个n维数组logn求中位数问题 zz
    matlab中使用结构体
    人脸识别理论与应用研究 zz
    如果让我再读一次研究生 zz
    Open Yale CourseFinancial MarketNote1 zz
    哈尔小波变换示例
    全屏模式 硬缩放
    APE结合键盘控制角色运动 转
  • 原文地址:https://www.cnblogs.com/java888/p/10418505.html
Copyright © 2011-2022 走看看