有些字元在規則運算式中的意義與其他情境下迥然不同。舉例來說,在規則運算式中,圓點 (.) 是用來比對任何字元的特殊字元;在書寫文字中,半形句點 (.) 則是用來代表一個句子的結尾;而在數學運算式中,小數點 (.) 則是用來區分一個數字的整數部分和小數部分。
規則運算式會先依照自身規則來解讀特殊字元:當它發現圓點時,會先用它來比對任何其他字元。
舉例來說,規則運算式「1.」將與下列字串達成比對:
- 11
- 1A
規則運算式「1.1」將與下列字串達成比對:
- 111
- 1A1
如果您提供 IP 位址是為了當做規則運算式,可能就無法獲得預期的結果。舉例來說,規則運算式「0.0.0.0」將與下列字串達成比對:
- 0102030
- 0a0b0c0
為了指示規則運算式將原情境下的圓點視為 IP 位址各部分的分隔符號,而不要視為用來比對任何其他字元的特殊字元,您必須加上一個符號,也就是反斜線 (\)。當規則運算式發現反斜線 (\) 時,就會知道應該按字面解讀緊接在後的字元。因此,用來比對 IP 位址「0.0.0.0」的規則運算式應為:
0\.0\.0\.0
請使用反斜線 (\) 來逸出任何特殊字元,以確保規則運算式按字面解讀該字元,例如:
- \\ (逸出反斜線)
- \[ (逸出方括號)
- \{ (逸出大括號)
- \. (逸出圓點)