#正则表示次数
"""
*匹配前一个字符0次或无限次
+匹配前一个字符1次或无限次
?匹配前一个字符0次或1次
{n}匹配前一个字符n次
{m,n}匹配前一个字符m-n次
"""
"""
[abcd]abcd中娶一个,第一个字符在abcd之间
[^abcd]第一个字符不是abcd
[]代表一个字符
正则切割\s+代表空格出现一次或多次
"""
"""
.匹配除了
之外的所有字符,忽略异常情况
d匹配所有数字0-9,D匹配所有非数字
s匹配所有空白字符,包括 、
、
;S匹配所有非空白字符,除空格
、
、 之外的
w匹配所有单词字符,包括大小写字母和数字;W匹配所有非单词字符,除大小写字母数字以外
"""
#正则默认是贪婪模式,虽然是两个括号,但是贪婪模式会解释和前面的一起
"""
常见的正则表达:
# QQ 1648568957 ^[1-9](d{4,10})$
# mobile 13895623541 ^1[34578](d{9})$
# phone 010-78852436 ^0[1-9](d{1,2})-[1-9](d{6,7})$
# birthday 1995-02-28 ^((18d{2})|(19d{2})|(20[01]d))-((0[1-9])|(1[0-2]))-((0[1-9])|([12][0-9])|(3[01]))$
# email xiaofei@cugb.edu.cn ^(w(.|_|w)+)@(w+.{1,3}w+)$
# ip 202.204.192.85 ^(d{1,3}.(d{1,3}.(d{1,3}.(d{1,3})$
ip地址每一段不得超过255,一共分为四段,分五个部分描述
0-9、10-99、100-199、200-249、250-255
所以完整的ip地址为:
^(d|[1-9]d|1(d{2})|2[0-4]d|25[0-5]).(d|[1-9]d|1(d{2})|2[0-4]d|25[0-5]).(d|[1-9]d|1(d{2})|2[0-4]d|25[0-5]).(d|[1-9]d|1(d{2})|2[0-4]d|25[0-5]).$
^((d|[1-9]d|1(d{2})|2[0-4]d|25[0-5]).){3}(d|[1-9]d|1(d{2})|2[0-4]d|25[0-5])$
"""