8.2   grep和正则表达式

8.2.1   模式范围


定要抽取代码为4 8 4和4 8 3的城市位置,上一章中讲到可以使用[ ]来指定字符串范围,这
里用4 8开始,以3或4结尾,这样抽出4 8 4或4 8 3。


grep '48[34]' data.f


8.2.2   不匹配行首


如果要抽出记录,使其行首不是4 8,可以在方括号中使用^记号,表明查询在行首开始。


grep '^[^48]' data.f


8.2.3   设置大小写


grep '[Ss]ep' data.f |grep 483


8.2.4   匹配任意字符





grep 'A...D' data.f


8.2.5   日期查询


一个常用的查询模式是日期查询。先查询所有以 5开始以1 9 9 6或1 9 9 8结尾的所有记录。使用模式5 . . 1 9 9 [ 6 , 8 ]。这意味着第一个字符为5,后跟两个点,接着是1 9 9,剩余两个数字是6或8。
grep '5..199[6,8]' data.f


8.2.6   范围组合


必须学会使用[ ]抽取信息。假定要取得城市代码,第一个字符为任意字符,第二个字符在
0到5之间,第三个字符在0到6之间,使用下列模式即可实现。


grep '[0-9][0-5][0-6]' data.f