模板:Split
简介
这个模板将按传入的参数分割字符串,并使用多个变量逐一保存,多是用于模板之中。
用法
{{Split |str= 需要分割的字符串 |ptn= 用于分割的字符或正则表达式,支持以<nowiki>标签包裹的格式传入 |name= 分割后的各部分的变量前缀,默认为foo |reg= 为“on”时,启用正则模式 }}
其中:
{{#var:变量前缀(n)}}
保存着分割得到的字符串。{{#var:变量前缀.count}}
保存着分割得到的字符串总数。- str、ptn和name也分别对应匿名参数1、2、3
示例
示例1
{{Split|Hello,world!|,}} 分段1:{{#var:foo1}} 分段2:{{#var:foo2}} 分割得到的字符串总数:{{#var:foo.count}}
分段1:Hello
分段2:world!
分割得到的字符串总数:2
示例2
{{Split|str= a123b456c|ptn= %d+|reg=on}} 分段1:{{#var:foo1}} 分段2:{{#var:foo2}} 分段3:{{#var:foo3}} 分割得到的字符串总数:{{#var:foo.count}}
分段1:a
分段2:b
分段3:c
分割得到的字符串总数:3
示例3
{{Split|萌娘百+欢迎+科!++来到|+|str}} {{#var:str2}}{{#var:str5}}{{#var:str1}}{{#var:str3}} 分割得到的字符串总数:{{#var:str.count}}
欢迎来到B站Wiki!
分割得到的字符串总数:5
(因为其中有一处连续的加号,{{#var:str4}}
被赋予了一个空字符串)
示例4
在模板中,利用此模板将接收到的一个约定格式的字符串分割,作为多个参数使用。因为是模板,所以这里无法作出演示。
{{#fornumargs: num | value |{{split|{{#var:value}}|,}} {{ruby|{{#var:foo1}}|{{#var:foo2}}}} }}