• python正则表达式


    匹配字符

    .       匹配除
    以外的任意一个字符
    ^      从起始位置开始匹配
    $      从末尾开始匹配
    *      匹配0到任意个字符
    +     匹配1到任意字符
    ?      匹配0到2个字符
    {}    匹配任意字符 
    {1,2}  匹配1到2个字符
    
    []        .  $ + ? {}   这些在[]中不在有特殊意义   -   ^具有意义
    '''
    d   匹配任何十进制数  相当于[0-9]
    D   匹配任何非数字字符  相当于[^0-9]
    s   匹配任何空白字符  相当于 [	
    
    fv]
    S   匹配任何非空白字符  相当于[^	
    
    fv]
    w   匹配任何字母数字字符  相当于[a-z0-9A-Z]
    W   匹配任何非字母数字字符  相当于[^a-z0-9A-Z]
       匹配一个单词边界   匹配空格间的位置   res=re.findall(r'a','a bbccd')
    '''
    

    re中的方法

    1.match

    #match   匹配字符串的起始位置
    res_match=re.match('com','comaa',re.S).group()   #匹配所有字符,改变标志位
    res_match=re.match('com','comaa').span()   #从第几个位置到第几个位置
    

    2.search

    #search
    res_search=re.search('com','aacom').group()
    print(res_search)
    

    3.sub  subn

    #sub    替换字符串subn
    res_sub=re.sub('a','b','a 123 456 a',1)   #最后一个参数是替换的次数
    res_sub=re.subn('a','b','a 123 456 a')    #返回一个元祖,包含替换后的元素和替换的次数
    print(res_sub)
    

    4.findall

    res1=re.findall('a*a','bbaaaaaaa')
    res=re.findall('a.*a','baaaccaa')   #匹配以a开头一直到a结尾的字符
    res=re.findall('a.+a','bbaaaccaa')
    res=re.findall('a.?a','bbaaaacc')
    res=re.findall('a.{2}a','bbaaacc')   #2次
    res=re.findall('a.{,2}a','bbaaacc')  #0到2次
    res=re.findall('ab{1,2}a','bbabbaacc')  #b 1到2次
    

    5.split

    #split
    res_split=re.split('d','one1two2',1)   #代表分割的次数
    print('hh',res_split)
    

    6.compile

    #compile
    text='aa9b'
    regx=re.compile(r'ad')
    print(type(regx))   #对象
    print(regx.findall(text))   #多次调用更高效
    

    python  re  转义

    #python   re   转义
    #\\ 到re  \  正则匹配后  
    #所以加上原生字符串r
    

    正则分组

    #正则分组
    #去已经匹配到数据中在做匹配
    res=re.findall('a([1-9])d','a3d')
    res=re.match('a(?P<name>.)a','afa bb cc')
    print(res.group())       #获取所有结果
    print(res.groups())     #获取分组结果,以元组展示
    print(res.groupdict())   #获取分组结果,以字典展示
    

      

  • 相关阅读:
    25-k个一组翻转链表 203-移除链表元素 206-反转一个链表
    24. 两两交换链表中的节点
    23-合并K个升序链表
    19-删除链表的倒数第N个节点
    18-四数之和
    21-合并两个有序链表
    双指针
    16-最接近的三数之和
    15-三数之和
    RobotFramework 断言关键字
  • 原文地址:https://www.cnblogs.com/xczssl/p/6340590.html
Copyright © 2020-2023  润新知