我正在用"chœur"替换"choeur"来修复一些文章与replace.py
的符咒。
在mediawiki语法中也有文件链接:
[[Fichier:Menditte (Pyr-Atl, Fr) choeur de l'église.JpG|thumb|Chœur de l'église]]
编辑这种东西会破坏链接。我不能使用[]
,因为还有链接描述:
[[Fichier:JeronimosRoyalTombs.Jpg|thumb|right|Tombeaux de [[Jean III de Portugal]] (à gauche) et de [[Catherine de Castille]] (à droite) dans la choeur de l'église]]
在这种情况下,这个咒语应该被修复。
所以我不需要做编辑,如果有.jpg
在同一行,在"choeur"之后。
我的问题是我找不到在python regex中处理布尔表达式的方法
您可以使用负向前看(?!...)
(后面不跟):
模式:
(?i)b(ch)oe(urs?b)(?!.*.jpgb)
替换:
$1œ$2
关于字边界:
字边界用于分隔bchoeurs?b
或.jpgb
的字母,并且在大多数情况下可以完成这项工作。但是,请记住,单词边界不适用于这个字符串:__choeur__
。如果需要,可以用遍历替换单词边界,例如:
(?:(?<=_)|b)choeurs?(?=_|b)