# -*- codeing = utf-8 -*-
# coding=gbk
# @Autor:ggui20
import re
if __name__ == '__main__':
## 匹配单个字符 ##
# 匹配某个字符串:
# text = "abc"
# ret = re.match('b', text)
# print(ret.group())
# 点(.):匹配任意的字符(除了'\n'):
# text = "\nabc"
# ret = re.match('.',text)
# print(ret.group())
# \d:匹配任意的数字:
text = "aab"
ret = re.match('\d',text)
print(ret.group())
# -*- codeing = utf-8 -*-
# coding=gbk
# @Autor:ggui20
import re
## 匹配单个字符 ##
# *:匹配0个或者多个字符:
# text = "+abc"
# result = re.match('\D*',text)
# print(result.group())
# +:匹配1个或者多个字符:
# text = "1abc"
# result = re.match('\w+',text)
# print(result.group())
# ?:匹配前一个字符0个或者1个:
# text = "+abc"
# result = re.match('\w?',text)
# print(result.group())
# {m}:匹配m个字符:
# text = "+1abc"
# result = re.match('\w{2}',text)
# print(result.group())
# {m,n}:匹配m-n之间的个数的字符:
text = "1abc+"
result = re.match('\w{1,3}',text)
print(result.group())
# -*- codeing = utf-8 -*-
# coding=gbk
# @Autor:ggui20
import re
if __name__ == '__main__':
# 1. 验证手机号码:手机号码的规则是以1开头,第二位可以是34587,后面那9位就可以随意了。
# text = '18677889900'
# result = re.match('1[34587]\d{9}', text)
# print(result.group())
# 2. 验证邮箱:邮箱的规则是邮箱名称是用数字、英文字符、下划线组成的,然后是@符号,后面就是域名了。
# text = 'hynever@163.com'
# result = re.match('\w+@[a-z0-9]+\.[a-z]+', text)
# print(result.group())
# 3. 验证URL:URL的规则是前面是http或者https或者是ftp然后再加上一个冒号,再加上一个斜杠,再后面就是可以出现任意非空白字符了。\
# text = "https://baike.baidu.com/item/Python/407313?fr=aladdin"
# result = re.match('(http|https|ftp)://\S+', text)
# print(result.group())
# 4. 验证身份证:身份证的规则是,总共有18位,前面17位都是数字,后面一位可以是数字,也可以是小写的x,也可以是大写的X。
text = '36530019870716234x'
result = re.match('\d{17}[\dxX]', text)
print(result.group())