zoukankan      html  css  js  c++  java
  • python 正则

    s  :空白符;
    S  :非空白符;
    [sS]  :任意字符;
    [sS]*  :0个到多个任意字符;
    [sS]*?   : 0个字符,匹配任何字符前的位置;

    d:数字;

    B:非数字 ;

    w:匹配单词 单词等价于:[a-zA-Z0-9_]; 

    W:匹配非单词;

    规则:

    .  匹配任意单个字符;

    *  匹配前一个字符0次或多次;

    +  匹配前一个字符1次或多次;

    ?  匹配前一个字符0次或一次;

    {m}    匹配前一个字符m次;

    {m,n} 匹配前一个字符 m - n 次;

    {m,}   匹配前一外字符至少 m次 至多无限次;

    {,n}  匹配前一个字符 0 到 n次;

      转义字符;

    [...]  字符集 例:[a-z];   

    .*? *? +? ??  {}?    使* + 等 变成非贪婪模式

    边界匹配(不消耗待匹配的待匹配字符串的字符)

    ^:匹配字符串开头,在多行模式中匹配每一行的行首;

    $:匹配字符串结尾,在多行模式中匹配每一行的行尾;

    :匹配单词边界,不匹配任何字符,匹配的只是一个位置,这个位置的一侧是构成单词的字符,另一侧为非字符、字符串的开始或结束位置,是零宽度的。(“单词”是由w所定义的单词子串) 相当于:(?<!w)(?=w)|(?<=w)(?!w);

    B:[^];

    A:仅匹配字符串开头;

    :仅匹配字符串结尾;

    分组:

    |  或,左右表达式任意匹配一个,它先尝试匹配 | 左边的表达式,如果匹配成功则跳过匹配右边的表达式;如果 | 没有被包括在()中,则它在范围是整个正则表达式。

    ()  分组 ;从表达式左边开始,第遇到一个分组,编号加1;分组表达式作为一个整体,后面可接数量词;分组表达式中的 | 仅在该分组中有效。   例:(abc){3}  (abc|def)123  (abc|def){3}123

    umber  引用编号为 number 的分组匹配到的字符串。 例:(d)([a-z])12

    环视(lookhead)

    (?=) :顺序肯定环视  

    (?!) :顺序否定环视  

    (?<=) :逆序 肯定环视 

    (?<!) :逆序否定环视  

  • 相关阅读:
    MFC中注释含义
    数字时钟
    布线问题分支限界法
    精度计算大数阶乘ACM常用算法
    C++库大全
    简单文本编辑器制作windows程序设计雏形
    使用计时器方法2
    MFC常用基本数据类型
    Xcode 代码格式化/自动排版
    android的color值
  • 原文地址:https://www.cnblogs.com/yangxiaolan/p/5632849.html
Copyright © 2011-2022 走看看