BRE和ERE的區別
基本正則表達式(BRE)和擴展正則表達式(ERE)的區別僅僅是元字符(meta charactor)的區別
而已。
-
BRE: 只有^$.*[]是元字符
-
ERE: ^$.[]*+(){}?|都是元字符
BRE和ERE的元字符
參考:Shell正則表達式
示例
$echo "abcdefg" | grep 'a.+g' #不匹配任何字符串
$echo "abcdefg" | grep 'a.\+g' #匹配整個字符串
$echo "abcdefg" | grep -E 'a.+g' #使用擴展正則表達式,匹配整個字符串