zoukankan      html  css  js  c++  java
  • 2020年大三下学期第二周学习心得

    Python正则爬虫

    re.findall:搜索字符串,以列表形式返回全部能匹配的字符串。

    string="猪  狗  鸡  鸭"
    
    #当正则表达式中有两个括号时,其输出是一个list 中包含2个 tuple,从输出的结果可以看出,有两个元组,每一个元组中有两个字符串 : 其中第一个字符串"猪 狗"是最外面的括号输出的结果,第二个是里面括号(/w+)输出的结果 "猪", 第二个元组是  第二次匹配的结果 -- 详解同第一次匹配。
    regex=re.compile("((w+)s+w+)")
    print(regex.findall(string))
    
    #正则表达式中有一个括号时,其输出的内容就是括号匹配到的内容,而不是整个表达式所匹配到的结果,但是整个正则表达式执行了只不过只输出括号匹配到的内容, 在第一次匹配时跟上述没有括号时一样,匹配到 "猪 狗" ,只不过只输出(/w+)匹配     到的结果 即"猪",第二次匹配同理从"鸡" 开始,匹配到"鸡 鸭",但是还是只是输出"鸡"
    regex1=re.compile("(w+)s+w+")
    print(regex1.findall(string))
    
    #正则表达式中当没有括号时,就是正常匹配,在本例中"/w+/s+/w+"第一次匹配到的字符为"猪 狗",由于是贪婪模式会继续匹配,第二次从"鸡"开始匹配匹配到的结果为字符串"鸡 鸭"
    regex2=re.compile("w+s+w+")
    print(regex2.findall(string))

    打印输出结果:

    [('猪  狗', '猪'), ('鸡  鸭', '鸡')]
    ['猪', '鸡']
    ['猪  狗', '鸡  鸭']

    re.sub:替换字符串中每一个匹配的子串后返回替换后的字符串。

    import re
    
    content = "Extra things Hello 1234567 World_This is a Regex Demo"
    result = re.sub('d+','7654321',content)
    print(result)
    

      打印输出结果:

    Extra things Hello 7654321 World_This is a Regex Demo
    

      

  • 相关阅读:
    mysql的存储过程与事务入门
    关于CreateProcess函数一些经验
    windows下dump文件调试
    指针相关
    nsi脚本中执行.bat文件要隐藏dos窗口问题
    C 预处理
    __declspec(dllimport)与__declspec(dllexport)作用总结
    [转]window下使用SetUnhandledExceptionFilter捕获让程序的崩溃
    字符集与编码[转]
    vc下项目的头文件包含目录以及库导入预计库目录设置
  • 原文地址:https://www.cnblogs.com/jccjcc/p/12466991.html
Copyright © 2011-2022 走看看