Python正则表达式的另类解答

作者:MrL_JJ 时间:2023-08-02 06:58:04 

一、正则表达式的作用

提示:正则表达式是一段特殊的字符串,它表示的是一段有规律的信息。如果我们想从一段文字中提取想要的内容,就可以通过正则表达式来方便的帮助我们提取。

提示:以下是本篇文章正文内容,下面案例可供参考

二、正则表达式基本符号

1.点号“.”

“.”表示的是匹配除了换行符以外的任何一个字符,包括但不限于英文字母、数字、汉字、英文标点符号和中文标点符号。

2.星号“”

“”表示匹配它前面的一个子表达式(普通字符、另一个或几个正则表达式符号)0次到无限次。

3.问号“?”

“?”表示匹配它前面的子表达式0次或者1次。注意,这里的问号是英文问号。

4.数字“\d”

“\d”在正则表达式里表示一位数字,“\d”由反斜杠和字母d构成的,但是要把“\d”看成一个正则表达式符号整体。

5.小括号“()”

小括号可以把括号里面的内容提取出来。

三、Python自带正则表达式模块

Python自带一个非常强大的的正则表达式模块,名字为“re”,也就是“regular expression”的首字母缩写。在Python中需要先使用导入的语句:import re 导入这个模块再进行使用。

1.findall函数

findall的函数原型为:re.findall(pattern, string, flags=0)

pattern表示正则表达式,string表示原来的字符串,flags表示一些特殊功能的标志。 这个参数是可以省略的。当不省略的时候,具有一些辅助功能,例如忽略大小写、忽略换行符等。

import re
text = '牛肉价格:70¥,九节虾价格:120¥,西兰花价格:5¥,马鲛鱼价格:40¥'
prices = re.findall('价格:(.*?)¥', text)
print('正则表达式返回的价格:{}'.format(prices))

findall返回的结果是一个列表,包含了所有的匹配到的结果:

Python正则表达式的另类解答

2. search()的函数原型为:

re.search(pattern, string, flags=0)用法和findall()的用法一样,但是search()只会返回第1个满足要求的字符串。对于从超级大的文本里面只找第1个数据特别有用,可以大大提高程序的运行效率。

import re
text = '牛肉价格:70¥,九节虾价格:120¥,西兰花价格:5¥,马鲛鱼价格:40¥'
prices = re.search('价格:(.*?)¥', text)
print('正则表达式返回的价格:{}'.format(prices.group(1)))

对于结果,如果匹配成功,则是一个正则表达式的对象;如果没有匹配到任何数据,就是None。 如果需要得到匹配到的结果,则需要通过.group()这个方法来获取里面的值。group()的参数最大不能超过正则表达式里面括号的个数。参数为1表示读取第1个括号中的内容,参数为2表示读取第2个括号中的内容,以此类推。

Python正则表达式的另类解答

来源:https://blog.csdn.net/weixin_44901043/article/details/121080713

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

猜你喜欢

  • Python实现京东抢秒杀功能

    2021-12-06 04:50:17
  • Ajax request response 乱码解决方法

    2024-06-05 09:21:52
  • asp如何在页面中实现对电子信箱的访问?

    2010-06-26 12:34:00
  • 一文带你上手Vue新的状态管理Pinia

    2024-05-09 15:11:33
  • 关于matplotlib及相关cmap参数的取值方式

    2023-06-26 15:19:18
  • asp Server对象之MapPath方法

    2010-07-07 12:28:00
  • python实现csdn全部博文下载并转PDF

    2023-08-13 05:26:41
  • Python爬虫实例——scrapy框架爬取拉勾网招聘信息

    2023-01-20 19:06:45
  • 在Python的Django框架上部署ORM库的教程

    2021-04-08 02:20:47
  • Django处理文件上传File Uploads的实例

    2023-07-18 13:44:23
  • python为什么要安装到c盘

    2023-01-04 13:23:00
  • js中函数声明与函数表达式

    2024-04-25 13:08:35
  • 关于vscode 默认添加python项目的源目录路径到执行环境的问题

    2022-01-29 06:00:34
  • SQL的常用数据类型列表详解

    2024-01-15 05:25:07
  • golang中sync.Map并发创建、读取问题实战记录

    2023-07-16 12:23:27
  • Python3.x版本中新的字符串格式化方法

    2021-10-12 17:32:23
  • Django实现auth模块下的登录注册与注销功能

    2022-03-06 17:49:15
  • 在django admin详情表单显示中添加自定义控件的实现

    2023-09-24 18:56:00
  • python读写ini配置文件方法实例分析

    2022-10-09 22:02:28
  • Go语言实现新春祝福二维码的生成

    2023-10-16 06:14:32
  • asp之家 网络编程 m.aspxhome.com