加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

花半个月整理的正则表达式大全!拳打C,脚踢Java!Python大法好

发布时间:2020-12-17 01:00:01 所属栏目:Python 来源:网络整理
导读:常用数字表达式 进群:548377875 ? 即可获取不同的Python书籍PDF哦!早日入门! d{n,} 匹配出字符串中整数至少出现n次 test = "hello 2019's world"#将d{n,}中的n改成0,1,2,3,4分别试试运行结果pattern = 'd{4,}'re.findall(pattern,test)['2019'] d{m,n

常用数字表达式

进群:548377875 ? 即可获取不同的Python书籍PDF哦!早日入门!

d{n,}

匹配出字符串中整数至少出现n次

test = "hello 2019's world"
#将d{n,}中的n改成0,1,2,3,4分别试试运行结果
pattern = 'd{4,}'
re.findall(pattern,test)
['2019']

d{m,n}

匹配出字符串中的数字信息,该信息满足整数出现m-n次。

test = "hello 2019's world"
#整数出现2-5次,也可以是1-7次。只要m<4,n>4即可
pattern = 'd{2,5}'
re.findall(pattern,test)
['2019']

校验字符的表达式

[u4e00-u9fa5]+

匹配出字符串中的汉字

test = "亲们,让我们在2018一起学习Python_Language"
#匹配出test中的中文
pattern = '[u4e00-u9fa5]+'
re.findall(pattern,test)
['亲们','让我们在','一起学习']

[A-Za-z0-9]+

匹配出字符串中的英文和数字

test = "亲们,让我们在2018一起学习Python_Language"
#匹配出test中的英文和数字
pattern = '[A-Za-z0-9]+'
re.findall(pattern,test)
['2018','Python','Language']

.{m,n}

对某字符串进行匹配,匹配出m-n长度的所有字符串

test = "亲们,让我们在2018一起学习Python_Language"
#例子,匹配出test中长度在1-4所有的字符串
pattern = '.{1,4}'
re.findall(pattern,test)
['亲们,让','我们在2','018一','起学习P','ytho','n_La','ngua','ge']

[A-Za-z]+

匹配出字符串中的英文字符,不考虑大小写

test = "亲们,让我们在2018一起学习Python_Language"
#匹配出test中的英文字符,不考虑大小写
pattern = '[A-Za-z]+'
re.findall(pattern,test)
['Python','Language']

[A-Z]+

匹配出字符串中的大写英文字符

test = "亲们,让我们在2018一起学习Python_Language"
#匹配出test中大写英文字符
pattern = '[A-Z]+'
re.findall(pattern,test)
['P','L']

[a-z]+

匹配出字符串中的小写英文字符

test = "亲们,让我们在2018一起学习Python_Language"
#匹配出test中小写英文字符
pattern = '[a-z]+'
re.findall(pattern,test)
['ython','anguage']

[A-Za-z0-9]+

匹配出字符串中的英文和数字信息

test = "亲们,让我们在2018一起学习Python_Language"
#匹配出test中的英文和数字信息
pattern = '[A-Za-z0-9]+'
re.findall(pattern,'Language']

w+

识别以空格为间隔的字符串,得到其中的数字、字符、下划线。例如

test = "亲 们,让 我 们 在 2018 一 起 学 习 Python"
pattern = 'w+'
re.findall(pattern,test)
['亲','们','让','我','在','2018','一','起','学','习','Python']

[u4e00-u9fa5A-Za-z0-9_]+

匹配出字符串中的中英文、数字和下划线信息

test = "亲们,让我们!!在2018 一起学习Python_Language!"
#匹配出test中的中英文、数字和下划线信息
pattern = '[u4e00-u9fa5A-Za-z0-9_]+'
re.findall(pattern,'让我们','在2018','一起学习Python_Language']

特殊需求表达式

邮箱

[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+.[a-zA-Z0-9_-]+ 匹配出字符串中的邮箱信息

#匹配出test中的邮箱信息
pattern = '[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+.[a-zA-Z0-9_-]+'
re.findall(pattern,test)

url

http://[w+.]+ 匹配出字符串中的域名信息

#匹配出test中的url信息
pattern = 'http://[w+.]+'
re.findall(pattern,test)

手机号

1[3|4|5|8][0-9]d{4,8} 匹配出字符串中的手机号码信息

#匹配出test中的手机信息
pattern = '1[3|4|5|8][0-9]d{4,8}'
re.findall(pattern,test)

电话号码

d{3}-d{8}|d{4}-d{7} 匹配出字符串中的电话号码信息

#匹配出test中的电话信息
pattern = 'd{3}-d{8}|d{4}-d{7}'
re.findall(pattern,test)

日期格式

形如2018-09-11,d{4}-d{1,2}-d{1,2} 匹配出字符串中的日期信息。

#匹配出test中的日期信息
pattern = 'd{4}-d{1,2}'
re.findall(pattern,test)

空行信息

[ s ]+ 匹配出字符串的空行,可以用该空行做一些操作。

pattern = '[
s
]+'
#使用空行去分割字符串
re.split(pattern,test)

pattern = '[
s
]+'

将空行替换为空

re.sub(pattern,'',test)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读