shell编程----正则表达式

目录标题


正则表达式

linux shell以一串字符作为表达式向系统传达意思,元字符是用来阐释字符表达意义的字符,简言之,元字符就是描述字符的字符,它用于对字符表达式的内容,转换以及各中操作信息进行描述,正则表达式是由一串字符和元字符构成的字符串,正则表达式的主要功能是文本查询和字符串操作,它可以匹配文本的一个字符或字符集合。
在这里插入图片描述

基本的正则表达式元组副集合及意义

符号 意义
* 0个或多个在*字符之前的那个普通字符
. 匹配任意字符
^ 匹配行首,或后面字符串的非
$ 匹配行尾
[] 匹配字符集合
\ 转义符,屏蔽一个元字符的特殊意义
<> 精确匹配符号
{n} 匹配前面字符出现n次
{n,} 匹配前面字符至少出现n次
{n,m} 匹配前面字符出现n~m次
  1. “*”符号
      符号用于匹配前面一个普通字符的0次或多次重复,如: helo hello hellllo都可以由helo来匹配。
  2. “.”符号
      .用于匹配任意一个字符,如…73.可以匹配abc73y,zjy73i,并且“.”符号可以匹配一个空格,x b73e
  3. “^”字符
      用于匹配行首,表示行首的字符是后面的那个字符。如:cloud匹配以cloud开头它的行;^…86*表示行首的三个字符为任意字符,第4~6个字符为x86,第7个字符开始可以重复匹配6,匹配以abcx86开始字符行。
  4. “$”符号
       $符号匹配行尾,$符号放在匹配字符之后,与“^”符号的功能和作用都相反。如:micky$表示匹配micky结尾的所有行,匹配所有空行的表达式为^$
  5. “[]”符号
      []匹配字符集合,该符号支持穷举方法列出字符集合的所有元素,也支持使用“-”符号表示字符集合范围,表明字符集合范围从“-”左边字符开始,到“-”右边字符结束。如果要匹配任意一个数字,可以使用两种方法。例如:[0-9]或[0123456789],注意[b-d]中的表示取反的符号
  6. “\”符号
      “\”符号是转义符,用于屏蔽一个元字符的特殊意义,即以字面含义来解释“\”符号后面的元字符。如:.
  7. “<>”符号
      如:<the>表示精确匹配the这个单词,而不匹配包含the字符的单词,them、there等都不会匹配。
  8. “{}”符号
      “{}”符号与“”符号类似,都表示前一个字符的重复,但是,“”符号表示重复0次或任意多次,而“{}”符号可以指定重复次数,“{}”系列符号包括三种形式。
      {n}表示匹配前面字符出现n次
      {n,}表示匹配前面字符至少出现n次
      {n,m}表示匹配前面字符出现n~m次
发布了106 篇原创文章 · 获赞 1 · 访问量 2338

猜你喜欢

转载自blog.csdn.net/weixin_43384009/article/details/104317907