我今天查找正則表達式的時候,在論壇http://bbs.chinaunix.net/thread-3563161-1-1.html上看到一個grep匹配的問題。
line1=[RNC17];line2=[rnc17];name=RNC17;line3=RNC12345
問題1、為什麼grep -e \[$name\w*\] << "$line1"不對而grep -e \[$name\w*\] <<< "$line1"是正確的?
問題2、為什麼grep -e \[$name\w*\] <<< "$line1"匹配的僅僅是[
RNC17]裡邊的RNC17,而沒有兩邊的「[」和「]」?
問題3、為什麼grep -e \[$name\w*\] <<< "$line2"匹配的只是[rnc
17]裡邊的17兩個數字,並且沒有區分大小寫?
問題4、為什麼grep -e \[$name\w*\] <<< "$line2"的結果和grep -e "\[$name\w*\]" <<< "$line2"是不一樣的?