正则表达式

正则表达式主要用于查找匹配字符串中的内容,它由元字符符号构成,python用正则需要导入re模块
#正则 python中需导入re模块
import re

#查找所有
# st0 = '李平真帅,李平真溜,李平真聪明'
# st1 = re.findall('真', st0)
# print(st1)


#从起始位置匹配
# st0 = '李平真帅,李平真溜,李平真聪明'
# st1 = re.match('李平', st0)
# print(st1)


#从字符串找到一个数据
# st0 = '李平真帅,李平真溜,李平真聪明'
# st1 = re.search('李平', st0)
# print(st1)


#替换
# st0 = '李平真帅,李平真溜,李平真聪明'
# st1 = re.sub('李平', '小姐姐', st0)
# print(st1)



#元字符


# st0 = '吼78吼吼9,嘿嘿嘿,1巅峰abc2   def   ghi3  jk4l  mn56'

#.任意一个字符
# st1 = re.findall('a.', st0)
# print(st1)

#[] 列举[]中字符
# st1 = re.findall(r'[0-9a-z]', st0)
# print(st1)


#\d 数字
# st1 = re.findall(r'\d', st0)
# print(st1)


#\D非数字
# st1 = re.findall(r'\D', st0)
# print(st1)


#\s 空格
# st1 = re.findall(r'\s', st0)
# print(st1)


#\S 非空格
# st1 = re.findall(r'\S', st0)
# print(st1)


#\w 单词字符 基本所有字符a-z A-Z 0-9 _
# st1 = re.findall(r'\w', st0)
# print(st1)


#\W非单词字符
# st1 = re.findall(r'\W', st0)
# print(st1)




# st0 = 'abccccddddd'

# * 前面出现0次或无限次
# st1 = re.findall(r'ab*c', st0)
# print(st1)


# + 前面出现1次或无限次,至少出现一次
# st1 = re.findall(r'ab+c+', st0)
# print(st1)


# ? 出现0次或1次
# st1 = re.findall(r'ab?c', st0)
# print(st1)


# {} 中限制出现次数  {m,n}m次到n次    {m,}m次到无限   {,n}无限到n次
# st1 = re.findall(r'ab{1,7}c', st0)
# print(st1)



# st0 = 'sbs bbc abc cctv mtv'

# ^ 以什么开头
# st1 = re.findall(r'^sbs', st0)
# print(st1)


# $ 以什么结尾
# st1 = re.findall(r'mtv$', st0)
# print(st1)


# \b 匹配一个单词边界
# st1 = re.findall(r'\bbbc\b', st0)
# print(st1)


#\B 匹配非单词边界
# st1 = re.findall(r'\Bbs', st0)
# print(st1)




# st0 = 'hello world liping gogogo'

# | 分组
# st1 = re.findall(r'llo|liping', st0)
# print(st1)


# () 中到作为一个分组
# st1 = re.findall(r'wor(ld)', st0)
# print(st1)




#贪婪与非贪婪
# st0 = 'aabbbcccc'
# st1 = re.findall(r'b{1,3}', st0)
# print(st1)
#
#
# st0 = 'aabbbcccc'
# st1 = re.findall(r'b{1,3}?', st0)
# print(st1)



# 正则补充
import re

#匹配密码
# st = re.findall(r'^[A-z|\_]\w{7,9}$', 'p045678912')
# print(st)


#匹配身份证
# st = re.findall(r'^\d{18}$|^\d{15}$', '123456789019283111')
# print(st)


#匹配手机号
st = re.findall(r'^1[3|4|5|6|7|8|9]\d{9}$','17987653455')
print(st)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值