核心概念

regex · 正規表示式

/ REJ-eks /

正規表示式(regex)是一種小巧的「模式語言」,用來描述你要找的文字長什麼樣——然後批次地尋找、比對或取代它。你不再去搜某一個固定的詞,而是描述它的「形狀」:「一個數字,後面還跟著數字」,或者「任何看起來像電子郵件的東西」。

它精煉得令人驚喜。模式 \d+ 表示「一個或多個數字」;\w+ 表示「一個單字」;^ 錨定到一行的開頭,$ 錨定到結尾。幾個符號,就能替你省下一整個下午的手動尋找取代。

它也以「天書」著稱——一段密密麻麻的正規,看起來就像貓在鍵盤上走了一趟。訣竅是一小塊一小塊地拼出來、邊寫邊測,而不是試圖一口氣讀懂一長串。

\d{3}-\d{4}   # matches a phone like 555-1234
\w+@\w+\.\w+  # roughly matches an email address

兩個小模式:\d 是數字,\w 是單字字元,{3} 表示「正好三個」。

不同語言和工具的正規「方言」略有差異——拿不準時,就在線上正規演練場裡實測一下。

又稱
regexpregular expressionpattern matchinggrep