4.16. 字符介绍——可选操作符
4.16 字符介绍——可选操作符
竖线(|) 元字符——元字符扩展集的一部分——允许你指定正则表达式的一个交集。
一行如果匹配这些正则表达式中的其中一个,那么它就将匹配这个模式。比如这个正则表达式:
UNIX|LINUX
将匹配包含字符串 “UNIX” 或字符串 “LINUX” 的行。
可以指定多于一个的可选项:
UNIX|LINUX|NETBSD
匹配这三个模式中任意一个的行将被 egrep 打印出来。
在 sed 里面缺乏交集元字符,因此你需要单独指定每个模式。比如,如果需要将多个类似的字符串统一为一个。下例中使用交集模式,sed是不支持的。
$ echo 'Sed is great! I like seed!' | sed 's/Sed|seed//g'
Sed is great! I like seed!
只能使用多个模式来替换。
$ echo 'Sed is great! I like seed!' | sed 's/Sed/sed/; s/seed/sed/'
sed is great! I like sed!
在下一节中,我们会学习分组操作,然后将学习这个元字符的额外例子。