前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >正则表达式

正则表达式

作者头像
AngelNH
发布2020-04-16 15:27:40
3910
发布2020-04-16 15:27:40
举报
文章被收录于专栏:AngelNIAngelNI

达人物外之物,思身后之身,宁受一时之寂寞,毋取万古之凄凉。

正则式

正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。re 模块使 Python 语言拥有全部的正则表达式功能。

re.match

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。

print(re.match('www','www.angelni.io').span())#起始位置匹配
print(re.match('www','www.angelni.io'))#非起始位置匹配

'''结果
(0, 3)
<_sre.SRE_Match object; span=(0, 3), match='www'>
'''

re.search

re.search 扫描整个字符串并返回第一个成功的匹配。

print(re.search('www','www.angelni.io').span())#起始位置匹配
print(re.search('io','www.angelni.io').span())

'''
(0, 3)
(12, 14)
'''

re.sub

re 模块提供了用于替换字符串中的匹配项。

phone = "183-3918-9296 # 这是我的电话号码"
# 删除字符串中的 Python注释
num = re.sub(r'#.*$', "", phone)  # r 代表正则表达式,将在后面介绍具体规则
print("电话号码是:", num)
# 删除非数字(-)的字符串 
num = re.sub(r'\D', "", phone)
print("电话号码是:", num)

'''
电话号码是: 183-3918-9296
电话号码是: 18339189296
'''

re.compile

compile 函数用于编译正则表达式,生成一个正则表达式( Pattern )对象。

partten1 = re.compile(r'\d+')
partten2 = re.compile(r'\d')
result1 = partten1.findall('runoob123google456')
result2 = partten2.findall('runoob123google456')
print(result1)
print(result2)

'''
['123', '456']
['1', '2', '3', '4', '5', '6']
'''

re.split

split 方法按照能够匹配的子串将字符串分割后返回列表

print(re.split('\W+', 'runoob, runoob, runoob.'))
'''
['runoob23', 'runoob23', 'runoob121', '']
'''

re.findall

返回字符串中所有不重叠匹配项的列表。如果模式中存在一个或多个捕获组,则返回组列表;

re.findall(pattern, string, flags=0)
#两种用法
pattern = re.compile(r'\d+')
pattern.findall('one1two2three3four4')
#[1,2,3,4]
 
#注意此处findall()的用法,可传两个参数;
pattern = re.compile(r'\d+')
re.findall(pattern,"one123")
#[1,2,3]
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-01-29|,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正则式
    • re.match
      • re.search
        • re.sub
          • re.compile
            • re.split
              • re.findall
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档