命令中的正则表达式
如果要在命令输出或文本中筛选内容时使用模糊查找,就需要使用正则表达式。正则表达式是一套由多个元字符组成的模糊查找模式,使用正则表达式可以快速查找和定位文本中指定的内容。
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 为词首的文本,可以使用
//<disc/
新闻热点
疑难解答