如何在正则表达式匹配的开头附加一些内容?

这是正则表达式代码:

without_header = re.findall('/sports/[a-z0-9\/\.\-\:]*[0-9\.]+cms', without_header_url)

它返回每个 URL 的输出,该 URL 前面没有 https 标头。例如:

/sports/cricket/ipl/top-stories/kxip-vs-csk-shane-watson-faf-du-plessis-infuse-life-into-csks-ipl-campaign-shape-confidence-boosting-win-over-kxip/articleshow/78481088.cms'
/sports/football/epl/top-stories/epl-manchester-united-humiliated-as-mourinhos-spurs-win-6-1-at-old-trafford/articleshow/78481304.cms

为此,我想在开头附加“https://example.com”。我不需要 for 循环,有没有使用 re.sub 的有效方法?


慕的地8271018
浏览 120回答 1
1回答

Qyouu

您可以在以下位置使用此正则表达式re.sub:(?<!:/)(/sports/[a-z0-9/.:-]*[0-9.]+cms)正则表达式演示代码:s&nbsp;=&nbsp;re.sub(r'(?<!:/)(/sports/[a-z0-9/.:-]*[0-9.]+cms)',&nbsp;r'https://\1',&nbsp;s)正则表达式详细信息:(?<!:/):/:消极的后向断言我们在之前的位置没有(/sports/[a-z0-9/.:-]*[0-9.]+cms):匹配您的文本并在第 1 组中捕获
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python