通知

Duet AI 現已更名為 Google Workspace 專用 Gemini。瞭解詳情

規則運算式的範例

下列範例說明如何使用與建構簡單規則運算式。每個範例皆包含要比對的文字類型、一或多個比對該文字的規則運算式,以及說明使用特殊字元和格式的注意事項。

如需更多操作說明及指南,請另行參閱「規則運算式使用指南」、RE2 語法,以及「設定內容規範規則」。

重要事項:我們僅支援 RE2 語法,這種語法與 PCRE 稍有不同。規則運算式依預設必須區分大小寫。

注意:雖然以下例子可做為複雜運算式的入門範例,但如要比對單一字詞,建議您使用「內容規範」或「不當內容」設定。

僅比對完全相符的詞組
使用範例 比對 stock tips 這個詞組。
規則運算式範例 範例 1:(\W|^)stock\stips(\W|$)

範例 2:(\W|^)stock\s{0,3}tips(\W|$)

範例 3:(\W|^)stock\s{0,3}tip(s){0,1}(\W|$)
注意事項
  • \W 會比對字母、數字或底線以外的任何字元,並且讓規則運算式無法比對詞組前後的字元。
  • 在範例 2 中,\s 會比對空格字元,{0,3} 表示在 stocktip 之間會有 0 到 3 個不等的空格。
  • ^ 會比對新行的開頭,允許規則運算式比對新行開頭的詞組,該詞組前方沒有其他字元。
  • $ 會比對行的結尾,允許規則運算式比對行結尾的詞組,該詞組後方沒有其他字元。
  • 在範例 3 中,(s) 會比對字母 s,而 {0,1} 表示該字母會在 tip 後面出現 0 次或 1 次,因此規則運算式會比對 stock tipstock tips。您也可以使用 ? 字元取代 {0,1}

比對清單中的字詞或詞組
使用範例 比對下列清單中的字詞或詞組:
  • baloney
  • darn
  • drat
  • fooey
  • gosh darnit
  • heck
規則運算式範例 (?i)(\W|^)(baloney|darn|drat|fooey|gosh\sdarnit|heck)(\W|$)
注意事項
  • (...) 為所有的字詞建立群組,因此,\W 字元類別適用於括弧內所有的字詞。

  • (?i) 會讓內容在比對時區分大小寫。

  • \W 會比對字母、數字或底線以外的任何字元,並且讓規則運算式無法比對清單所列字詞或詞組前後的字元。

  • ^ 會比對新行的開頭,允許規則運算式比對新行開頭的字詞,該字詞前方沒有其他字元。

  • $ 會比對行的結尾,允許規則運算式比對行結尾的字詞,該字詞後方沒有其他字元。

  • | 表示「或」,因此規則運算式會比對清單中的任一字詞。

  • \s 會比對空格字元。使用此字元可將詞組中的字隔開。

比對含有其他拼寫方式或特殊字元的字詞

使用範例

 

比對 fast cash 這個字詞以及一些垃圾訊息散布者常用的混碼 (obfuscation),例如:
  • f@st c@sh
  • f@$t c@$h
  • fa$t ca$h
規則運算式範例

f[a4@][s5\$][t7] +c[a4@][s5\$]h

注意事項
  • 由於未加入 \W,因此其他字元會顯示在 fast cash 變體字的前方或後方,規則運算式仍會在這類文字中比對 fast cash,例如:

Fast cash!! or ***f@st ca$h***

  • [a4@] 會比對字詞的第二個字元位置中的 a、4 或 @ 字元,這些字元代表垃圾訊息散布者用來規避簡要文字比對的常見字母。

比對特定網域的任何電子郵件地址
使用範例 比對 yahoo.comhotmail.comgmail.com 網域的任何電子郵件地址。
規則運算式範例 (\W|^)[\w.\-]{0,25}@(yahoo|hotmail|gmail)\.com(\W|$)
注意事項
  • \W 會比對字母、數字或底線以外的任何字元,並且讓規則運算式無法比對電子郵件地址前後的字元。
  • ^ 會比對新行的開頭,允許規則運算式比對新行開頭的電子郵件地址,該電子郵件地址前方沒有其他字元。
  • $ 會比對行的結尾,讓規則運算式比對行結尾的電子郵件地址,該電子郵件地址後方沒有任何字元。
  • [\w.\-] 會比對任何文字字元 (a-z、A-Z、0-9 或底線)、英文句號或連字號,這些是電子郵件地址的第一部分最常用的有效字元。\- (表示連字號) 必須位於方括號內的清單結尾處。
  • 英文破折號和句號前方的「\」會「逸出」這些字元,換句話說,「\」表示英文破折號和句號本身並不是規則運算式的特殊字元,不需要在方括號內逸出英文句號。
  • {0,25} 表示有 0 到 25 個前述字元集的字元,會出現在 @ 這個符號前方。在規則運算式中,內容規範電子郵件設定可以為每個字元集比對多達 25 個字元。
  • (...) 格式可用以建立網域群組,而分隔網域的 | 字元表示「或」。

比對範圍內的任何 IP 位址
使用範例 比對 192.168.1.0192.168.1.255 之間的任何 IP 位址。
規則運算式範例 範例 1:192\.168\.1\.
範例 2:192\.168\.1\.\d{1,3}
注意事項
  • 每個英文句號前方的「\」會「逸出」句號,換句話說,「\」表示英文句號本身並不是規則運算式的特殊字元。
  • 在範例 1 中,由於最後一個英文句號後面沒有任何字元,因此不論後接任何數字,規則運算式都會比對所有開頭為 192.168.1. 的 IP 位址。
  • 在範例 2 中,\d 會在最後一個英文句號後面,比對 09 之間的任何數字,而 {1,3} 表示最後一個英文句號後面會有 1 到 3 位數字,因此規則運算式會比對任何開頭為 192.168.1. 的完整 IP 位址。此外,這個規則運算式也會比對無效的 IP 位址,例如 192.168.1.999

比對按英文字母順序排序的格式
使用範例 比對貴公司的訂購單號碼。此號碼有各種可能的格式,例如:
  • PO nn-nnnnn
  • PO-nn-nnnn
  • PO# nn nnnn
  • PO#nn-nnnn
  • PO nnnnnn
規則運算式範例 (\W|^)po[#\-]{0,1}\s{0,1}\d{2}[\s-]{0,1}\d{4}(\W|$)
注意事項
  • \W 會比對字母、數字或底線以外的任何字元,並且讓規則運算式無法比對數字前後的字元。
  • ^ 會比對新行的開頭,允許規則運算式比對新行開頭的數字,該數字前方沒有其他字元。
  • $ 會比對行的結尾,允許規則運算式比對行結尾的數字,該數字後方沒有其他字元。
  • [#\-] 會比對字母 po 後面的井字號或連字號,而 {0,1} 表示其中一個字元會出現 0 或 1 次。\- (表示連字號) 必須位於方括號內的清單結尾處。
  • \s 會比對空格,而 {0,1} 表示空格會出現 0 或 1 次。
  • \d 會比對 0 到 9 之間的任何數字,而 {2} 表示數字中的這個位置必須恰有 2 個數字。

 

這對您有幫助嗎?

我們應如何改進呢?
搜尋
清除搜尋內容
關閉搜尋
主選單
10056946410892069507
true
搜尋說明中心
true
true
true
true
true
73010
false
false