美文网首页
正则表达式

正则表达式

作者: 一直乱来 | 来源:发表于2017-11-19 16:49 被阅读0次

    title: 正则表达式
    comment: true
    date: 2017-11-08 17:56:44
    tags:


    特殊字符

    .: 代替任何字符,除了换行符
    ^: 匹配字符开始
    $: 匹配字符结束
      ^py$只匹配pypy可匹配python
    *: 重复前一个正则0至n次
      ab*匹配a、ab、abbb
    +: 重复前一个正则1至n次
    ?: 重复前一个正则0或1次
    *?,+?,??: ?会使前一个正则不贪婪(尽可能少的匹配前一个正则的次数)
      <.*> against <
    a> b <c> 会匹配<a> b <c>而<.*?>只匹配<a>
    {m}: 重复前一个正则m次
    {m,n}: 重复前一个正则m至n中的任意次数
    {m,n}?: 不贪婪
    []: 代表字符串的集合
      [a-z]
    \d: 数字
    \s: 空白符
    []: 表示范围
      [0-9a-zA-Z_]:匹配一个数字、字母或者下划线
    []+: 表示一个字符串
    |: 表示或
    (): 分组
    (?...): 通常不作为分组
    (?aiLmsux): 从中选取一个或者多个字母,与python的re模块相对应。放在正则表达式之前。
    (?:...): 非捕获版本的分组,匹配后不能被引用
    (?imsx-imsx:...): 与上一样,适用于部分正则表达式
    (?P<name>...): 为正则表达式命名,增加额外名字
    (?P=name): 引用name的字符
    (?#...): 将#后的内容作为注释忽略
    (?=...): 匹配后面接...的字符,但不消耗字符
    (?!...): 匹配后面不接...的字符,但不消耗字符
    (?<=...): 匹配之前接...的字符,但不消耗字符
    (?<!...): 匹配之前不接...的字符,但不消耗字符
    (?(id/name)yes-pattern|no-pattern): 匹配组,若成功匹配yes-pattern,否则匹配no-pattern。
    no-pattern可省略*

    +字母

    \number: 匹配对应编组内容
    \A: 仅匹配字符串开头

    image

    相关文章

      网友评论

          本文标题:正则表达式

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