其他分享
首页 > 其他分享> > 正则表达式

正则表达式

作者:互联网

# 校验qq号是否有效
# 1.获得用户输入的qq号
qq_num = input('请输入您的qq号>>>:').strip()
# 2.判断是否为纯数字
if qq_num.isdigit():
    # 3.判断长度是否为10位
    if len(qq_num) == 10:
        # 4.判断是不是以0开头
        if not qq_num.startswith('0'):
            print('qq号有效')
        else:
            print('qq号无效')
    else:
        print('qq号长度不正确')
else:
    print('qq号不是纯数字')


# 正则表达式
# 获得用户输入的qq号
import re
qq_num = input('请输入您的qq号>>>:').strip()
if re.match('^[1-9][0-9]{9}', qq_num):
    print('qq号有效')
else:
    print('qq号无效')
编号    字符             作用
1    [0-9]          0-9的任意数字
2    [A-Z]          A-Z的任意字母
3    [a-z]          a-z的任意字母
4    [0-9A-Za-z]    0-9、A-Z、a-z的任意字符,之间是或的关系
编号    特殊符号         作用
1    .           匹配除换行符之外的所有字符
2    \w       匹配字母、数字、下划线
3    \W       匹配除字母、数字、下划线之外的所有字符
4    \b       匹配所有数字
5    a        匹配a或者b
6    ^        匹配开头
7    $        匹配结尾
8    ()       给正则表达式分组
9    []       匹配字符组中的字符
10   [^]     匹配除了字符组中字符的所有字符(取反)
编号   量词      作用
1.   * 获取0次或多次 2.   + 获取1次或多次 3.   ? 获取0次或1次 4.   {n} 获取0次或n次 5.   {n,} 获取n次或多次 6.   {n,m} 获得n次到m次

   1. 贪婪匹配: .*          所有的量词默认都是贪婪匹配

   2. 非贪婪匹配:.*?     所有的量词默认都是贪婪匹配 但是如果在量词的后面紧跟一个问号,那么就会变成非贪婪匹配

   1. 正则表达式转义:正则表达式中取消斜杠与字母的特殊含义 就是在斜杠前面加斜杠

    1.1 \n    \\n

    1.2 \\n   \\\\n

   2.python转义:

    2.1 \n    r'\n

    2.2 \\n   r'\\n

标签:qq,字符,匹配,正则表达式,num,贪婪,print
来源: https://www.cnblogs.com/040714zq/p/16494599.html