通配符与正则表达式

2021-03-31 23:44:10 浏览数 (1)

通配符使用的地方:shell命令或者shell脚本中

正则表达式使用的地方:字符串处理时,一般有一般正则和perl正则

通配符: * 匹配所有:匹配0-多个任意的字符 ?匹配任意单个字符 []匹配括号内的一个字符 [!] 匹配不在括号内的一个字符,和正则中的^作用相似,都是反向选择 [a-z] 不区分大小写 [0-9] 匹配数字 [^0-9]出了数字 [[:upper:]] 纯大写 [[:lower:]] 纯小写 [[:alpha:]] 字母 [[:alnum:]] 字母和数字 [[:digit:]] 数字 . 点在通配符中没有意义

当要把以上的* ? 等当成参数或者字符串时,要限制shell不能当成通配符,这是需要加单引号或者| shell可以识别*

yum install vsftp* yum install vsftp* yum install 'vsftp*'

正则表达式:

* 前一个字符匹配零次或者任意多次 . 匹配出了换行符意外任意一个字符 ^ 匹配行首 以某个字符开头的行 $ 匹配行位 []匹配括号中的任意一个字符,但是只匹配一个字符 ?匹配前边的字符出现一次或者零次 匹配前边的字符出现1次或者多次 ^$ 匹配空行 < b:其后便的任意字符必须作为单词首部出现 > b:其前边的任意字符必须作为单词尾部出现 (ab)*匹配ab出现任意多次 1:引用第一个左括号以及对应的右括号所包含的内容

[^]匹配除括号以为的任意一个字符 转义符,取消特殊含义 {n}表示前边的字符恰好出现n次 {n,}表示前边的字符出现不小于n次 {n,m}表示前边的字符出现n到m次

egrep ([0-9]{1,3}.){3}[0-9]{1,3}

0 人点赞