Python 正则表达式 re.findall() 提取字符串:解析 'video_' 开头内容
Python 正则表达式 re.findall() 提取字符串:解析 'video_' 开头内容
本文将详细解释如何使用 Python 的正则表达式库 re.findall() 提取以 'video_' 开头的字符串。
问题:
为什么 re.findall(r'video_(.*?)','https://www.pearvideo.com/video_1223873') 提取为空内容?
解答:
该正则表达式 r'video_(.*?)' 的含义是:
video_:匹配字面量 'video_'。(.*?):匹配任意字符(除换行符)出现 0 次或多次,并将其捕获到一个组中,?表示非贪婪匹配,即尽可能少地匹配。
对于字符串 https://www.pearvideo.com/video_1223873,该正则表达式能够匹配到 'video_1223873'。
使用 re.findall() 函数时,需要注意参数顺序:
- 第一个参数是正则表达式。
- 第二个参数是要匹配的字符串。
正确代码:
import re
result = re.findall(r'video_(.*?)','https://www.pearvideo.com/video_1223873')
print(result)
输出结果:
['1223873']
结论:
正则表达式成功匹配到了 'video_1223873',并提取出了 '1223873'。
注意:
- 正则表达式语法可能比较复杂,建议查阅相关文档进行学习。
- 实际使用中,需要根据具体情况调整正则表达式。
原文地址: https://www.cveoy.top/t/topic/ojaC 著作权归作者所有。请勿转载和采集!