【shell】grep使用正则表达式
要求如下:
有一些具有固定格式的数字, 如下:
031-723-2328
12345678
(234)-001-8932
123-345-1234
5761234
(234-777-1234
复制代码
条件:
1.> 长度为7的数字
2.> 由 3,3,4 长度组成, 并由 - 字符进行分割的
3.> 第一组数字由一对小括号包围起来的, 但是必须成对出现
要求的结果是:
031-723-2328
(234)-001-8932
123-345-1234
5761234
第一个条件可以用 ^[0-9]{7}$来表示
第二个条件可以用 ^[0-9]{3}-[0-9]{3}-[0-9]{4}$ 来表示
第三个条件可以用^([0-9]\+)来表示
注意:在使用的时候,很多字符需要转义。
命令如下:
[root]$ cat grepMulti.txt | grep '^[0-9]\{3\}-[0-9]\{3\}-[0-9]\{4\}$\|^[0-9]\{7\}$\|^([0-9]\+)' 031-723-2328 (234)-001-8932 123-345-1234 5761234
浙公网安备 33010602011771号