查看“正则表达式”的源代码
←
正则表达式
跳转至:
导航
,
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{提示|该页面仍需进一步完善,欢迎加入我们}} 正则表达式(Regular Expression,常简写为regex、regexp)是[[计算机科学]]的一个概念,表示用字符序列代表的某种文本模式,用来检索、替换那些符合这个模式(规则)的文本。 == 概述 == === 模式 === 主流的正则引擎主要分为3类,分别为DFA,传统型NFA,POSIX NFA。其中DFA、NFA两种引擎都经历了20多年的发展,各自产生了很多变体,出台POSIX NFA规避了不必要变体的继续产生。 === 符号 === 正则表达式由'''普通字符'''和'''元字符'''(metacharacters)组成。普通字符包括大小写的字母和数字,而元字符则具有特殊的含义。 {| class="wikitable" width="100%" |- ! 元字符 !! 作用 !! 描述 !! 示例 |- | width="8%" | . || width="8%" | 通配符 || width="42%" |匹配除换行符(\n)和回车符(\r)之外的任意字符 || width="42%" | <code>b.d</code> 可匹配bed、bid、b8d等; |- | [ ] || 集合 || 匹配集合中的任意字符 || <code>[abc]</code>,<code>[123]</code> |- | [ - ] || 范围 || 出现在两个字符之间时表示范围,匹配该范围内任意字符 || <code>[a-z]</code>匹配任意小写英文字母;<code>[1-9]</code>匹配任意一位正整数 |- | [^ ] || 取反 || 匹配任何不在指定范围内的任意字符 || <code>[^xyz]</code>匹配除x、y、z以外的任意字符 |- | {m,n} || 量化 || 匹配前面的子表达式至少m次且最多n次 || <code>a{3,5}</code>可匹配aaa、aaaa、aaaaa |- |? || 量化 || 匹配前面的子表达式零次或一次,等价于<code>{0,1}</code> || <code>colou?r</code> 可匹配 color 及 colour |- | * || 量化 || 匹配前面的子表达式任意次,等价于<code>{0,}</code> || <code>ab*c</code> 可匹配 ac、abc、abbc、abbbc等 |- | + || 量化 || 匹配前面的子表达式一次或多次,等价于<code>{1,}</code> || <code>ab+c</code> 可匹配 abc、abbc、abbbc等,但不能匹配 ac |- | <nowiki>|</nowiki> || 逻辑“或” || 将两个匹配条件进行逻辑“或”(Or)运算 || <code><nowiki>gray|grey</nowiki></code> 可匹配 gray 或 grey |- | ( ) || 组 || 括号内的表达式为“组”(group) || <code><nowiki>gr(a|e)y</nowiki></code> 等价于 <code><nowiki>gray|grey</nowiki></code> |- | ^ || 位置 || 匹配字符串起始位置,多行模式下也可匹配各行行首 || |- | $ || 位置 || 匹配字符串结束位置,多行模式下也可匹配各行行尾 || |- | \ || 转义 || 匹配特殊字符或被用作“元字符”的符号 || |} == 应用 == == 上手 == == 参考链接 == * [https://en.wikipedia.org/wiki/Regular_expression Wikipedia: Regular expression] * [https://baike.baidu.com/item/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F 百度百科:正则表达式]
该页面使用的模板:
模板:提示
(
查看源代码
)
返回至
正则表达式
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
分类索引
最近更改
随机页面
用户指南
编辑助手
工具
链入页面
相关更改
特殊页面
页面信息