zoukankan      html  css  js  c++  java
  • re正则常用示例积累

    2019-12-7

    import re
    
    '''
    示例1: 提取网站的网址
    
    '''
    urls = ['https://blog.csdn.net/xxcupid/article/details/51993235',
            'https://mbd.baidu.com/newspage/data/landingsuper?context=%7B%22nid%22%3A%22news_9142246589774289071%22%7D&n_type=0&p_from=1',
            'https://www.jd.com/?cu=true&utm_source=baidu-pinzhuan&utm_medium=cpc']
    result = []
    for url in urls:
        result.append(re.sub(r"(https://.*?)/.*", lambda x: x.group(1), url))
    print(result)  # ['https://blog.csdn.net', 'https://mbd.baidu.com', 'https://www.jd.com']
    
    '''
    说明:
         (1) 使用了re.sub(p,f,s)方法,对匹配的内容进行替换, 本例f返回分组内容
         (2)  正则分组, group(1) 就是抽取第一个分组的内容
         (3) 取消贪婪模式
         (4) lambda表达式     入参:返回结果
    
    '''
    
    
    
    '''
        示例2: 获取句子中的单词
    '''
    
    s= 'this is s dog'
    
    r =  re.split(r"s+",s)  # 使用split进行切分
    print(r)  # ['this', 'is', 's', 'dog']
    
    r =  re.findall(r"w+",s)  # 两个代表单词的左右边界,w+ 单词
    print(r)  # ['this', 'is', 's', 'dog']
    
    """
        总结:
            re.split()方法是从分隔符的角度去考虑
            re.findAll()方法是从描述单词特征的角度去考虑
    
    """

    未完待续。。。。

  • 相关阅读:
    又见博弈
    两道来自CF的题
    温习及回顾
    笔试面试总结
    Python Cha4
    初学ObjectiveC
    设计模式汇总(三)
    转贴XML的写法建议
    让从Objec中继承的类也拥有鼠标事件
    关于异常处理的一些看法
  • 原文地址:https://www.cnblogs.com/z-qinfeng/p/12003369.html
Copyright © 2011-2022 走看看