1000 20 nan 1001 21 nv 1002 23 Nan//忽略大小写进行匹配并显示行号
grep -ni 'nan' test.txt 1:1000 20 nan 3:1002 23 Nan
grep -ni 'nan' test.txt 2:1001 21 nv
Re | 含义 |
^word | 待匹配的字符串(word)在行首! 如:grep ‘^1000‘ test.txt 返回:1000 20 nan |
word$ | 待匹配的字符串(word)在行末! 如:grep ‘nv$‘ test.txt 返回:1001 21 nv |
. | 代表任意一个字符,一定是一个任意字符! 搜寻的字符串可以是 (eve) (eae) (eee) (e e), 但不能仅有(ee) !亦 即e 与e 中间一定仅有一个字符,而空格符也是字符! 如:grep ‘n.n‘ test.txt 返回:1000 20 nan |
\ | 转义字符,特殊字符如 ‘ { } 如:grep -n \‘ test.txt 匹配含有单引号‘ 的那一行! |
* | 重复零个或多个的前一个RE 字符,注意*号前面一定要有字符 如:grep ‘n*‘ test.txt 返回:1000 20 nan 1001 21 nv 1002 23 Nan |
\{n,m\} | 连续n 到m 个的前一个RE 字符 若为\{n\} 则是连续n 个的前一个RE 字符, 若是\{n,\} 则是连续n 个以上的前一个RE 字符! |
[ ] | 字符集合的RE 特殊字符的符号 [abc]:表示匹配a或者b或者c [a-z]:表示匹配a,b,c,...z这26个字母中任何一个 [^a-z]:表示字符串的开头只要不是小写字母a-z,则都能匹配成功 [a-z$]:表示字符串的结尾只要是小写字母a-z,则都能匹配成功 |
Re | 含义 |
+ | 重复『一个或一个以上』的前一个RE 字符 如:egrep -n ‘go+d‘ regular_express.txt 则:(god) (good) (goood)等会匹配成功 |
? | 『零个或一个』的前一个RE 字符 如:egrep -n ‘go?d‘ regular_express.txt 则:(gd) (god)等会匹配成功 |
| | 用或( or )的方式找出数个字符串 如:egrep -n ‘gd|good‘ regular_express.txt 则:匹配gd 或good 这两个字符串 |
() | 找出『群组』字符串 如:egrep -n ‘g(la|oo)d‘ regular_express.txt 则:匹配(glad) 或(good) 这两个字符串 |
原文:http://blog.csdn.net/wzgang123/article/details/40660621