用于 Mediawiki 替换的正则表达式

Regex for Mediawiki replacement

我正在使用 Replace Text extension in MW 1.23 (which uses MySQL regexps) 并且我想要 运行 正则表达式,这将导致如下例中的替换。关键是它应该只找到在标签之间有一个希腊语 (extended/polytonic) 单词的匹配项,或者只找到一个不符合该单词的匹配项。

先替换这个位:

<b class="b3">

然后是第二个:

</b>

不是一个选项,因为还有其他不应替换的实例。

例子: 每个示例的第一个字符串是实际字符串,第二个字符串是替换后的样子。希腊词可以是任何希腊词(这里是“σπυρίς”和“ὑσμίνη”):

1.
Dim. of <b class="b3">σπυρίς</b>
Dim. of [[σπυρίς]]

2.
cf. <b class="b3">ὑσμίνη</b>
cf. [[ὑσμίνη]]

搜索以下模式:

<b class="b3">([^\s-\.]*?[σπυρίς]+?[^\s-\.]*?)<\/b>

并将其替换为:

[[]]

[σπυρίς] 可以使用您希望至少在标签之间具有的任何希腊字符进行扩展。