Tools 是非官方社区Wiki。社区文档正在编写中,欢迎参与。 Wiki编辑答疑群:717421103
版本250722.2
全站通知:

帮助:解析函数/nse

来自WIKI实验室WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索

nse是一个解析函数。帮助:解析函数页列出了所有解析函数的说明。

nse

获取URL编码的命名空间名称,根据ID或英文名。MediaWiki原生支持。

与ns一致,但结果以URL编码。

语法

{{nse:参数1}}

  • 参数1:命名空间ID、英文名或中文名

示例

  • {{nse:-2}} / {{nse:Media}}%E5%AA%92%E4%BD%93%E6%96%87%E4%BB%B6
  • {{nse:-1}} / {{nse:Special}}%E7%89%B9%E6%AE%8A
  • {{nse:0}} / {{nse:}}
  • {{nse:6}} / {{nse:File}} / {{nse:Image}}%E6%96%87%E4%BB%B6
  • {{nse:8}} / {{nse:MediaWiki}}MediaWiki

此外,中文名也可:

  • {{nse:模板}} → %E6%A8%A1%E6%9D%BF

支持讨论命名空间:

  • {{nse:1}} / {{nse:Talk}} → %E8%AE%A8%E8%AE%BA
  • {{nse:3}} / {{nse:User talk}} → %E7%94%A8%E6%88%B7%E8%AE%A8%E8%AE%BA


底层代码

来自MediaWiki及其扩展的源代码,运行在服务端。此处仅供快速查阅,便于更充分的挖掘其“特性”。

// mediawiki-1.37.0\includes\parser\CoreParserFunctions.php
public static function nse( $parser, $part1 = '' ) {
	$ret = self::ns( $parser, $part1 );
	if ( is_string( $ret ) ) {
		$ret = wfUrlencode( str_replace( ' ', '_', $ret ) );
	}
	return $ret;
}
代码逻辑:
  • 先获取ns的结果
  • 将名称中的空格转换为下划线
  • URL编码并返回结果

实际用例

一些Wiki使用了相关特性,如下所示这个静态列表可能在下列页面更改后过时仅供批判性参考