python--正则match_compile_search_findall用法

简介:

正则表达式功能很强大,但学精通还是要自己花点时间的。

 

下面讲解下matchcompilesearchfindall常用的方法

 

  • Match

从字符串的第一个字符开始匹配,如果未匹配到返回None,匹配到则返回一个对象

wKiom1lnNMOR_QfTAAARIhJPi0A364.png-wh_50

未匹配到返回None

 

wKioL1lnNM2DABSvAAAQmmjmux4207.png-wh_50

开始字符匹配到了h,在返回一个对象,并且需要通过group来获取这个h值。

 

  • Search

Searchmatch有些类似,只是搜索整个字符串然后第一个匹配到指定的字符则返回值,未匹配到则返回None。获取值得方法也需要通过group()

wKiom1lnNNjir83pAAANKxpCEag476.png-wh_50

未匹配到字符则返回None

 

wKiom1lnNOSSHlDJAAAQ7A9SHZg008.png-wh_50

从字符串开始往后匹配,一匹配到则返回一个对象。需要通过group来获取匹配到的值。

 

  • Findall

Findall是匹配出字符串中所有跟指定值有关的值,并且以列表的形式返回。未匹配到则返回一个空的列表。

wKiom1lnNO_jsXynAAAK4RQgyw0439.png-wh_50

未匹配到返回一个空列表。

 

 

wKiom1lnNPmQvO12AAALDTiG3KE923.png-wh_50

匹配出指定字符的所有值,并以列表返回值。

 

  • Compile

re.compile是将正则表达式转换为模式对象,这样可以更有效率匹配。使用compile转换一次之后,以后每次使用模式时就不用进行转换

wKioL1lnNQbSp5moAAARzTNHo3I065.png-wh_50

其实这跟执行re.findall(‘img’,a)得到的结果是一样的,只是使用了compile后,下面执行findall方法时就不需要再转换一次模式对象了。


本文转自niedongri 51CTO博客,原文链接:http://blog.51cto.com/laomomo/1947243,如需转载请自行联系原作者

相关文章
|
1月前
|
Python
请解释Python中的递归是什么?并举例说明其用法。
【2月更文挑战第25天】【2月更文挑战第85篇】请解释Python中的递归是什么?并举例说明其用法。
|
1月前
|
Python
Python中的装饰器是什么?请举例说明其用法。
【2月更文挑战第24天】【2月更文挑战第77篇】Python中的装饰器是什么?请举例说明其用法。
|
1月前
|
测试技术 Python
Python中的装饰器:概念、用法及实例
【2月更文挑战第25天】 装饰器在Python中是一种强大的工具,它允许我们在不修改原始函数代码的情况下,增加函数的功能。本文将深入探讨装饰器的概念,解析其工作原理,并通过实例来展示如何在Python中使用装饰器。
|
1月前
|
存储 缓存 Python
Python中的装饰器:概念、用法和实例
【2月更文挑战第25天】 在Python编程中,装饰器是一种强大的工具,它允许我们在不修改原始函数代码的情况下,增加或修改函数的行为。本文将深入探讨装饰器的概念、用法以及通过实例来使其更易于理解。我们将看到,装饰器不仅仅是语法糖,而是一种可以极大提高代码复用性和可读性的有效工具。
|
1月前
|
Python
Python 中的装饰器:概念、用法和实例
【2月更文挑战第23天】 在编程世界中,装饰器是一种强大的工具,它允许我们在不改变现有代码的情况下增加或修改函数和类的行为。本文将深入探讨 Python 中装饰器的概念、用法以及如何创建自定义装饰器。我们将通过实例来演示装饰器的实用性和灵活性,帮助读者更好地理解和应用这一技术。
|
1月前
|
Python
Python中的继承:概念、用法与示例
Python中的继承:概念、用法与示例
22 0
|
17天前
|
Python
python中threads.append的用法
将线程对象`t`添加到`threads`列表便于管理与控制线程,如等待所有线程完成。通过迭代列表并调用`join`方法,可依次等待每个线程执行完毕,实现同步。代码示例: ```python for t in threads: t.join() print("All threads are done!") ``` `join`方法使当前线程阻塞,直到线程执行结束。所有线程完成后,输出"All threads are done!"。
15 1
|
1月前
|
Python
python函数用法(五)
python函数用法(五)
24 1
|
1月前
|
Python
python函数用法(四)
python函数用法(四)
22 0
|
1月前
|
自然语言处理 Python
python函数用法(三)
python函数用法(三)
18 0