美文网首页
正则表达式规则

正则表达式规则

作者: _Irving | 来源:发表于2019-03-08 10:54 被阅读0次

    1、非打印字符
    非打印字符也可以是正则表达式的组成部分,下面列出了表示非打印字符的转义字列

    \cx:匹配有x知名的控制字符。例如:\cM匹配一个control-M或回车符。x的值必须为A-Z或a-z之一。
    \f:匹配一个换页符。等价于\x0c和\cL
    \n:换行符
    \r:回车符
    \s:匹配任何空白字符
    \S:匹配任意一个非空白字符
    \t:匹配一个制表符
    \v:匹配一个垂直制表符

    2、特俗字符

    ^:匹配输入字符的开始位置,除非再方括号表达式中使用,此时它表示不接受该字符集合(非)
    $:匹配输入字符的结尾位置
    ():标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用
    *:0-无限
    +:1-无限
    ?:0-1
    []:标记一个中括号表达式的开始和结尾
    |:指明两项之间的一个选择

    3、限定符

    *:0-无限
    +:1-无限
    ?:0-1
    {n}:匹配n次
    {n,}:匹配至少n次
    {n,m}:最少匹配n次,最多匹配m次
    *、+限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或最小匹配。通过在 *、+ 或 ? 限定符之后放置 ?,该表达式从"贪心"表达式转换为"非贪心"表达式或者最小匹配。

    4、定位符

    定位符使您能够将正则表达式固定到行首或行尾。它们还使您能够创建这样的正则表达式,这些正则表达式出现在一个单词内、在一个单词的开头或者一个单词的结尾。
    ^和$分别指字符串的开始和结尾,
    \b描述单词的前或后边界,即字与空格键的位置/\bCha/ /ter\b/
    \B表示的非单词边界 /\Bapt/

    5、选择

    用圆括号将所有选择项括起来,相邻的选择项之间用|分隔。但用圆括号会有一个副作用,使相关的匹配会被缓存,此时可用?:放在第一个选项前来消除这种副作用。

    其中?:是非捕获元之一,还有两个非捕获元是?=和?!,这两个还有更多的含义,前者为正向预查,在任何开始匹配圆括号的正则表达式模式的位置来匹配搜索字符串,后者为负向预查,在任何开始不匹配该正则表达式模式的位置来匹配搜索字符串。

    相关文章

      网友评论

          本文标题:正则表达式规则

          本文链接:https://www.haomeiwen.com/subject/brggqftx.html