对于结果是json格式的我们经常使用jsonpath,但是很多时候我们需要从一些文本中提取数据,这个时候正则表达式的提取就很重要,这边主要分享一些正则表达式的提取方法和应用场景的实践,主要介绍两种用法re.search()跟re.findall()
1.re.search()
re.search() 函数用于在字符串中查找匹配的第一个子串,并返回一个匹配对象。如果找到了匹配,可以通过匹配对象的方法和属性来获取相关信息
例如:在一下文本中找到value对应的值
re.search('name="csrf token" value:"(.*?)"',result)
写法:将上面文本中的复制下来,然后将value对应的值直接换成"(.*?)"即可
2.re.findall()
re.findall() 函数用于在字符串中查找所有匹配的子串,并返回一个包含所有匹配结果的列表。
import re
pattern = r'\d+' # 匹配一个或多个数字
text = "I have 3 apples and 5 bananas. Total 8 fruits."
# 查找所有匹配的子串
matches = re.findall(pattern, text)
if matches:
print("Matches:", matches) # 获取所有匹配的子串列表
else:
print("No matches found.")