Python 正则表达式 re.findall() 提取字符串:解析 'video_' 开头内容

本文将详细解释如何使用 Python 的正则表达式库 re.findall() 提取以 'video_' 开头的字符串。

问题:

为什么 re.findall(r'video_(.*?)','https://www.pearvideo.com/video_1223873') 提取为空内容?

解答:

该正则表达式 r'video_(.*?)' 的含义是:

  1. video_:匹配字面量 'video_'。
  2. (.*?):匹配任意字符(除换行符)出现 0 次或多次,并将其捕获到一个组中,? 表示非贪婪匹配,即尽可能少地匹配。

对于字符串 https://www.pearvideo.com/video_1223873,该正则表达式能够匹配到 'video_1223873'。

使用 re.findall() 函数时,需要注意参数顺序:

  1. 第一个参数是正则表达式。
  2. 第二个参数是要匹配的字符串。

正确代码:

import re
result = re.findall(r'video_(.*?)','https://www.pearvideo.com/video_1223873')
print(result)

输出结果:

['1223873']

结论:

正则表达式成功匹配到了 'video_1223873',并提取出了 '1223873'。

注意:

  • 正则表达式语法可能比较复杂,建议查阅相关文档进行学习。
  • 实际使用中,需要根据具体情况调整正则表达式。
Python 正则表达式 re.findall() 提取字符串:解析 'video_' 开头内容

原文地址: https://www.cveoy.top/t/topic/ojaC 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录