题解 | #密码验证合格程序#

密码验证合格程序

https://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841

import re
import sys

while True:
    try:
        num = 0
        strs = input()
        if len(strs) <= 8:
            print("NG")
            continue
        else:

            if re.search("\d+", strs):
                num += 1
            if re.search("[a-z]", strs):
                num += 1
            if re.search("[A-Z]", strs):
                num += 1
            if re.search("\\W", strs):
                num += 1

        if num < 3:
            print("NG")
            continue
        else:
            flag=True
            for i in range(len(strs) - 2):
                for j in range(i + 2, len(strs)):
                    substring = strs[i:j + 1]
                    pattern = r"(.{3,}).*\1"
                    if not re.search(pattern, strs):
                        print("OK")
                        flag=False
                        break 
                if not flag:
                    break
            if flag:
                print("NG")
                continue
    except:
        break

可以优化让代码更简洁,省事我就直接贴了

全部评论

相关推荐

12-14 11:43
黑龙江大学 Java
用微笑面对困难:确实比较烂,可以这么修改:加上大学的qs排名,然后大学简介要写一些,然后硕士大学加大加粗,科研经历第一句话都写上在复旦大学时,主要负责xxxx,简历左上角把学校logo写上,建议用复旦大学的简历模板
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务