一、正则表达式
正则表达式,又称规则表达式,模式匹配。(英语: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:]] | 标点符号 |
三、正则表达式图
常用的转义字符有四种
反斜杠, 双引号"", 反引号‘‘, 单引号''
写在最后:有时间我们会努力更新的。大家互动交流可以前去论坛,地址在下面,复制去浏览器即可访问,弥补下公众号没有留言功能的缺憾。原地址暂未启用(bioinfoer.com)。
代码语言:javascript复制sx.voiceclouds.cn
有些板块也可以预设为大家日常趣事的分享等,欢迎大家来提建议。