zoukankan      html  css  js  c++  java
  • 16,re模块的常用方法

    ret =re.findall('d+', 'eva123egon4yuan567')
    print(ret)#返回满足条件的结果 ,放在一个列表里。
    
    ret2 = re.search('d+','evaegonyu1an')
    print(ret2.group())# 函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象,该对象可以
    # 通过调用group()方法得到匹配的字符串,如果字符串没有匹配,则返回None。
    
    ret4 = re.match('d+','321eva123egon4yuan567')
    print(ret4)
    print(ret4.group())#不会直接返回结果,而是直接在正则表达式的开头加了一个^,判断是否已数字开头,知道找到字母为止。
    
    ret = re.split('d+','alex27egon18yuan40')
    print(ret)#判断以数字分割,返回一个列表

    obj = re.compile('d{3}')#将正则表达式编译成一个 正则表达式对象,规则要匹配的是3个数字。
    print(obj)
    ret = obj.search('abc123eeee')
    print(ret.group()) #结果123
    ret = obj.findall('abc123eeee456as12')#以列表的形式把匹配到的内容,返回到一个列表中,个数不够的则不匹配
    print(ret)
    ret = re.finditer('d','ds3sy4784a')
    print(ret)#<callable_iterator object at 0x000000751B208198>#回一个存放匹配结果的迭代器
    # print(next(ret).group())#可以通过next()取值
    # print(next(ret).group())
    print([i.group() for i in ret])#也可以通过for循环取值,#查看剩余的结果。

    ret = re.split('d+','zhang123ya23jie')
    print(ret)#以数字分割,把结果以列表形式输出。
    
    ret = re.search('<(w+)>(w+)<(/w+)>','<h1>hello</h2>')
    print(ret.group(1))#第一个group组
    print(ret.group(2))#第二个group组
    print(ret.group(3))#第三个group组
    
    给group组重命名
    ret = re.search('<(?P<tag>w+)>(?P<bbc>w+)</(?P<tahg>w+)>','<h1>hello</h1>')
    print(ret.group('tag')) 
    print(ret.group('bbc'))
    print(ret.group('tag'))


  • 相关阅读:
    poj 3253 Fence Repair (优先队列,哈弗曼)
    容斥原理 (转载)
    poj 1088 滑雪 DP(dfs的记忆化搜索)
    饭卡 01背包 + 贪心
    N分之一 竖式除法模拟
    poj2325 大数除法+贪心
    优先队列重载运算符< 以及初始化列表
    POJ 2718 Smallest Difference(贪心 or next_permutation暴力枚举)
    HASH算法
    字符串匹配算法——KMP算法
  • 原文地址:https://www.cnblogs.com/ZJGG/p/9069591.html
Copyright © 2011-2022 走看看