正则表达式

概念:用特殊字符去匹配字符串中的内容,Python中支持正则表达式的模块是 re模块

匹配字符串的位数:

import re
qq_num = "8888"   #定义一个 4位 字符串
qq_num2 = "888899999999"   #定义一个 5位 字符串
pattern_str = r"[1-9]\d{4,10}"  #定义正则表达式,匹配位数为 5-11位的字符串
print(re.match(pattern_str, qq_num))   #去匹配低于最低位的正则表达式,返回的值为 None
print(re.match(pattern_str, qq_num2))  #匹配超出规定的位数,则从头匹配它规定的位数
pattern_str = r"[1-9]\d{4,10}$"  #匹配超出规定位数基础上去匹配最后一位就取不到,即返回值为 None
print(re.match(pattern_str, qq_num2))

执行结果为:

匹配字符串的位置:

import re
#定义两个字符串,然后用正则表达式去匹配
str_test = "Hello Python"
str_test2 = "Python Hello"
pattern = "Python"
print(re.match(pattern, str_test))
print(re.match(pattern, str_test2))
#只能匹配到str_test2,说明只能匹配以哪个字符串开头的字符串
print("obj----------------------------------------------------")
obj = re.match(pattern, str_test2)
print(obj)   #返回的是match的对象
print(obj.end())   #结束的位置
print(obj.start())   #开始的位置
print(obj.span())   #起止位置
print(obj.endpos)   #所在字符串的长度

执行结果为:

更多推荐

正则表达式(一)之 匹配字符串