正则表达式详解+常用示例

正则表达式详解+常用示例

  • 字符范围匹配
    • 示例
  • 元字符
    • 示例
  • 多次重复匹配
    • 示例
  • 定位匹配
  • 贪婪模式
  • 非贪婪模式
  • 表达式分组
    • 示例

字符范围匹配

正则表达式详解+常用示例_第1张图片

示例

  • 精准匹配字符串” hallo” 或者” hello”
    h[ae]llo
  • 请匹配数字范围(0570-0579)
    057[0-9]
  • 单选题只允许输入ABCD其中一项
    [ABCD]

元字符

正则表达式详解+常用示例_第2张图片

示例

  • 请匹配数字(3213.383219)
    \d\d\d\d.\d\d\d\d\d\d
  • 匹配杭州与宁波座机号码(0571|0574-XXXXXXXX)
    057[14]-\d\d\d\d\d\d\d\d
  • 请匹配18位身份证号
    [1234568]\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d

多次重复匹配

正则表达式详解+常用示例_第3张图片

示例

  • 验证短信验证码(6位数字)
    \d{6}
  • 请匹配全国座机号(区号3或4位-电话号码7或8位)
    \d{3,4}-\d{7,8}
  • 请匹配英文姓名(例如:James Watson)
    [A-Z][a-z]{1,}\s

定位匹配

正则表达式详解+常用示例_第4张图片

贪婪模式

  • 在满足条件的情况下尽可能多匹配到字符串
  • 示例:111222333
  • 正则:\d{6,8}
  • 匹配结果:111222333

非贪婪模式

  • 在满足条件的情况下尽可能少匹配到字符串
  • 示例:111222333
  • 正则:\d{6,8}?
  • 匹配结果:111222

表达式分组

  • 分组将“正则”分组为多个子表达式
  • 示例:abababcdcdcd
  • 正则表达式:(ab){3}(cd){3}

示例

  • 匹配验证码(4位或6位)
    ( ^ \d{4}$)|(^ \d{6} $)
  • 匹配车牌号(冀A-U888G)
    ^ [ 冀黑粤晋][A-Z]-[A-Z0-9]{5}$
  • 匹配中文或英文姓名
    [\u4e00-\u]^ [A-Z] [a-z]+\s[A+Z][a-z]*$

你可能感兴趣的:(Java,Web,正则表达式)