linux中括弧
⑴ linux菜鳥求助sed的批處理中關於括弧的問題
一般的情況,括弧 ( ) 和 { } 前面都要加轉義 \,包括很多量詞如 + 也要轉義
可以使用 sed的 -r選項,就不用加轉義了
-r :sed 的動作支持的是延伸型正規表示法的語法。(默認是基礎正規表示法語法)
⑵ linux命令里的中括弧什麼意思
[ ] 是test的簡寫,它等同於test命令,用於比較信息。
⑶ linux中正則匹配*和^的區別在哪裡
一、小括弧()、中括弧[]、大括弧的區別
1>. 小括弧():匹配小括弧內的字元串,可以是一個,也可以是多個,常跟「|」(或)符號搭配使用,是多選結構的
示例1:string name = "way2014"; regex:(way|zgw) result:結果是可以匹配出way的,因為是多選結構,小括弧是匹配字元串的
示例2:string text = "123456789"; regex:(0-9)result:結果是什麼都匹配不到的,它只匹配字元串"0-9"而不是匹配數字, [0-9]這個字元組才是匹配0-9的數字
2>.中括弧[]:匹配字元組內的字元,比如咱們常用的[0-9a-zA-Z.*?!]等,在[]內的字元都是字元,不是元字元,比如「0-9」、「a-z」這中間的「-」就是連接符號,表示範圍的元字元,如果寫成[-!?*(]這樣的話,就是普通字元
示例1: string text = "1234567890"; regex:[0-9] result:結果是可以匹配出字元串text內的任意數字了,像上邊的【或符號「|」在字元組內就是一個普通字元】
示例2:string text = "a|e|s|v"; regex:[a|e|s] result:結果就是匹配字元a、e、|三個字元,這個跟(a|e|s)有區別的,區別就是(a|e|s)匹配的是a、e、s三個字元的隨意一個,三個中的任意一個,這是的|是元字元
3>.大括弧{}:匹配次數,匹配在它之前表達式匹配出來的元素出現的次數,{n}出現n次、{n,}匹配最少出現n次、{n,m}匹配最少出現n次,最多出現m次