正则表达式来进行模式匹配,来判断字符串是否符合要求,在python爬虫中用来提取得到想要的数据。
.表示任何单个字母, [ ]表示给出取值范围(如[abc ],[a-z]),[]表示不能取此范围内的字母,*指前一个字符可取0到无限次,+指前一个字符可取1到无限次,?指前一个字符可取0或者1次,|表示左右表达式任意一个,{m}指前一个字符取m次(如ab{2}c即指abbc),{m,n}指前一个字符取m或n次,指字符串以此开头(如^abc),
表
示
以
此
字
符
串
结
尾
(
如
a
b
c
表示以此字符串结尾(如abc
表示以此字符串结尾(如abc),\d表示数字等价于[0-9],\D表示非数字,\w表示单词等价于[A-Za-z0-9],\W非单词字符,\s指空白字符,\S为非空白字符。
Re库中的常用函数。re.search()指在一个字符串中搜索符合正则表达式的第一个位置,返回match对象。re.findall()指搜索字符串,以列表类型返回全部能匹配的子串。re.split()将一个字符串按正则表达式匹配的结果分割,返回列表类型。re.sub()在一个字符串中替换匹配正则表达式的子串。re.finditer()搜索字符串,返回一个匹配结果的迭代类型,每个迭代元素为match对象。具体的使用,方法一先生成一个Pattern对象,用compile()方法,如model=re.compile("A+"),
,再使用print(model.search("AAAccv"))
,或是直接使用print(re.sub("a","A","aascdFFFs"))
。
我认为的正则表达式使用为先记住基础的一些语法,再看一下常用的复杂的正则表达式。也可收藏了大佬 的正则表达式总结,以防以后用上。
正则表达式总结
最新推荐文章于 2024-06-13 14:35:59 发布