大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

Linux命令中正则表达式的示例分析-创新互联

小编给大家分享一下Linux命令中正则表达式的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联主要从事网站建设、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务涵江,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

命令中的正则表达式

 如果要在命令输出或文本中筛选内容时使用模糊查找,就需要使用正则表达式。正则表达式是一套由多个元字符组成的模糊查找模式,使用正则表达式可以快速查找和定位文本中指定的内容。

 1、单字符匹配符.


 正则表达式主要由一些元字符和匹配模式组成

单字符匹配符可以匹配任意单个字符,这个字符的功能和文件名匹配符中的?功能相同


 使用正则表达式查找文本,首先需要使用元字符组成一个查找模式


 (1)使用查找模式时,通常将其放入两个斜杠//中,然后再放入命令,例如要在一个文本中查找匹配模式/.i...../,可能选项就有:只要小写字母没有出现在行首,或行尾的最后有5个字符都能匹配


 2、单字符或字符串重复匹配符*


 用来匹配单个字符或者一个字符串序列的一次或者多次重复出现


 3、行首匹配符^


  用于在匹配中指示行首位置字符串或者模式,使用时需要将行首匹配符放在要匹配的字符串或模式的前面

例如对命令ls -1 使用行首匹配/^1/,结果都是以1开头的


 4、行尾匹配符$


 用于在文本的每一行的行尾匹配字符串或模式,使用时将行尾匹配符放在字符串或模式后面


 例如在文本中匹配所有行尾是love的行


  /love$/


 5、反斜杠屏蔽符\


 该符用来屏蔽一些特殊字符的特殊含义,常见的特殊字符可能是引用符号,注释符号,通配符和逻辑运算符等,下面列举一些特殊的符号


  注释、分隔符号:#、;等

引用符号:$、``、""等


  元字符:.、*、^、$、?、[]、\等


  逻辑运算符或操作符:||、&&等


 在命令中使用这些字符时,都要使用反斜杠将其特殊含义屏蔽

 例如使用乘法符号*做乘法运算,就要用反斜杠将其特殊含义屏蔽在做使用


  # expr 256 \* 256


 6、范围匹配符[]和排除范围匹配符[^]


 与文件名通配符中的范围匹配符用法基本相同

    (1)匹配单词love和Love:


  /[L]ove/


     (2)不匹配所有的字母:


  [^a-z]

 7、词首、词尾匹配符 \< 和 \>


 用于在单词开头和单词结尾匹配特定的字符或模式


  (1)例如要匹配以disc 为词首的文本,可以使用


  /\

    (2)要匹配以ment为词尾的文本,可以使用:


  /ment\>/


 8、重复次数匹配符"x\{\}"

    可以全精确匹配字符或字符串连续出现的次数或次数范围

(1)要匹配字母m出现次数为5次的文本,可以使用:


   /m\{5\}/


  (2)要匹配字母m出现次数至少5次的文本,可以使用:


   /m\{5,\}/


  (3)匹配字母m出现次数在5至10次的文本,可以使用:


   /m\{5,10\}/


 9、组合并使用正则表达式

 (1)在查找和筛选信息时,有时需要去除文本中的空行,由于空行没有任 何字符,可以使用行首,行尾匹配符匹配空行


  /^$/


 (2)有时一些文本为了看上去更加美观,会使用一种字符填充整行,可以使 用以下模式匹配这些行:


  /^.*$/


 (3)匹配以the或The开头的所有行


  /^[tT]he/


 (4)排除以the和The开头的所有行


  /^[^Tt]he/


 (5)匹配一个IP地址:

  /[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/

 (6)匹配一个6个字母组成的字符串,前两个字符是字母,中间两个字符是22 且最后两个字符是小写字母:


  [a-z]\{2\}22[a-z]\{2\}


 (7)要精确匹配单词love:

  /\/

以上是“Linux命令中正则表达式的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


本文名称:Linux命令中正则表达式的示例分析-创新互联
当前路径:http://dzwzjz.com/article/cooiis.html
在线咨询
服务热线
服务热线:028-86922220
TOP