在匹配正則表達式時,我想從結果中排除noncapturing groups。我錯誤地認爲他們會被默認排除,因爲他們被稱爲非捕獲組。爲什麼Regex.Match在結果中包含非捕獲組?
由於某些原因,Regex.Match表現得好像我還沒有指定一個非捕獲組。嘗試在立即窗口中運行以下命令:
System.Text.RegularExpressions.Regex.Match("b3a",@"(?:\d)\w").Value
我希望得到的結果是
"a"
但它實際上是
"3a"
This question建議我看組,但只有結果中的一個組也是「3a」。它包含一個捕獲,也是「3a」。
這是怎麼回事? Regex是否被竊聽,還是有我需要設置的選項?
或'@ 「\ d(\ w)的」 匹配'並根據需要使用這些組。我發現更容易閱讀(雖然它可能會更慢,不知道) –