def main():
print("Python: hello world !!!")
# 正则表达式是对字符串提取的一套规则,我们把这个规则用正则里面的特定语法表达出来,
# 去匹配满足这个规则的字符串。正则表达式具有通用型,不仅python里面可以用,其他的语言也一样适用。
# python中re模块提供了正则表达式的功能,常用的有四个方法(match、search、findall)都可以用于匹配字符串
import re # 引用re模块
# ------------------------ match 方法 ------------------------#
a = re.match('test','testasdtest')
print(a) #返回一个匹配对象
print(a.group()) #返回test,获取不到则报错
print(a.span()) #返回匹配结果的位置,左闭右开区间
print(re.match('test','atestasdtest')) #返回None
# re.match()方法返回一个匹配的对象,而不是匹配的内容。如果需要返回内容则需要调用group()。
# 通过调用span()可以获得匹配结果的位置。而如果从起始位置开始没有匹配成功,即便其他部分包含需要匹配的内容,
# re.match()也会返回None
# 单字符匹配:
# 字符 功能
# . 匹配任意字符
# [] 匹配[]中列举的字符
# \d 匹配数字,即0~9
# \D 匹配非数字,
# \s 匹配空白,即0,tal键
# \S 匹配非空白
# \w 匹配单词字符:0~z,A~Z,_
# \W 匹配非单词字符
print("单字符匹配:")
a = re.match('.','23es12testasdtest') #匹配单个字符,从字符串0位置开始
print(a)
a = re.match('..','23es12testasdtest') #连续2个任意字符
print(a)
a = re.match('..','') #返回None,匹配失败
print(a)
a = re.match('\d\d','23es12testasdtest') #连续2个数字
print(a)
a = re.match('\d\d\d','23es12testasdtest') #匹配连续3个数字,失败
print(a)
a = re.match('\D','es12testasdtest') #