Python实现正则表达式

1.匹配单个字符

import re

#  \d匹配一个数字
ret=re.match("速度与激情\d\d","速度与激情35")
print(ret.group())

#  [12345678],[1-8]匹配1-8
ret=re.match("速度与激情[1-8]","速度与激情35")
print(ret.group())

#  [1-8a-d]匹配数字字母
ret=re.match("速度与激情[1-8a-d]","速度与激情d")
print(ret.group())

#  \w匹配字母,下划线(慎用)

#  \s匹配空白,tab

#  .可以匹配任何一个

2.匹配多个字符

import re

#  {1,2}匹配一个或者两个字符
ret=re.match("速度与激情\d{1,2}","速度与激情2").group()
print(ret)

#  {11}匹配11个字符
ret=re.match("\d{11}","123456789010").group()
print(ret)

#   ?表示可有可无
ret=re.match("021-?\d{8}","021-12345678").group()
print(ret)

#   *表匹配前一个字符示多个出现0次或无限次
html_content="""dkkk
dkkdkdkkd
dkkdk
dkkdkd
fc"""
ret=re.match(".*",html_content).group()
print(ret)

ret=re.match(".*",html_content,re.S).group()
print(ret)

# +匹配前一个字符出现1次或无限次

3.匹配开头结尾

import re

#  $匹配到字符串结尾
#  ^匹配字符串开头
def main():
    names=["age","_age","1age","a_age","age_1_","age!","a#123","______"]
    for name in names:
        #  匹配变量名是否合法
        ret=re.match(r"^[a-zA-Z_+][a-z0-9A-Z_]*$",name)
        if ret:
            print("变量名:%s符合要求,通过正则匹配出的数据是:%s"%(name,ret.group()))
        else:
            print("变量名:%s不符合要求"%name)

if __name__ == '__main__':
    main()

4.

[^/]表示除了/字符其余字符均可
[^ ]表示除了空格其余字符均可

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值