教你学会使用Python正则表达式

作者:米乐果果 时间:2023-01-17 14:08:56 

教你学会使用Python正则表达式

今天写爬虫偶然想到了初学正则表达式时候,看过一篇文章非常不错。检索一下还真的找到了。

re模块

教你学会使用Python正则表达式

re.search

经常用match = re.search(pat, str)的形式。因为有可能匹配不到,所以re.search()后面一般用if statement。

教你学会使用Python正则表达式

re.match

re.match和re.search很相似,只是re.match是从字符串的开头开始匹配。

教你学会使用Python正则表达式

常用正则字符意义 a, X, 9,等字符匹配自己, 元字符不匹配自己,因为有特殊意义,比如 . ^ $ * + ? { }[ ] \ | ( ) . 英文句号,匹配任意字符,不包含'\n' \w 匹配'word'字符,[a-zA-Z0-9] \W 匹配非'word'字符 \b 匹配'word'和'non-word'之间边界 \s 匹配单个whitespace字符,space, newline, return, tab, form [\n\r\t\f] \S 匹配non-whitespace字符 \t, \n, \r 匹配tab, newline, return \d 匹配数字[0-9] ^ 匹配字符串开头 $ 匹配字符串结尾 重复

‘+' 一或多次, ‘*' 零或多次, ‘?' 零或一次

方括号[]

教你学会使用Python正则表达式

[]类似于or

Square brackets can be used to indicate a set of chars, so [abc] matches 'a' or 'b' or 'c'.

教你学会使用Python正则表达式

Group Extraction圆括号()

有时候需要提取匹配字符的一部分,比如刚才的邮箱,我们可能需要其中的username和hostname,这时候可以用()分别把username和hostname包起来,就像r'([\w.-]+)@([\w.-]+)',如果匹配成功,那么pattern不改变,只是可以用match.group(1)和match.group(2)来username和hostname,match.group()结果不变。

教你学会使用Python正则表达式

findall and groups

()和findall()结合,如果包括一或多个group,就返回a list of tuples。

教你学会使用Python正则表达式

给re.search加^之后是一样的。

re.sub

re.sub(pat, replacement, str)在str里寻找和pattern匹配的字符串,然后用replacement替换。replacement可以包含\1或者\2来代替相应的group,然后实现局部替换。 教你学会使用Python正则表达式

来源:http://developer.51cto.com/art/201709/550639.htm

标签:Python,正则表达式
0
投稿

猜你喜欢

  • pyhton列表转换为数组的实例

    2021-01-12 08:14:31
  • asp.net 将一个图片以二进制值的形式存入Xml文件中的实例代码

    2023-07-23 13:31:30
  • java与php的区别浅析

    2023-11-14 23:27:23
  • CSS实现完美垂直居中

    2007-09-22 09:29:00
  • PyQt5+python3+pycharm开发环境配置教程

    2022-11-03 03:34:11
  • python多项式拟合之np.polyfit 和 np.polyld详解

    2022-09-12 13:32:49
  • python实现拓扑排序的基本教程

    2021-03-24 04:24:02
  • Python轻松破解加密压缩包教程详解

    2021-04-12 13:26:45
  • asp如何在线压缩Access数据库?

    2010-06-26 12:25:00
  • Scrapy+Selenium自动获取cookie爬取网易云音乐个人喜爱歌单

    2023-06-26 10:15:54
  • asp如何在网上查找链接?

    2010-06-22 21:10:00
  • 简单聊聊Golang中defer预计算参数

    2023-07-22 03:55:09
  • asp中获取内容中所有图片与获取内容中第一个图片的代码

    2011-02-20 10:51:00
  • Python 从相对路径下import的方法

    2023-06-15 03:16:10
  • PyQt5+requests实现车票查询工具

    2023-11-01 02:12:25
  • python GUI框架pyqt5 对图片进行流式布局的方法(瀑布流flowlayout)

    2022-07-07 17:14:01
  • asp下去除超链接的函数

    2011-03-29 11:11:00
  • 用Python实现QQ游戏大家来找茬辅助工具

    2021-09-10 16:28:44
  • 一个asp正则替换的方法

    2008-11-25 14:05:00
  • JS实现仿新浪微博发布内容为空时提示功能代码

    2023-08-22 21:52:13
  • asp之家 网络编程 m.aspxhome.com