如何在Python中使用正则表达式匹配数字和字符串

发布时间:2021-05-13 17:13:17 作者:Leah
来源:亿速云 阅读:564

这篇文章将为大家详细讲解有关如何在Python中使用正则表达式匹配数字和字符串,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Python 正则表达式匹配数字

电话号码:\d{3}-\d{8}|\d{4}-\d{7}

 QQ号:[1-9][0-9]{4,}

中国邮政编码:[1-9]\d{5}(?!\d)
身份证:\d{15}|\d{18}
ip地址:\d+\.\d+\.\d+\.\d+

 [1-9]\d*      正整数
-[1-9]\d*   负整数
-?[1-9]\d* 整数
[1-9]\d*|0  非负整数
-[1-9]\d*|0   非正整数
[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   正浮点数
-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  负浮点数
-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  浮点数

匹配价格,并输出平均价格

import re
price='25.34-34.55'
test=re.compile(r'[1-9]\d*\.\d*|0\.\d*[1-9]|[1-9]\d*').findall(price)[0]
test2=re.compile(r'-[1-9]\d*\.\d*|-0\.\d*[1-9]|-[1-9]\d*').findall(price)[0]
i=float(test)
x=-float(test2)
r=(x+i)/2
print r

知识点扩展:python 正则表达式找出字符串中的纯数字

1、简单的做法

>>> import re
>>> re.findall(r'\d+', 'hello 42 I'm a 32 string 30')
['42', '32', '30']

然而,这种做法使得字符串中非纯数字也会识别

>>> re.findall(r'\d+', "hello 42 I'm a 32 str12312ing 30")
['42', '32', '12312', '30']

2、识别纯数字

如果只需要用单词边界( 空格,句号,逗号) 分隔的数字,你可以使用 \b

>>> re.findall(r'\b\d+\b', "hello 42 I'm a 32 str12312ing 30")
['42', '32', '30']
>>> re.findall(r'\b\d+\b', "hello,42 I'm a 32 str12312ing 30")
['42', '32', '30']
>>> re.findall(r'\b\d+\b', "hello,42 I'm a 32 str 12312ing 30")
['42', '32', '30']

python主要应用领域有哪些

1、云计算,典型应用OpenStack。2、WEB前端开发,众多大型网站均为Python开发。3.人工智能应用,基于大数据分析和深度学习而发展出来的人工智能本质上已经无法离开python。4、系统运维工程项目,自动化运维的标配就是python+Django/flask。5、金融理财分析,量化交易,金融分析。6、大数据分析。

关于如何在Python中使用正则表达式匹配数字和字符串就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. 正则表达式匹配数字
  2. Python中怎么利用正则表达式匹配数字和小数

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python 正则表达式

上一篇:怎么在python中利用正则表达式从字符串中提取数字

下一篇:如何在C++中生成格式化的标准字符串

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》