Python re模块用法详解

这篇具有很好参考价值的文章主要介绍了Python re模块用法详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

re模块常用方法

  1. re.compile()
    该方法用来生成正则表达式对象,其语法格式如下:
    regex=re.compile(pattern,flags=0)
    参数说明:
    pattern:正则表达式对象。
    flags:代表功能标志位,扩展正则表达式的匹配。
  2. re.findall()
    根据正则表达式匹配目标字符串内容。
    re.findall(pattern,string,flags=0)
    该函数的返回值是匹配到的内容列表,如果正则表达式有子组,则只能获取到子组对应的内容。参数说明如下:
    pattern:正则表达式对象。
    string:目标字符串
    flags:代表功能标志位,扩展正则表达式的匹配。
  3. regex.findall()
    该函数根据正则表达式对象匹配目标字符串内容。其语法格式如下:
    regex.findall(string,pos,endpos)
    参数说明:
    string 目标字符串。
    pos 截取目标字符串的开始匹配位置。
    endpos 截取目标字符串的结束匹配位置。
  4. re.split()
    该函数使用正则表达式匹配内容,切割目标字符串。返回值是切割后的内容列表。参数说明:
    re.split(pattern,string,flags = 0)
    参数说明:
    pattern:正则表达式。
    string:目标字符串。
    flags:功能标志位,扩展正则表达式的匹配。
  5. re.sub
    该函数使用一个字符串替换正则表达式匹配到的内容。返回值是替换后的字符串。其语法格式如下:
    re.sub(pattern,replace,string,max,flags = 0)
    其参数说明:
    pattern:正则表达式。
    replace:替换的字符串。
    string:目标字符串。
    max:最多替换几处,默认替换全部,
    flags:功能标志位,扩展正则表达式的匹配。
  6. re.search()
    匹配目标字符串第一个符合的内容,返回值为匹配的对象。语法格式如下:
    re.search(pattern,string,flags=0)
    参数说明:
    pattern:正则表达式
    string:目标字符串
    flags功能标志位
    功能标志位的作用是扩展正则表达的匹配功能。常用的 flag 如下所示:

flag功能标志位
缩写元字符 说明
A 元字符只能匹配 ASCII码。
I 匹配忽略字母大小写。
S 使得.元字符可以匹配换行符。
M 使 ^ $ 可以匹配每一行的开头和结尾位置。
注意:可以同时使用福多个功能标志位,比如 flags=re.I|re.S。

下面使用贪婪和非贪婪两种模式来匹配 HTML 元素,分别,如下所示:
import re
html=“”"

www.biancheng.net

编程帮文章来源地址https://www.toymoban.com/news/detail-487105.html

""" #贪婪匹配,re.S可以匹配换行符 #创建正则表达式对象 pattern=re.compile('

.*

',re.S) #匹配HTMLX元素,提取信息 re_list=pattern.findall(html) print(re_list) #非贪婪模式匹配,re.S可以匹配换行符 pattern=re.compile('

.*?

',re.S) re_list=pattern.findall(html) print(re_list) 输出结果: ['

www.biancheng.net

\n

编程帮

'] ['

www.biancheng.net

', '

编程帮

'] 从上述输出结果可以得出非贪婪模式比适合提取 HTML 信息。 正则表达式分组 通过正则表达式分组可以从匹配的信息中提取出想要的信息。示例演示: #正则表达式分组 website="编程帮 www.biancheng.net" #提取所有信息 #注意此时正则表达式的 "." 需要转义因此使用 \. pattern_1=re.compile('\w+\s+\w+\.\w+\.\w+') print(pattern_1.findall(website)) #提取匹配信息的第一项 pattern_2=re.compile('(\w+)\s+\w+\.\w+\.\w+') print(pattern_2.findall(website)) #有两个及以上的()则以元组形式显示 pattern_3=re.compile('(\w+)\s+(\w+\.\w+\.\w+)') print(pattern_3.findall(website)) 输出结果: ['编程帮 www.biancheng.net'] ['编程帮'] [('编程帮', 'www.biancheng.net')] 正则表达式分组是提取信息的常用方式。当需要哪个特定信息的时候,就可以通过分组(也就是加括号)的方式获得。Python re模块用法详解

到了这里,关于Python re模块用法详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【100天精通python】Day23:正则表达式,基本语法与re模块详解示例

      目录  专栏导读  1 正则表达式概述 2 正则表达式语法 2.1 正则表达式语法元素

    2024年02月14日
    浏览(54)
  • Python高级教程(1)——正则表达式(re.match、re.search、re.sub、compile、findall、finditer、split)、正则表达式对象、正则表达式实例

    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 (1)re.match函数 re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match() 就返回 none。 函数语法: 通过re.match匹配成功,可以使⽤group⽅法来提取数据

    2024年02月04日
    浏览(68)
  • python3文件路径操作常用方法带示例详解(os.path模块,os.listdir,os.walk,os.scandir方法等)(不定期更新整理中)

    首先说明路径一般都是字符串的形式,与普通字符串的主要区别在于,普通字符串中的反斜杠(“”)是表示转义字符的,如换行符(“n”),跳格符(“t”),而在路径中,正斜杠(“/”)和反斜杠(“”)都是用来表示目录分隔符的。 在python中一般用os.path模块来处理路径字符串,

    2024年01月23日
    浏览(52)
  • Python之re库用法细讲

      在之前的博客中我们学习了【正则表达式】的诸多用法,但是还没有真正在Python代码中使用过。其实Python语言专门提供了 re 模块 ,用于 实现正则表达式的操作 。在实现时,可以使用 re 模块提供的方法(如 search()、match()、findall()等)进行字符串处理,也可以先使用 re

    2024年02月06日
    浏览(33)
  • python中的 collections 模块(用法、详解、底层原理,示例等)

    1.1 defaultdict 功能 可以设置一个默认值作为字典中新key的默认值。该默认值可以是任何对象, 包括函数、列表、元组、集合等。默认值不需要像dict那样事先定义,因为它在需要的时候会自动创建 使用defaultdict,可以简化代码并提高代码的可读性,而且可以防止KeyError异常的出

    2024年04月29日
    浏览(39)
  • 【python】程序运行添加命令行参数argparse模块用法详解

     很多时候,我们的程序要带参数来运行不同的功能,需要解析命令行参数。argparse模块能够很好的提供支持。 argparse是 python 自带的命令行参数解析包,用于解析命令行参数的标准模块。可以让人轻松编写用户友好的命令行接口,还会自动生成帮助和使用手册,并在用户给程

    2024年02月04日
    浏览(49)
  • 【Python】re模块

    正则表达式其本身就是一种小型的,高度专业化的编程语言。在Python中,它被内 嵌在了re模块里面,正则表达式模式被编译成一系列的字节码,然后由用C编写的匹 配引擎执行。 re.search 扫描整个字符串并返回第一个成功的匹配。 语法: 参数 描述 pattern 匹配的正则表达式 s

    2024年02月09日
    浏览(35)
  • Python:正则表达式之re.group()用法

    Python正则表达式之re.group()用法学习笔记 正则表达式是在处理字符串时非常有用的工具,而re.group()是在匹配到的文本中提取特定分组内容的方法之一。 在正则表达式中,通过圆括号可以创建一个或多个分组。re.group()用于获取匹配到的文本中的指定分组内容。 输出结果: grou

    2024年01月17日
    浏览(45)
  • 【Python】Python 模块用法:selenium 4 版本页面元素定位方法汇总

    目录 一、定位页面元素方法源码说明  (1)Webdriver.common (2)selenium.webdriver.common.by (3)By 二、定位页面元素方法用法汇总 (1)2.0 及以下低版本 selenium :By 定位页面元素方法用法(可忽略) (2)3.0 ~ 3.9 版本 selenium:By 定位页面元素方法用法 (3)4.0 ~ 4.9 版本 selenium:

    2023年04月13日
    浏览(90)
  • python re 模块 正则表达式

    ^ 表示匹配字符串的开始位置 (例外 用在中括号中[ ] 时,可以理解为取反,表示不匹配括号中字符串) $ 表示匹配字符串的结束位置 * 表示匹配 零次到多次(记忆方法: 符号是星星,天上的星星可以是无数个也可以看不到 ) + 表示匹配 一次到多次 (记忆方法: 符号是加号,增加

    2024年02月13日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包