对于[[Test#?]],我从一点 MediaWiki API 中得到“ Test#.3F ”。action=parse
这种编码是什么?如何使用Perl的CPAN将其转换为人类可读的格式?
URI::Encode适用于百分比解码,但不适用于部分名称之一。
对于[[Test#?]],我从一点 MediaWiki API 中得到“ Test#.3F ”。action=parse
这种编码是什么?如何使用Perl的CPAN将其转换为人类可读的格式?
URI::Encode适用于百分比解码,但不适用于部分名称之一。
它是 UTF-8 百分比编码,但用下划线.
代替, 和空格;%
此外,多个连续的空格被折叠,并被:
保留(不编码为.3A
)。
处理它的确切代码是Parser::guessSectionNameFromWikiText(),但是如果您不想深入研究大量代码,请在anchorencode中检查较旧的MediaWiki版本(兼容,除了一些边缘情况)中更简单的实现() :
str_replace( '%', '.', str_replace('+', '_', urlencode( $text ) ) );