查看“模板:Regex/doc”的源代码
←
模板:Regex/doc
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
== 简介 == 该模板为[https://www.mediawiki.org/wiki/Extension:RegexParserFunctions RegexParserFunctions模块]的封装模板,使用基于PCRE库的正则表达式对字符串的处理,包含下列功能: * test:判断字符串是否匹配正则 * match:返回与正则匹配的子串 * replace:根据正则替换字符串 若要将该模板置于其他字符串处理或逻辑判断的模板中,建议先单独拿出来测试,确保正则以及修饰符的正确。因为该模板已经屏蔽了原模块抛出的系统级错误(系统级错误有可能导致在页面后退时发生编辑丢失)。 == 用法与示例 == 关于修饰符的使用,请参考:[http://php.net/manual/zh/reference.pcre.pattern.modifiers.php PHP官方文档:模式修饰符] 该模板所有方法的<code>ptn</code>参数均支持以<code><nowiki><nowiki></nowiki></code>标签包裹的格式传入。 === test === 判断字符串是否匹配正则,匹配则返回1,否则返回空。 <pre> {{regex|test|str=字符串 |ptn=正则 |mdf=修饰符 |then= 如果匹配则输出,默认为1 |else= 否则输出,默认为空}} </pre> 其中,str、ptn、then、else也分别对应匿名参数2、3、4、5。 ;示例: <pre> {{regex|test|123,456|\d+,\d+|true|false}} </pre> '''结果''':{{regex|test|123,456|\d+,\d+|true|false}} === match === 返回与正则匹配的子串,若未匹配到,则返回空。 <pre> {{regex|match|str=字符串 |ptn=正则 |mdf=修饰符}} </pre> 其中,str和ptn也分别对应匿名参数2和3。 ;示例: <pre> {{regex|match|123,456|,\d+}} </pre> '''结果''':{{regex|match|123,456|,\d+}} === replace === 根据正则替换字符串,若未匹配到,则原样返回。 <pre> {{regex|replace|str=字符串 |ptn=正则 |mdf=修饰符 |rep=替换内容,默认为空字符串 |lim= 次数限制,默认为无限制}} </pre> 其中,str、ptn、rep、lim也分别对应匿名参数2、3、4、5。 ;示例1: <pre> {{regex|replace|abc,dEf|mdf=i|,[a-z]+|000}} <!-- 使用修饰符“i”,设置大小写不敏感 --> </pre> '''结果''':{{regex|replace|abc,dEf|mdf=i|,[a-z]+|000}} ;示例2: <pre> {{regex|replace|abc,def|(\w+),(\w+)|$1&$2}} <!-- 使用“$n”,引用捕获的子串 --> </pre> '''结果''':{{regex|replace|abc,def|(\w+),(\w+)|$1&$2}} <includeonly>[[分类:辅助模板]]</includeonly><noinclude>[[分类:模板说明文件]]</noinclude>
该页面使用的模板:
模板:FromOther/CN
(
查看源代码
)
模板:Namespace detect
(
查看源代码
)
模板:Regex
(
查看源代码
)
模板:Str test
(
查看源代码
)
模板:Unwiki
(
查看源代码
)
模块:Arguments
(
查看源代码
)
模块:Str test
(
查看源代码
)
模块:Unwiki
(
查看源代码
)
返回至
模板:Regex/doc
。
导航菜单
个人工具
登录
名字空间
模板
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
随机页面
最近更改
最新文件
常用
上传多个文件
工具
链入页面
相关更改
特殊页面
页面信息