day17作业(2019-08-13)

  1. 写一个正则表达式判断一个字符串是否是ip地址
    规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小是0-255
    255.189.10.37 正确
    256.189.89.9 错误
re_str = r'((\d\d?|1[0-9][0-9]|2[0-5][0-5]|2[0-4][0-9])\.){3}(\d\d?|1[0-9][0-9]|2[0-5][0-5]|2[0-4][0-9])'
ip = input("请输入ip地址:")
result = fullmatch(re_str, ip)
print(result)
  1. 计算一个字符串中所有的数字的和
    例如:字符串是:‘hello90abc 78sjh12.5’ 结果是90+78+12.5 = 180.5
re_str = r'\d+\.?\d*'
result = findall(re_str, 'hello90abc 78sjh12.5')
print(result)
sum1 = 0
for x in result:
    sum1 += float(x)
print(sum1)
  1. 验证输入的内容只能是汉字
re_str = r'[\u4e00-\u9fa5]+'
print(fullmatch(re_str, '你好啊'))
  1. 电话号码的验证
re_str = r'1[3-9]\d{9}'
print(fullmatch(re_str, '13645687984'))
  1. 验证输入用户名和QQ号是否有效并给出对应的提示信息
    要求:
    用户名必须由字母、数字或下划线构成且长度在6~20个字符之间
    QQ号是5~12的数字且首位不能为0
def Login():
    username = input("请输入用户名:")
    QQ = input("请输入QQ号:")
    re_str1 = r'[a-zA-Z\d_]{6,20}'
    re_str2 = r'[1-9][0-9]{4,11}'
    result1 = fullmatch(re_str1, username)
    result = fullmatch(re_str2, QQ)
    if not result1:
        print('用户名必须由字母、数字或下划线构成且长度在6~20个字符之间')
    if not result:
        print('QQ号是5~12的数字且首位不能为0')
    else:
        print('登录成功!') 


Login()
  1. 拆分长字符串:将一首诗的中的每一句话分别取出来
    poem = '窗前明月光,疑是地上霜。举头望明月,低头思故乡。
result = split(r',|。', '窗前明月光,疑是地上霜。举头望明月,低头思故乡。')
result.pop()
for x in result:
    print(x)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小...
    数番番阅读 159评论 0 0
  • 1. 写一个正则表达式判断一个字符串是否是ip地址 规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数...
    Lis_reak阅读 252评论 0 0
  • 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小...
    容荔阅读 149评论 0 0
  • from re import * 写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每...
    棠球球阅读 238评论 0 1
  • 车站,一个离别的地方,也是一个重逢的地方 每次离乡,既期待也害怕父母一起送别。 往常,父亲将我载到车站门口,我自己...
    苏珊橙阅读 803评论 0 6