帮助:解析函数/rpos
rpos是一个解析函数。帮助:解析函数页列出了所有解析函数的说明。
rpos
返回字符串中目标子串的最后出现位置。出自扩展 ParserFunctions 的String functions大规模使用时性能低下,推荐使用Lua模块。请参考扩展置顶警告和MediaWiki代码库 r51497中的暴论“parsers in the ugliest, most inefficient programming language known to man: MediaWiki wikitext with ParserFunctions.”、“WARNING: enabling this may have an adverse impact on the sanity of your users.”。
从0开始计数,未找到时返回-1。
语法
{{#rpos: 字符串 | 搜索目标 }}
- 字符串:被搜索的文本
- 搜索目标:要查找的子串(空字符串将自动转换为空格)
特性
- 从右向左搜索
- 区分大小写
- 支持UTF-8多字节字符
- 对<nowiki>标签等扩展标记按长度0处理
- 搜索目标长度受$wgStringFunctionsLimitSearch配置限制
示例
{{#rpos: 这是长字串 | 字串 }}
→ 3{{#rpos: 这是长字串长 | 长 }}
→ 5{{#rpos: Žmržlina | lina }}
→ 4{{#rpos: <nowiki>test</nowiki> | test }}
→ -1{{#rpos: 测试文本 | 无匹配 }}
→ -1
底层代码
实际用例
- 一些Wiki使用了相关特性,如下所示这个静态列表可能在下列页面更改后过时,仅供批判性参考。
- 模板:摆设套装一览/行 - 原神
- 模板:地图页面/配置 - 地下城堡3
- 模板:页面/配置 - 地下城堡3
- 模板:技能范围 - 交错战线
- 模板:角色图鉴 - 另一个伊甸
- 模板:角色图鉴2.0 - 另一个伊甸
- 模板:NoteTA - 我的世界地下城
- 模板:Other translation files - 我的世界地下城
- 模板:Version link/compatible - 我的世界地下城
- 模板:Version nav - 我的世界地下城
- 模板:王子图鉴 - 梦王国与沉睡的100王子
- 模板:Chapter - 非匿名指令
- 模板:Infobox - 《逃离塔科夫》官方 Wiki(镜像)
- 模板:Infobox/aux - 《逃离塔科夫》官方 Wiki(镜像)
- 模板:Pagename nd - 《逃离塔科夫》官方 Wiki(镜像)
- 模板:Charainfo - 夏日口袋