python正则表达式综合练习

第1关:提取日志内容

任务描述

本关任务:使用Python正则提取日志内容。

import re

def re_Regex():
    #*********** Begin **********#
    # 读取数据文件
    string = r'cs_item_sk[\s=]*(\d*?1+)\s+.+?true\s*(\d+)$'
    pattern = re.compile(string)
 
    with open('./test_one/src.txt', 'r') as f:
        for line in f.readlines():
            line = line.strip()
            m = pattern.search(line)
            if m is not None:
                print(m.groups())

    # 根据日志数据编写正则表达式提取数据内容
   
    # 提取cs_item_sk的数值以1结尾的并且布尔值为true的所需的日志内容
    
    #*********** End **********#

第2关:组合密码匹配

任务描述

本关任务:编写正则获取一组密码中的正确密码。

import re
def re_test2(input_data):
    result=[]
    
    #*********** Begin **********#
    result = re.findall(r'^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*.?]+$)[a-zA-Z\d!@#$%.?^&*]+$',input_data,re.M)

    #*********** End **********#

    return result

第3关:网页内容解析

任务描述

本关任务:使用python正则解析网页内容。

import re

def parse_one_page(html):
    #*********** Begin **********#

        pattern = re.compile('<dd>.*?board-index.*?>(.*?)</i>.*?data-src="(.*?)"'
            +'.*?name.*?a.*?>(.*?)</a>.*?star.*?>[^\u4e00-\u9fff]+(.*?)[^\u4e00-\u9fff]+</p>'
            +'.*?releasetime.*?>(.*?)</p>.*?integer.*?>(.*?)</i>'
            +'.*?fraction.*?>(.*?)</i>.*?</dd>',
            re.S)    
        res = re.findall(pattern, html)
        print(res)
    



    #*********** End **********#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值