python--正则测试题

"""
1.
编写代码模拟用户注册流程
用户名:
长度:6 - -15
个字符
组成:英文字符,数字,下划线
密码:
长度:6 - -20
组成:必须包含英文字符,数字,下划线
重复输入密码:
和上一次密码内容保持一致
邮箱:
名称:英文字符,数字,下划线
长度:6 - -20
服务器:126,163,189
"""
import re

while True:
    pattern01 = re.compile("\w{6,15}$")
    userName = input("请输入用户名:")
    logn_name = pattern01.match(userName)
    if logn_name:
        print("用户名注册成功")
        break
    else:
        print("用户名不合法,请重新输入")

while True:
    pattern02 = re.compile("(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[_@\.!@#%&])[a-zA-Z_0-9@\.!@#%&]{6,20}$")
    password = input("请输入注册密码:")
    logn_pw = pattern02.match(password)
    if logn_pw:
        print("密码初次注册成功,请确认密码:")
        queren_pw = input()
        if queren_pw == password:
            print("密码注册成功")
            break
        else:
            print("确认密码有误,请确认")
    else:
        print("输入的密码不合法,请重新输入:")

while True:
    pattern03 = re.compile("\w{6,20}@(126|163|189)\.(com|net|cn)$")
    mail = input("请输入要绑定的邮箱:")
    logn_mail = pattern03.match(mail)
    if logn_mail:
        print("邮箱绑定成功")
        print("注册成功!")
        break
    else:
        print("输入的邮箱不合法,请重新输入:")
"""
 2.
下面是一个网站分享的腾讯视频帐号密码,提取出所有的帐号和密码
资源内容:
腾讯好莱坞账号2737568171腾讯好莱坞密码eeee65292
腾讯好莱坞账号3310483024腾讯好莱坞密码eeee62332
腾讯好莱坞账号2158567715腾讯好莱坞密码pppp95942
腾讯好莱坞账号3432147819腾讯好莱坞密码pppp24336
腾讯好莱坞账号2180196140腾讯好莱坞密码pppp68629
腾讯好莱坞账号2135681497腾讯好莱坞密码pppp82627
腾讯好莱坞账号2128840963腾讯好莱坞密码cfkgo91
输出格式:
['账号2737568171', '账号3310483024', '账号215
['密码eeee65292', '密码eeee62332', '密码pppp9
"""
import re

str01 = "腾讯好莱坞账号2737568171腾讯好莱坞密码eeee65292 腾讯好莱坞账号3310483024腾讯好莱坞密码eeee62332 腾讯好莱坞账号2158567715腾讯好莱坞密码pppp95942 腾讯好莱坞账号3432147819腾讯好莱坞密码pppp24336 腾讯好莱坞账号2180196140腾讯好莱坞密码pppp68629 腾讯好莱坞账号2135681497腾讯好莱坞密码pppp82627 腾讯好莱坞账号2128840963腾讯好莱坞密码cfkgo91"

#方法一: 
list00 = [] 
list01 = []
result = re.split("腾讯好莱坞", str01)
del result[0]
for i in range(0,len(result)):
    if i % 2 == 0:
         list00.append(result[i])
    else:
        list01.append(result[i])
print(list00)
print(list01)

#方法二:
print(re.findall("账号\w{10}", str01))
print(re.findall("密码\w{7,9}", str01))
"""
3.找出单词
有一句英文如下:hello world ha ha获取所有的单词(方式不限,最少两种)
"""
import re

word = "hello world ha ha"
#方法一
result = re.findall("\S{1,8}", word)
print(result)
#方法二
result = re.findall("[a-zA-Z]+", word)
print(result)
#方法三
str01 = "hello world ha ha"
result = re.split(" ", str01)
print(result)
"""
4
获取文字中的手机号码(手动输入的不算)
话说天下大势,上海韬沃网络科技有限公司15216793676分久必合,合久必分。
上海蓝茂软件技术有限公司17730015099周末七国分争,并入于秦。
北京讯飞工作室17055613706及秦灭之后,楚、汉分争,又并入于汉。
上海市授权码有限公司13094757747汉朝自高祖斩白蛇而起义,上海因子软件有限公司18148969698一统天下,
上海川颐智能科技有限公司15921638003后来光武中兴,传至献帝,遂分为三国。上海米飞网络科技有限公司15625252891推其致乱之由,
殆始于桓、灵二帝。协购(上海)电子商务有限公司13524231172桓帝禁锢善类,崇信宦官。
上海佳碟计算机科技有限公司13800000000及桓帝崩,灵帝即位,大将军窦武、太傅陈蕃共相辅佐。
时有宦官曹节等弄权,窦武、陈蕃谋诛之,机事不密,反为所害,中涓自此愈横。
"""
string = "话说天下大势,上海韬沃网络科技有限公司15216793676分久必合,合久必分。 上海蓝茂软件技术有限公司17730015099周末七国分争,并入于秦。 北京讯飞工作室17055613706及秦灭之后,楚、汉分争,又并入于汉。 上海市授权码有限公司13094757747汉朝自高祖斩白蛇而起义,上海因子软件有限公司18148969698一统天下, 上海川颐智能科技有限公司15921638003后来光武中兴,传至献帝,遂分为三国。上海米飞网络科技有限公司15625252891推其致乱之由, 殆始于桓、灵二帝。协购(上海)电子商务有限公司13524231172桓帝禁锢善类,崇信宦官。 上海佳碟计算机科技有限公司13800000000及桓帝崩,灵帝即位,大将军窦武、太傅陈蕃共相辅佐。 时有宦官曹节等弄权,窦武、陈蕃谋诛之,机事不密,反为所害,中涓自此愈横。"
result = re.findall("\d+",string)
print(result)
"""
5.获取文字中的所有网址
   ·人民网-图片http://www.people.com.cn/GB/tupian/
   ·中国新闻图片网http://www.cnsphoto.com/
   ·全景图片网http://www.quanjing.com/
   ·八目妖http://www.haha168.com/
   ·美图http://www.6to23.com/pic/
   ·新华网-图片频道http://www.xinhuanet.com/photo/
   ·国内新闻精彩图片集http://news.sina.com.cn/photo/c/index.shtml
   ·中国花卉图片网http://www.fpcn.net/
   ·超景图片库http://www.gettyimages.cn/
   ·精美扫图http://www.enet.com.cn/eschool/includes/zhuanti/cg/index.shtml
"""
import re
url_str = "人民网-图片http://www.people.com.cn/GB/tupian/中国新闻图片网http://www.cnsphoto.com/全景图片网http://www.quanjing.com/八目妖http://www.haha168.com/美图http://www.6to23.com/pic/新华网-图片频道http://www.xinhuanet.com/photo/国内新闻精彩图片集http://news.sina.com.cn/photo/c/index.shtml"
pattern_url = re.compile("[h][t][t][p][:][0-9a-zA-Z/\.]+")
result_url = pattern_url.findall(url_str)
print(result_url)

猜你喜欢

转载自blog.csdn.net/qq_42336700/article/details/81539587
今日推荐