正则表达式中的search && findall && finditer 区别:
import sys;
import re;
if __name__ == '__main__':
strVal = '''<a href="http://www.andylin02.com" target="_blank" class="dsdfv">aaaa</a>
<a href="http://www.congfeng.com" target="_blank" class="tdsfv">bbbbsdf</a>
<a href="http://www.st.com" target="_blank" class="txx">ccccccc</a>
<a href="http://www.qs.com" target="_blank" class="xxx">ddddd</a>
''';
print(strVal);
strPattern = r"(<\s*a\s.*href\s*=.*)";
#search
mtReSearch = re.search(strPattern, strVal);
print("======================= search result =======================");
print("%s ==> %d" %(mtReSearch.groups(), len(mtReSearch.groups()) ));
#findall
lsFind = re.findall(strPattern, strVal);
print("\n===================== findall result ========================");
print("%s ==> %d" %(lsFind, len(lsFind)));
#finditer
print("\n===================== finditer result =======================")
for mtFind in re.finditer(strPattern, strVal):
print(mtFind.groups());
print("------");
结果:
<a href="http://www.andylin02.com" target="_blank" class="dsdfv">aaaa</a>
<a href="http://www.congfeng.com" target="_blank" class="tdsfv">bbbbsdf</a>
<a href="http://www.st.com" target="_blank" class="txx">ccccccc</a>
<a href="http://www.qs.com" target="_blank" class="xxx">ddddd</a>
======================= search result =======================
('<a href="http://www.andylin02.com" target="_blank" class="dsdfv">aaaa</a>',) ==> 1
===================== findall result ========================
['<a href="http://www.andylin02.com" target="_blank" class="dsdfv">aaaa</a>', '<a href="http://www.congfeng.com" target="_blank" class="tdsfv">bbbbsdf</a>', '<a href="http://www.st.com" target="_blank" class="txx">ccccccc</a>', '<a href="http://www.qs.com" target="_blank" class="xxx">ddddd</a> '] ==> 4
===================== finditer result =======================
('<a href="http://www.andylin02.com" target="_blank" class="dsdfv">aaaa</a>',)
------
('<a href="http://www.congfeng.com" target="_blank" class="tdsfv">bbbbsdf</a>',)
------
('<a href="http://www.st.com" target="_blank" class="txx">ccccccc</a>',)
------
('<a href="http://www.qs.com" target="_blank" class="xxx">ddddd</a> ',)
------
分享到:
相关推荐
python之常用正则表达式.pdfpython之常用正则表达式.pdfpython之常用正则表达式.pdfpython之常用正则表达式.pdfpython之常用正则表达式.pdfpython之常用正则表达式.pdf
第11.25节 Python正则表达式编译re.compile及正则对象使用.rar
本文实例讲述了python使用正则表达式提取网页URL的方法。分享给大家供大家参考。具体实现方法如下: import re import urllib url=//www.jb51.net s=urllib.urlopen(url).read() ss=s.replace( ,) urls=re.findall...
本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式,这些主题请查看其他教程。 ...
Python字正则表达式案例
一个描述全部python正则方法,正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。 ...
python正则表达式使用指南,中英文对照,简洁易懂,个人觉得非常好,能很快学会试用正则表达式。
python正则表达式详细图 python正则表达式详细图 python正则表达式详细图
许多语言,包括Perl、PHP、Python、JavaScript和JScript,都支持用正则表达式处理文本,一些文本编辑器用正则表达式实现高级“搜索-替换”功能。那么Java又怎样呢?本文写作时,一个包含了用正则表达式进行文本处理...
Python正则表达式操作指南 Python正则表达式操作指南 Python正则表达式操作指南
python正则表达式_深入浅出
Pyregex是一个开源在线的Python正则表达式编辑器、测试器
首先是正则表示的验证,先画出NFA的图,在进行NFA转DFA之后,形成闭包,然后将输入的正则表达式进行验证。
PPT 讲述了正则表达式的使用方式以及如何使用python来操作正则表达式,内容简洁实用,适合平时查询,也适合PPT演讲使用~
python语言正则表达式的详细整理,可以更加简单的看懂python正则表达式的使用规则
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这 些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一 种过滤逻辑(可以用来做检索,截取或者替换...
Python 通过正则表达式快速获取电影的下载地址 Python源码Python 通过正则表达式快速获取电影的下载地址 Python源码Python 通过正则表达式快速获取电影的下载地址 Python源码Python 通过正则表达式快速获取电影的...
Python正则表达式
三、 正则表达式到底是什么东西? 3 四、 入门 4 五、 测试正则表达式 6 六、 元字符 7 七、 字符转义 9 八、 重复 9 九、 字符类 9 十、 分枝条件 10 十一、 分组 11 十二、 反义 12 十三、 后向引用 12 十四、 零...
Shell与Python正则表达式参考 正则表达式(RE)是一些由字符和特殊符号组成的字符串,它们描述了这些字符和字符的某种重复方式,因此能按某种模式匹配一个有相似特征的字符串的集合,简单地说,正则表达式就是用在字符...