发表于: 2018-04-04 23:57:55

1 810


今天完成的事情:

1.继续了解正则的一些方法,例如match(决定re是否在字符串开始的位置匹配。)、group(返回被re匹配的字符串)

2.开始解读脚本代码,已完成1/4

def stat_ip_views(log_path):
    ret={}
    f = open(log_path, "r")
    for line in f:
        match = pattern.match(line)
        if match:
            ip=match.group(0)

在正则表达式的学习中,刚学会了match和group的用法,故”match = pattern.match(line)”的意义就比较明了了。在文件中用pattern匹配,是否存在符合规则的IP地址,如果有,则返回……


明天计划的事情:

解读脚本代码,向师兄咨询以问题:

1.VScode中 ,ret都不是关键词,为何可以出现“ret={}”这样的情况,不需要先定义一个ret嘛?

2.for line in f:意思是“在f的每一行中:”?可line在VScode中是以白色字符出现的。

3.if match:ip = match.group(0)

此处不需要定义IP吗?实际上上面的代码只定义过“stat_ip_views”这一函数,未涉及Ip,为何不报错?


遇到的问题:

目前代码仍处于支离破碎的状态,理解起来比较吃力,部分代码仍然需要靠猜测来了解其意义。


收获:

1.match\search\finditer\sub\splite\span的用法

2.group\start\end\span的用法


返回列表 返回列表
评论

    分享到