re库是python的标准库
re库采用raw string类型表示正则表达式,表示为:r'test'
原生字符串(raw string)是不包含转义符的字符串
例子:
爬取好房通的网站优优好房的房源时用到了re库解析文本,
raw string:
r'[1-9]\d{5}'
r'\d{3}-\d{8}|\d{4}-\d{7}'
string:
'[1-9]\\d{5}'
'\\d{3}-\\d{8}|\\d{4}-\\d{7}'
Re库主要功能函数
re.search(pattern, string, flags=0)
pattern:正则表达式的字符串或原生字符串表示
string:待匹配字符串
flags:正则表达式使用时的控制标记
re.match(pattern,string,flags=0)
因为match为从开始位置开始匹配,使用时要加if进行判别返回结果是否为空,否则会报错
re.findall(pattern,string,flags=0)
re.split(pattern,string,maxsplit=0,flags=0)
maxsplit为最大分割数,剩余部分作为最后一个元素输出
re.finditer(pattern,string,flags=0)
re.sub(pattern,repl,string,count=0,flags=0)
repl是用来替换的字符串,count为替换次数
Re库的另一种等价用法
Re库的函数式用法为一次性操作,还有一种为面向对象用法,可在编译后多次操作
1regex = re.compile(pattern,flags=0)
通过compile生成的regex对象才能被叫做正则表达式
Re库的match对象
Match对象的属性
Match对象的方法
实例
Re库的贪婪匹配和最小匹配
Re库默认采取贪婪匹配,即输出匹配最长的子串
re库是python的标准库
re库采用raw string类型表示正则表达式,表示为:r'test'
原生字符串(raw string)是不包含转义符的字符串
例子:
爬取好房通的网站优优好房的房源时用到了re库解析文本,
raw string:
r'[1-9]\d{5}'
r'\d{3}-\d{8}|\d{4}-\d{7}'
string:
'[1-9]\\d{5}'
'\\d{3}-\\d{8}|\\d{4}-\\d{7}'
Re库主要功能函数
re.search(pattern, string, flags=0)
pattern:正则表达式的字符串或原生字符串表示
string:待匹配字符串
flags:正则表达式使用时的控制标记
re.match(pattern,string,flags=0)
因为match为从开始位置开始匹配,使用时要加if进行判别返回结果是否为空,否则会报错
re.findall(pattern,string,flags=0)
re.split(pattern,string,maxsplit=0,flags=0)
maxsplit为最大分割数,剩余部分作为最后一个元素输出
re.finditer(pattern,string,flags=0)
re.sub(pattern,repl,string,count=0,flags=0)
repl是用来替换的字符串,count为替换次数
Re库的另一种等价用法
Re库的函数式用法为一次性操作,还有一种为面向对象用法,可在编译后多次操作
1regex = re.compile(pattern,flags=0)
通过compile生成的regex对象才能被叫做正则表达式
Re库的match对象
Match对象的属性
Match对象的方法
实例
Re库的贪婪匹配和最小匹配
Re库默认采取贪婪匹配,即输出匹配最长的子串