交替建構
更新:2007 年 11 月
下表列出修改規則運算式以允許二選一比對的特殊字元。
交替建構 |
定義 |
---|---|
| |
比對任何一個由 | (分隔號) 字元分開的詞彙,例如 cat|dog|tiger。最左邊比對成功。 |
(?(expression)yes|no) |
假如運算式於這個位置比對,就比對 "yes" 部分,否則就比對 "no" 部分。"no" 部分可以省略。運算式可以是任何有效的子運算式,但是它會變為無寬度的判斷提示,因此這個語法相當於 (?(?=expression)yes|no)。請注意,如果運算式是命名群組的名稱或擷取的群組編號,交替建構會被解譯為擷取測試 (說明在本表格的下一列)。若要避免這些案例中的混淆,您可以明確地詳細說明 (?=expression) 的內部。 |
(?(name)yes|no) |
假如命名的擷取字串具有相符的條件,就比對 "yes" 部分,否則就比對 "no" 部分。"no" 部分可以省略。如果指定的名稱沒有對應到用於這個運算式的擷取群組之名稱或編號,交替建構會被解譯為運算式測試 (描述在本表格的上一列)。 |