2

我想在我的 wiki 页面中使用现有字符串添加一个链接。此字符串将附加到 url 以形成完整的 URL。

该字符串由许多单词组成,例如“Crisis Management in International Computing”

我想用空格“”分割然后构造这个字符串:“Crisis+Management+in+International+Computing”

这是我的 wiki 页面中的 String 变量:

{{SUBJECTPAGENAME}}

注意:我必须先检查字符串是否包含多个单词,就好像字符串只是一个单词一样,“危机”我不会执行拆分功能。

我在网上搜索并没有为我们找到明确的语义来执行此问题。

有没有人经历过这样的事情?

4

2 回答 2

1

如果我从评论中理解正确,您想替换字符串中所有出现的空格,并将其替换为+. 这可以通过ParserFunctions 扩展的字符串函数来完成。

如果您运行的是相当新的 MediaWiki 版本(>1.18,请转到 Special:Version 检查),ParserFunctions 扩展与软件捆绑在一起。您只需要通过添加以下内容来启用它LocalSettings.php

require_once "$IP/extensions/ParserFunctions/ParserFunctions.php";
$wgPFEnableStringFunctions = true;

然后你就可以写例如

{{#replace: {{SUBJECTPAGENAME}} |<nowiki> </nowiki>|+}} 

但是请注意,如果您真正想要的只是页面名称的 url 版本,则可以使用{{SUBJECTPAGENAMEE}}代替{{SUBJECTPAGENAME}}.

于 2014-08-13T18:49:24.943 回答
0

我建议您使用自定义解析器功能。

或者作为一种技巧,尝试使用作为Semantic Forms一部分的arraymaptemplate解析器函数拆分字符串。

URL:arraymaptemplate解析器函数。

您可以使用介绍模板来创建链接,并使用数组模板来拆分单词并将其添加到介绍模板中。

我没有尝试使用分隔符作为空格,但从文档看来,它应该使用 html 编码作为空格。

于 2014-08-12T10:37:11.683 回答