|
发表于 2022-7-1 16:40:05
|
查看: 1171 |
回复: 0
一、正则表达式
正则表达式,又称规则表达式,模式匹配。(英语:Regular Expression,在代码中常简写为regex、regexp 或 RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在 Perl 中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由 Unix 中的工具软件(例如 sed和 grep)普及开的。正则表达式通常缩写成“regex”,单数有 regexp、regex,复数有 regexps、regexes、regexen。
在线测试工具:https://tool.oschina.net/regex/
正则表达式的“公式”也常常叫做模式,是一个匹配某字符串的模板。所以,也叫做模式匹配。模式匹配在平时使用中我们其实都找有过接触。最常见的例子就是搜索引擎。我们在搜索框内输入关键字,就会给我们返回很多包含这个关键字的结果,其实,搜索引擎利用的就是正则表达式。在生物数据分析中,也会大量使用正则表达式。例如,从大量序列中,挑选出满足某种固定模式的序列等。或者从生物软件非常冗余的结果中提取出,重要的信息。
二、常用模式匹配
在系统了解正则表达式之前,其实很多人已经使用过正则表达式,例如通配符就是最常用的一种模式匹配符号。例如星号(*)代表匹配零个或多个字符,问号(?)代表匹配单个字符,中括号内加上数字[0-9]代表匹配 0~9 之间的单个数字的字符,而中括号内加上字母[abc]则是代表匹配 a、b、c 三个字符中的任意一个字符。Linux 系统中的通配符及含义如下表所示。
通配符 | 含义 | * | 任意字符 | ? | 单个任意字符 | [a-z] | 单个小写字母 | [A-Z] | 单个大写字母 | [a-Z] | 单个字母 | [0-9] | 单个数字 | [[:alpha:]] | 任意字母 | [[:upper:]] | 任意大写字母 | [[:lower:]] | 任意小写字母 | [[:digit:]] | 所有数字 | [[:alnum:]] | 任意字母加数字 | [[:punct:]] | 标点符号 |
三、正则表达式图
常用的转义字符有四种
反斜杠\, 双引号"", 反引号‘‘, 单引号''
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
|