(..|. .. .|..) 中正規表示式運算子的順序
( 中正規表示式運算符的順序..|. .. .|..) 遵循從左到右的優先順序。這意味著第一個匹配的選項將成為結果,而其他選項將不會被評估。
此行為是非確定性有限自動機 (NFA) 正規表示式的典型行為。有關詳細說明,請參閱regex-expressions.info 上的「Alternation」頁面。
需要注意的是,RegexOptions.RightToLeft 標誌僅影響正規表示式引擎檢查輸入字串的方向,而不影響順序
例如,使用正規表示式(aaa|bb|a ),將“bbac”與Regex.Match 匹配會返回“bb”,因為“a”替代項出現在“bb”之後。但是,Regex.Matches 將返回“bb”和“a”。
此外,在非錨定替代組中,替代項的順序很重要。例如,(a|aa|aaa) 符合「abbccaa」將符合每個「a」字元。但是,一旦添加了單字邊界,順序就變得無關緊要,如本正則表達式演示所示。
以上是正規表示式運算子的順序如何影響交替組 (..|. .. .|..) 中的匹配?的詳細內容。更多資訊請關注PHP中文網其他相關文章!