13. 正则表达式---课后作业

1.长度为8-10的用户密码(以字母开头,包含数字、字母、下划线)

import re
reg=re.compile('^[a-zA-Z]\w{7,9}')
userSecret=input('请输入用户名密码:')
res = reg.match(userSecret)
if res:
    print('用户名密码是:%s'%res.group())
else:
    print('用户密码格式错误!')

2.验证用户名,长度为6-18位的英文字母组成

import re
reg=re.compile('[a-zA-Z]{6,18}')
userData=input('请输入用户名:')
res=reg.match(userData)
if res:
    print('用户名是:%s'%res.group())
else:
    print('用户名格式错误!')

3.邮箱验证126,163邮箱:6-18个字符,可使用字母、数字、下划线,需以字母开头

import re
Data=input('请输入邮箱:')
pattern='[a-zA-Z]\w{5,27}@126.com|[a-zA-Z]\w{5,27}@163.com'
res=re.match(pattern,Data)
if res:
    print('邮箱验证正确!')
    print(res.group())
else:
    print('邮箱验证失败!')

5.python中的re模块匹配规则默认是贪婪模式

6.python中使用re模块match方法匹配文本时,flags使用re.I时忽略文本大小写匹配

7.写一个正则匹配python变量名:不能以数字开头,变量名只能包含字母、数字、下划线

 8.写一个正则匹配路径‘C:\myfile\myfile’      # 正则前加r

一、'Save your heart for someone who cares'请使用正则将文本中的‘s’替换成’S‘,请写python代码完成替换。

import re
Data='Save your heart for someone who cares'
res=re.sub('s','S',Data)
print(res)    #Save your heart for Someone who careS
res=re.subn('s','S',Data)
print(res)    #('Save your heart for Someone who careS', 2)

二、'<span>三生三世,十里桃花</span><span>九州牧云记</span><span>莫斯科行动</span>'

请使用正则将 <span>标签中的全部内容匹配出来,请写出pyhton代码完成匹配。

import re
data='<span>三生三世,十里桃花</span><span>九州牧云记</span><span>莫斯科行动</span>'
reobj=re.compile(r'<span>(.*)</span><span>(.*)</span><span>(.*)</span>')
result=reobj.findall(data)
print(result)    #[('三生三世,十里桃花', '九州牧云记', '莫斯科行动')]

#如果不加括号分组时不可以的
reobj=re.compile(r'<span>.*</span><span>.*</span><span>.*</span>')
result=reobj.findall(data)
print(result)    #['<span>三生三世,十里桃花</span><span>九州牧云记</span><span>莫斯科行动</span>']

# 分组别名的用法
patternNick=r'<(?P<A>\w*)>(.*)</(?P=A)><(?P=A)>(.*)</(?P=A)><(?P=A)>(.*)</(?P=A)>'
reobj=re.compile(patternNick)
result=reobj.findall(data)
print(result)    #[('span', '三生三世,十里桃花', '九州牧云记', '莫斯科行动')]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值