Python练习---正则表达式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python练习---正则表达式相关的知识,希望对你有一定的参考价值。

1、 匹配一段文本中的每行的邮箱
y=[email protected]@[email protected]@adfcom
import re
ret=re.findall(\[email protected](?:qq|163|126).com,y)
print(ret)
2、 匹配一段文本中的每行的时间字符串,比如:‘1990-07-12’;
time=asfasf1990-07-12asdfAAAbbbb434241
import re
ret=re.search(r(?P<year>19[09]\d)-(?P<month>\d+)-(?P<days>\d+),time)
print(ret.group(year))
print(ret.group(month))
print(ret.group(days))
1990
07
12
# 3、 匹配一段文本中所有的身份证数字。
a=sfafsf,34234234234,1231313132,154785625475896587,sdefgr54184785ds85,4864465asf86845
import re
ret=re.findall(\d{18},a)
print(ret)
[154785625475896587]
# 4、 匹配qq号。(腾讯QQ号从10000开始)  [1,9][0,9]{4,}
q=3344,88888,7778957,10000,99999,414,4,867287672
import re
ret=re.findall([1-9][0-9]{4,},q)
print(ret)
[88888, 7778957, 10000, 99999, 867287672]
# 5、 匹配一个浮点数
import re
ret=re.findall(-?\d+\.?\d*,-1,-2.5,8.8,1,0)
print(ret)
[-1, -2.5, 8.8, 1, 0]
# 6、 匹配汉字。             ^[\u4e00-\u9fa5]{0,}$
import re
ret=re.findall([\u4e00-\u9fa5]{0,},的沙发斯蒂芬)
print(ret)
[的沙发斯蒂芬, ‘‘]
# 7、 匹配出所有整数
a=1,-3,a,-2.5,7.7,asdf
import re
ret=re.findall(r"‘(-?\d+)‘",str(re.split(,,a)))
print(ret)
[1, -3]

以上是关于Python练习---正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

Python使用正则表达式实现计算器练习

python爬虫入门练习,使用正则表达式和requests爬取LOL官网皮肤

Python练习---正则表达式

循环通过 python 正则表达式匹配

python正则表达式练习篇

Python正则表达式练习