解析MediaWiki DPL正则表达式

时间:2011-05-18 14:09:22

标签: regex mediawiki

我想在正则表达式中使用{{PAGENAME}}魔术词来包含基于传递给模板的参数值的文章。当我使用以下语句并对文章名称进行硬编码时,它会正确选择我想要的文章:

includematch = /reportType\s*=\s*AccountReport/s

但是,当我将DPL转换为AccountReport文章时,以下内容不起作用:

includematch = /reportType\s*=\s*{{PAGENAME}}/s

有谁知道我做错了什么?在{1}}被用于正则表达式之前是否被解析,或者它是否尝试匹配文字字符串?

2 个答案:

答案 0 :(得分:1)

我使用的是DPL标记<dpl>,但在应用正则表达式之前它没有解析{{PAGENAME}}。当我更改它以使用解析器函数{{#dpl:时,{{PAGENAME}}被评估并在我需要的正则表达式中使用。

答案 1 :(得分:1)

读取dpl代码的方式使它无法读取魔术字。请改用dpl扩展名:

{{#dpl|code goes here}}