提取字符串里的数字
代码如下
import re
str1='abdb212jfd'
str2=re.findall('db(.*?)j',str1) #括号内是要提取的内容
print(str2[0])
--->212
str3=re.finditer('\d',str1)
print(str3)
----> <callable_iterator object at 0x000001B916013F60>
for i in str3:
print(i.group(),end='')
--->212
总结:
findall在字符串中找到正则表达式所匹配的所有字符串,并返回一个列表,如果没有找到匹配的则返回空列表,个人认为findall在爬虫匹配内容是非常强大的,建议熟练掌握。
finditer和findall类似,在字符串中找到正则表达式所匹配的所有字符串,并把他们作为一个迭代器返回。