概览

ParserFunctions是一系列针对参数的解析器函数,​​ParserFunction​​,​​StringFunctions​​(已经被整合到)​​ParserFunction​​里面,但是还是要做相应的配置。

服务器设置

注意:StringFunctions已经合并到ParserFunction里面了。

  • 在​​LocalSettings.php​​末尾添加如下表达式:
wfLoadExtension( 'ParserFunctions' );
$wgPFEnableStringFunctions = true;


  • 验证
    在​​http:/ip/index.php?title=特殊:版本​​或者​​http:/ip/index.php?title=Special:Version​​ 可以在安装的扩展程序里面找到ParserFunction,在最后面的解析器函数钩里能找到相应的函数

使用

所有的函数和使用方法都能在​​这里​​找到。

#explode

​#explode​​ 函数将给定的字符串拆分为多个片段,然后返回其中的某个片段。​​#explode​​语法如下:

​{{#explode:string|delimiter|position|limit}}​

  • string:为要解析的字符串
  • delimiter:为以某个字符分割,通常有​​. / , % |​​等。
  • position:位置
  • limit:仅在ParserFunctions里面有,在StringFunctions里面没有该参数。限定在position的基础上取多少个。

例子

  • ​{{#explode:And if you tolerate this| |2}}​​ 返回you
    将​​And if you tolerate this​​以空格分割,并返回第2个分割后的字符串。(正向计数以0开始,And对应0,if对应1)
  • ​{{#explode:String/Functions/Code|/|-1}}​​ 返回Code
    将​​String/Functions/Code​​以/分割,并返回第-1个(反着数)分割后的字符串。(反向计数以-1开始,code对应-1,Functions对应-2)
  • ​{{#explode:And if you tolerate this| |2|3}}​​ 返回you tolerate this
    将​​And if you tolerate this​​以空格分割,从第2个(you)开始,连着取3个。
  • ​{{#explode:{{#explode:{{{title}}}|/|-1}}|.|1}}​​ 返回abc
    假设title=http://www.baidu.com/abc.html,上面的意思为将title以/分割,取abc.html,然后在将abc.html以.分割,取第一个abc。
    这里包含了嵌套使用,传参使用。