zoukankan      html  css  js  c++  java
  • 正则表达式

    import re
    h=re.match('com','comwww.runcomoob').group()#使用match返回的是一个对象,使用aroup来拿到结果
    print(h)
    #finditer()与findall唯一的区别就是前者拿到的是一个对象后者直接返回结果的列表
    # match只匹配起始位置如果有拿到结果没有就匹配不到
    # 这个对象拥有以下方法
    # group()返回re匹配到的字符串
    # start()返回匹配开始的位置
    # end()返回匹配结束的位置
    # span()返回一个元组包含匹配(开始,结束)
    # group()返回re整体匹配的字符串,可以一次输入多个组号,对应组号匹配的字符串
    m=re.search('com','comwww.runcomcoob').group()
    print(m)
    a=re.sub('g.t','have',"get A, I got B ,I gut C ",2)#找到并替换意思是找到字符串中所有的g..t把他替换成have,最后的2是最大替换次数
    print(a)
    b=re.subn('g.t','have',"get A, I got B ,I gut C ",2)#需要三个参数找到g.t这是被替换的,第二个参数是要替换成的字符串第三个参数是替换次数与sub的区别是这个连替换次数一并返回
    print(b)
    c=re.split('d+','one1two2three3four4')#字符串分割
    print(c)
    
    tex='JGood is a handsome boy,he is cool, clever,and so on...'
    regex=re.compile(r'w*oow*')#吧匹配规则包装成一个对象调用这个对象完成匹配
    print(regex.findall(tex))#查找所有包含’oo的单词
    import re
    #正则分组就是去已经提取到的数据中在去提取数据。
    #origin="hasaabc kljlkjhlk hlaabc kj"
    #r=re.match("hw+",origin)#match从开头来找开头找不到就算没有
    #r=re.match("h(w+)",origin)
    #r=re.match("h(?P<name>w+)",origin)
    #print(r.group())#获取匹配到的所有结果
    #print(r.groups())#获取匹配分组结果
    #print(r.groupdict())#获取匹配分组结果按键值对。

    #y=re.findall("h(w+)a(ab)c",origin)
    #print(y)
    #sub替换匹配成功的字符串
    #split分割匹配字符串

    #正则分组就是去已经提取到的数据中再去提取数据

    分组:
    origin="hhhhhw alex khkh alex ajhklh alex jhjj"
    r=re.split("alex",origin,1)#分割的有分组和无分组是不一样的,
    print(r)
  • 相关阅读:
    JAVA日报
    JAVA日报
    JAVA日报
    论文爬取(四)
    论文爬取(三)
    论文爬取(二)
    剑指 Offer 59
    剑指 Offer 58
    剑指 Offer 58
    剑指 Offer 57
  • 原文地址:https://www.cnblogs.com/zang963469010/p/5959923.html
Copyright © 2011-2022 走看看