正则表达式

正则表达式

组成

元字符+普通字符

普通字符

大小写字母、数字、标点符号及一些其他符号

元字符

在正则表达式中具有特殊意义的专用字符

常用的元字符

  • \:转义字符,!、\n等
  • ^:匹配字符串开始的位置
    • 例: a、the、^#
  • $:匹配字符串结束的位置
    • 例: word$
  • .:匹配除\n之外的任意的一个字符
    • 例: go.d、g...d
  • *:匹配前面子表达式0次或者多次
    • 例:goo*d、go.*d
  • list:匹配list列表中的一个字符
    • 例: goolad,abca-za-z0-9
  • \^list:匹配任意不在list列表中的一个字符
    • 例: ^a-z^0-9\^A-Z0-9
  • {n,m}:匹配前面的子表达式n到m次,有{n}、{n,}、{n,m}三种格式
    • 例:go{2}d、go{2,3}d、go{2,}d
    • {n}:匹配前面的子表达式恰好 n 次。
    • {n,}:匹配前面的子表达式至少 n 次,可以无限多次。
    • {n,m}:匹配前面的子表达式至少 n 次,但不超过 m 次。
  • \[:punct:] → 匹配标点符号字符
    • 例如\[:punct:] → :

扩展元字符

  • +:匹配前面子表达式1次以上
    • 例: go+d,将匹配至少一个o
  • ?:匹配前面子表达式0次或者1次
    • 例: go?d,将匹配gd或god
  • ():将括号中的字符串作为一个整体
    • 例:(xyz)+,将匹配 xyz 整体1次以上,如xyzxyz
  • |:以或的方式匹配字条串
    • 例1: good|food,将匹配good或者food
    • 例2: g(oo|la)d,将匹配good或者glad

表示一类字符的原子

  • \d:表示一个十进制的数字 0-9
    \D:表示非数字
  • \w:表示一个字 0-9a-zA-Z_
    \W:表示除0-9a-zA-Z_之外的字符
  • \s:表示一个空白字符(空格,tab,换页符等)
    \S:表示一个非空白字符
  • \i: 表示不区分大小写
相关推荐
吴声子夜歌2 小时前
正则表达式——边界
正则表达式
营养充电站10 小时前
C++23 新特性在 CLion 中的实战体验
macos·docker·jupyter·正则表达式
吴声子夜歌20 小时前
正则表达式——字符组
正则表达式
天若有情6731 天前
自制浏览器端文本批量处理小工具,支持查找替换、内容删除、正则表达式,开箱即用
正则表达式
吴声子夜歌1 天前
正则表达式——简单的模式匹配
正则表达式
吴声子夜歌1 天前
正则表达式——前后查找
正则表达式
吴声子夜歌1 天前
正则表达式参考
正则表达式
吴声子夜歌2 天前
正则表达式——常见应用软件和编程语言中的正则表达式
正则表达式
吴声子夜歌2 天前
正则表达式——使用子表达式
正则表达式
吴声子夜歌3 天前
正则表达式——重复匹配
正则表达式