4,3, 正则表达式字符集
| 字符 | 说明 |
|---|---|
| \[:alpha:] | 匹配任意一个字母,等价于A-Za-z |
| \[:alnum:] | 匹配任意一个字母或者数字,等价与A-Za-z0-9 |
| \[:digit:] | 匹配任意一个数字,等价于0-9 |
| \[:lower:] | 匹配任意一个小写字母,等价于a-z |
| \[:upper:] | 匹配任意一个大小写字母,等价于A-Z |
| \[:space:] | 匹配任意一个空白符,包括空格,制表符,换行符以及分页符 |
| \[:blank:] | 匹配空格和制表符 |
| \[:graph:] | 匹配任意一个看得见的可打印字符,不包括空白字符 |
| \[:print:] | 匹配任何一个可以打印的字符,包括空白字符,但是不包括控制字符,字符串结束符'\0',EOF文件结束符(-1) |
| \[:cntrl:] | 匹配任何一个控制字符,即ASCII字符集中的前32个字符,如:换行符,制表符等 |
| \[:punct:] | 匹配任何一个标点符号,例如"\[\]","{}"或者","等 |
| \[:xdigit:] | 匹配十六进制数字,即0-9a-fA-F |
示例:
bash
touch easyalee easyAlee "easy lee" "easy@lee" "easy8lee"
rm -fr easy [[: alpha:]]lee
rm -fr easy [[: lower:]]lee
rm -fr easy [[: upper:]]lee
rm -fr easy [[: digit:]]lee
rm -fr easy [[: space:]]lee
rm -fr easy [[: graph:]]lee
!note
通配符和正则表达式比较
1.通配符和正则表达式看起来有的像,不能混淆,可以简单理解为通配符只有,*,?,\[\],{}这4中
2.在通配符和正则表达式中有不一样的,通配符*为匹配0到多个字符,而正则为重复之前的一个或者多个字符,不能单独使用