生信喵 发表于 2022-7-1 16:40:05

正则表达式

一、正则表达式
       正则表达式,又称规则表达式,模式匹配。(英语:Regular Expression,在代码中常简写为regex、regexp 或 RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
       许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在 Perl 中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由 Unix 中的工具软件(例如 sed和 grep)普及开的。正则表达式通常缩写成“regex”,单数有 regexp、regex,复数有 regexps、regexes、regexen。
       在线测试工具:https://tool.oschina.net/regex/
       正则表达式的“公式”也常常叫做模式,是一个匹配某字符串的模板。所以,也叫做模式匹配。模式匹配在平时使用中我们其实都找有过接触。最常见的例子就是搜索引擎。我们在搜索框内输入关键字,就会给我们返回很多包含这个关键字的结果,其实,搜索引擎利用的就是正则表达式。在生物数据分析中,也会大量使用正则表达式。例如,从大量序列中,挑选出满足某种固定模式的序列等。或者从生物软件非常冗余的结果中提取出,重要的信息。

二、常用模式匹配
       在系统了解正则表达式之前,其实很多人已经使用过正则表达式,例如通配符就是最常用的一种模式匹配符号。例如星号(*)代表匹配零个或多个字符,问号(?)代表匹配单个字符,中括号内加上数字代表匹配 0~9 之间的单个数字的字符,而中括号内加上字母则是代表匹配 a、b、c 三个字符中的任意一个字符。Linux 系统中的通配符及含义如下表所示。

通配符 含义
* 任意字符
? 单个任意字符
单个小写字母
单个大写字母
单个字母
单个数字
[[:alpha:]] 任意字母
[[:upper:]] 任意大写字母
[[:lower:]] 任意小写字母
[[:digit:]] 所有数字
[[:alnum:]] 任意字母加数字
[[:punct:]] 标点符号


三、正则表达式图
      
常用的转义字符有四种
       反斜杠\,双引号"", 反引号‘‘, 单引号''
页: [1]
查看完整版本: 正则表达式