正则表达式 (用于查询数据) 积累
2020-06-08 16:52:13
1、正则表达式的特殊符号:[
$ grep -n '[[:lower:]]' 文件名
3、查找数字:
# grep -n '[[:digit:]]' 文件名
4、有关grep后面的参数说明
-a :将 binary 档案以 text 档案的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
示例:
$ grep -n 'the' regular_express.txt //查找含有“the”字符的行,显示出行号
$ grep -in 'the' regular_express.txt //查找含有“the”字符的行,不区分大小写,显示出行号
$ grep -vn 'the' regular_express.txt //反向查找,没有“the”字符的行才会输出在屏幕上
5、[]中包含的任意一个字符,只能是一个,字符组支持由连字符“ - ”来表示一个范围。当“ - ”前后构成范围时,要求前面字符的码位小于后面字符的码位。
[abc] :表示“a”或“b”或“c”
[0-9] :表示 0~9 中任意一个数字,等价于[0123456789]
[\u4e00-\u9fa5] :表示任意一个汉字
[^a1<] :表示除“a”、“1”、“<”外的其它任意一个字符
[^a-z] :表示除小写字母外的任意一个字符
2020-06-09 16:26:39
6、 ^word 表示带搜寻的字符串(word)在行首
word$ 表示带搜寻的字符串(word)在行尾
.(小数点) 表示 1 个任意字符
\ 表示转义字符,在特殊字符前加\会将特殊字符意义去除
* 表示重复 0 到无穷多个前一个 RE(正则表达式)字符
[list] 表示搜索含有 l,i,s,t 任意字符的字符串
[n1-n2] 表示搜索指定的字符串范围,例如[0-9] [a-z] [A-Z]等
[^list] 表示反向字符串的范围,例如[^0-9]表示非数字字符,
[^A-Z]表示非大写字符范围
\{n,m\} 表示找出 n 到 m 个前一个 RE 字符
\{n,\} 表示 n 个以上的前一个 RE 字符