• 命令中的正则表达式


    使用文件名通配符模糊查找文件非常高效,而如果要在命令输出或文本中筛选内容时使用模糊查找,就需要使用正则表达式。

    正则表达式是一套由多个元字符组成的模糊查找模式,使用正则表达式可以快速查找和定位文本中指定的内容。

    Linux系统中许多工具都可以使用正则表达式,这些工具包括grep、awk、sed和vi等。

    正则表达式主要由一些元字符和匹配模式组成,常用的元字符和匹配模式介绍如下:

    1、单字符匹配符“.”

    单字符匹配符“.”可以匹配任何单个字符,这个字符的功能与文件名匹配符中的“?”功能相同。

    要使用正则表达式查找文本,首先需要使用元字符组成一个查找模式。与文件名通配符一样,查找模式由精确匹配字符和正则表达式的元字符组成。

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

    单字符或字符串重复匹配符“*”用来匹配单个字符或一个字符串序列的一次或多次重复出现,在匹配时可以是已经出现的字符或字符串的重复,也可以是没有出现过的字符或字符串的重复。

    3、行首匹配符“^”

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

    4、行尾匹配符“$”

    行尾匹配符“$”用于在文本的每一行的行尾匹配字符串或模式。由于其匹配的是行尾,因此在使用时应当将行尾匹配符放在匹配字符串或模式的后面。

    5、反斜杠屏蔽符“”

    与前面的文件名匹配符一样,反斜杠用来屏蔽一些特殊字符的特殊含义.

    常见的特殊字符可能是:

    注释/分隔符号:#  ;等

    引用符号:$   ``  “”等

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

    逻辑运算符和操作符:||   && 等

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

    同文件名通配符。

    7、词首、词尾匹配符“<”和 “>”

    8、重复次数匹配符 “{}”

    (1)要匹配字母m出现次数为5次的文本:

    [root@localhost test]# grep -n 'm{5}' re.txt

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

    [root@localhost test]# grep -n 'm{5,}' re.txt

    (3)匹配字母m出现5次到10次的文本:

    [root@localhost test]# grep -n 'm{5,10}' re.txt

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

    (1)0个或多个任意字符:   .*

    (2)空行: ^$

    (3)整行: ^.*$

    (4)匹配以the或The开头的所有行: ^[tT]he

    (5)匹配一个IP地址: [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}

    (6)精确匹配单词love: <love>

  • 相关阅读:
    CE工具里自带的学习工具--第三关
    CE工具里自带的学习工具--第二关
    CE工具里自带的学习工具--第一关
    双向链表
    双向循环链表
    单向循环链表
    单链表
    动手动脑———异常处理
    动手动脑——继承与多态
    类与对象——动手动脑
  • 原文地址:https://www.cnblogs.com/nufangrensheng/p/3461461.html
Copyright © 2020-2023  润新知