正则表达式大全

作者: 暖A暖 | 来源:发表于2019-07-16 18:17 被阅读26次

    检验手机号码

    # 要求:手机号码必须为11位数字,以1开头,第二位为1或5或8。
    
    import re
    def verify_mobile():
        mob = input("请输入手机号码:")
        ret = re.match(r"1[358]\d{9}", mob)
        if ret:
            print("手机号码匹配正确")
        else:
            print("匹配错误")
    verify_mobile()
    

    检验邮箱

    import re
    def verify_email():
        email = input("请输入邮箱:")
        ret = re.match(r'^[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+){0,4}@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+){0,4}$', email)
        if ret:
            print("邮箱匹配正确")
        else:
            print("匹配错误")
    verify_email()
    

    验证身份证

    import re
    def verify_card():
        card = input("请输入身份证:")
        ret = re.match(r'^([1-9]\d{5}[12]\d{3}(0[1-9]|1[0-2])(0[1-9]|1[0-9]|2[0-9]|3[0-1])\d{3}(\d|X|x))$', card)
        if ret:
            print("身份证匹配正确")
        else:
            print("匹配错误")
    verify_card()
    

    验证日期年-月-日

    import re
    def verify_date():
        date = input("请输入年月日:")
        ret = re.match(r'^(\d{4}-\d{1,2}-\d{1,2})$', date)
        if ret:
            print("日期匹配正确")
        else:
            print("匹配错误")
    verify_date()
    

    验证数字的表达式

    匹配数字:^[0-9]*$
    
    匹配n位的数字:^\d{n}$
    
    匹配零和非零开头的数字:^(0|[1-9][0-9]*)$
    
    匹配正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$
    
    匹配非零的正整数:^[1-9]\d*$ 或 ^([1-9][0-9]*){1,3}$ 或 ^\+?[1-9][0-9]*$
    
    匹配非零的负整数:^\-[1-9][]0-9″*$ 或 ^-[1-9]\d*$
    
    匹配非负整数:^\d+$ 或 ^[1-9]\d*|0$
    
    匹配非正整数:^-[1-9]\d*|0$ 或 ^((-\d+)|(0+))$
    
    匹配浮点数:^(-?\d+)(\.\d+)?$ 或 ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
    
    匹配正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
    
    匹配负浮点数:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 
    
    匹配非正浮点数:^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 
    
    匹配非负浮点数:^\d+(\.\d+)?$ 或 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
    

    验证字符的表达式

    匹配汉字:^[\u4e00-\u9fa5]{0,}$
    
    匹配英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$
    
    匹配大写英文字母组成的字符串:^[A-Z]+$
    
    匹配小写英文字母组成的字符串:^[a-z]+$
    
    匹配大小写英文组成的字符串:^[A-Za-z]+$
    
    匹配中文、英文、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$
    
    禁止输入含有~的字符:[^~\x22]+
    

    以上是一些比较常用到的正则验证,想要更详细的学习Python正则表达式可以看一下这里:https://www.9xkd.com/1994769508-1.html

    相关文章

      网友评论

        本文标题:正则表达式大全

        本文链接:https://www.haomeiwen.com/subject/jsgtlctx.html