gpt4 book ai didi

带有 wiki 文本的 Python 正则表达式

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:17 24 4
gpt4 key购买 nike

我正在尝试使用 Python 正则表达式替换将 wikitext 更改为普通文本。关于 wiki 链接有两种格式规则。

  • [[页面名称]]
  • [[页面名称 |要显示的文本]]

    (http://en.wikipedia.org/wiki/Wikipedia:Cheatsheet)

这是一些让我头疼的文字。

The CD is composed almost entirely of [[cover version]]s of [[The Beatles]] songs which George Martin [[record producer|produced]] originally.

上面的文字应该改成:

The CD is composed almost entirely of cover versions of The Beatles songs which George Martin produced originally.

[[ ]] 和 [[ | 之间的冲突]] 语法是我的主要问题。我不需要一个复杂的正则表达式。按顺序应用多个(也许两个)正则表达式替换是可以的。

请赐教这个问题。

最佳答案

wikilink_rx = re.compile(r'\[\[(?:[^|\]]*\|)?([^\]]+)\]\]')
return wikilink_rx.sub(r'\1', the_string)

示例:http://ideone.com/7oxuz

注意:您还可以在 http://www.mediawiki.org/wiki/Alternative_parsers 中找到一些 MediaWiki 解析器。 .

关于带有 wiki 文本的 Python 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4929082/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com