re模块中的search
方法:
search
只要搜索到一个匹配的结果,就会返回,返回值是一个对象,可以通过该对象的group
方法来获取匹配结果,如果没有找到匹配结果,什么也不返回。
result1 = re.search(r"(123)+", "adf123333abc")
print(result1.group())
# 123
使用?P<#name#>
来给分组内指定值命名:
result1 = re.search(r"(?P<name>[a-z]+)", "bill36")
name = result1.group("name")
# bill
re模块中的match
方法:
在search
方法值匹配一个结果的基础上,从头开始匹配内容,相当于search("^")
re模块中的split
方法:
按照指定规则分割字符串为列表
result = re.split(" ","abc edf 324 a3f")
# ['abc', 'edf', '324', 'a3f']
使用分组()
匹配,会优先匹配分组中的内容:
result = re.findall("www\.(baidu|163)\.com", "www.baidu.com123")
# ['baidu']
可以在分组中使用?:
来去优先级:
result = re.findall("www\.(?:baidu|163)\.com", "www.baidu.com123")
# ['www.baidu.com']
网友评论