首页 » python » 正文

Python Challenge Level 2 re.findall

level2 需要查看网页源代码,打开源代码之后就可以发现页面最下方有一车乱麻类似的东西,我们要做的,就是从这堆东西中找到相应的字母(单词)

首先我们要先知道我们找的东西是字母 就是[a-zA-Z]

然后我们就可以关联的想到Python的模块re

使用re.findall(a-zA-Z)来找到我们需要的字母

这个地方设涉及到的一个地方是如何讲一个list转换为string :””.join(list)

如果不转成str,结果是:
[‘e’, ‘q’, ‘u’, ‘a’, ‘l’, ‘i’, ‘t’, ‘y’]

转换完成之后,结果是
equality

牵扯到re,顺道说一下re.search和re.martch的区别

区别在:
re.martch是从字符串的开始为值匹配的,如果开始不匹配,那么结果就是不匹配
re.search如果开始不匹配,会继续向后匹配,如果到最后还没有匹配,那么最终结果才是不匹配

而匹配之后返回的对象,就是matchobject

正则表达式还牵扯一个分组的问题,例如:

m = re.match(r”(?P\d{4})-(?P\d{2})-(?P\d{2})”, “2015-11-26″)

其中P是给分组命名的

然后,我们可以尝试打印

结果如下:

发表评论