• 正则表达式学习笔记


    关于正则表达式基本规则和语法字符记录

    实例功能说明
    .匹配除换行符(\n、\r)之外的任何单个字符,相等于 [^\n\r]。
    \将下一个字符标记为转义符
    \s匹配所有空白符,包括换行,等价于 [ \f\n\r\t\v]。
    \S匹配所有非空白符,不包括换行

    \d

    匹配一个数字字符。等价于 [0-9]。
    \D匹配一个非数字字符。等价于 [^0-9]。
    \w匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
    \W匹配非字母、数字、下划线。等价于 [^A-Za-z0-9_]
    \cx匹配由x指明的控制字符。例: \cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。
    \f匹配一个换页符。等价于 \x0c 和 \cL。
    \n匹配一个换行符。等价于 \x0a 和 \cJ。
    \r匹配一个换行符。等价于 \x0a 和 \cJ。
    \t匹配一个制表符。等价于 \x09 和 \cI。
    \v匹配一个垂直制表符。等价于 \x0b 和 \cK。
    *前面的字符出现0到无数次,贪婪匹配,例:A*,匹配0到无数次个A
    +前面的字符出现1到无数次,贪婪匹配,例:A+,匹配1到无数次个A
    ?前面的字符出现0到1次,例:A?,匹配0或1个A
    {}

    匹配次数限制,包含便捷;例:

    • a{2}:匹配2个a
    • a{2,}: 匹配2个及以上个a
    • a{2,6}:匹配2个到6个a
    []

    分别匹配[]中限定的每个字符;例:

    • [ABC]:分别A,B,C字符
    • [^ABC]:匹配除A,B,C之外的字符
    • [A-Z]:表示一个区间,匹配A到Z的所有大写字母
    ( )标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用
    |

    指明两项之间的一个选择;例:

    • 'z|food' 能匹配 "z" 或 "food"
    • '(z|f)ood' 则匹配 "zood" 或 "food"
    ^开始位置匹配之后的字符,例:^a 匹配以a开始的字符串
    $结束位置匹配之前的字符,例:a$ 匹配以a结束的字符串
    \b

    匹配一个单词边界,即字与空格间的位置;例:

    • \bAbc:匹配Abc开头的单词的Abc子字符串
    • abc\b:匹配abc结尾的单词的abc子字符串
    \B非单词边界匹配,及在单词中,不在头尾处
    • 例1:

    • 例2:

    •  例3:

    ^1[0-9]{10};1开始,后面10个数字,手机号码匹配

  • 相关阅读:
    wxWidgets(1):在Ubuntu 环境中搭建wxWidgets 库环境,安装库和CodeBlocks的IDE,可以运行demo界面了,继续学习中
    Spark 在 Yarn 上运行 Spark 应用程序
    Python学习笔记--Python关键字yield
    堆与栈的区别
    Jetpack Compose学习(8)——State及remeber
    Rasa NLU中的组件
    [技术选型与调研] 流程引擎(工作流引擎|BPM引擎):Activiti、Flowable、Camunda
    4.6 - 堆 4.7 - 图
    超详细SpringBoot+Vue项目部署(两个Vue项目)
    Kubernetes 生产化集群管理 操作系统选择
  • 原文地址:https://blog.csdn.net/wasaiheihei/article/details/126368315