MatchCollection.GetEnumerator 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供逐一查看集合的列舉值。
public:
virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator
傳回
物件,包含 Match 內的所有 MatchCollection 物件。
實作
例外狀況
備註
您不應該呼叫 GetEnumerator 方法來擷取列舉值,讓您逐一查看 Match 集合中的物件,而是應該使用群組反復專案建構 (,例如 foreach
C# 和 For Each
Next
... 中的 Visual Basic) 程式設計語言所提供的 。
使用 GetEnumerator C# For Each
方法 (或 foreach
Visual Basic 中的 ... Next
語句來逐一查看 物件的成員 MatchCollection ,) 會導致正則運算式引擎視需要使用延遲評估來填入集合。 這類似于重複呼叫 Regex.Match 方法,然後將產生的相符專案新增至 MatchCollection 物件。 相反地,正則運算式引擎會使用直接評估,在存取屬性時 Count 一次填入集合。 這可以是比延遲評估更昂貴的方式來建置集合。
MatchCollection因為物件通常會使用延遲評估來填入,所以嘗試流覽至集合的下一個 RegexMatchTimeoutException 成員可能會擲回例外狀況。 如果相符作業的逾時值生效,而且嘗試尋找下一個相符專案超過該逾時間隔,就會擲回這個例外狀況。
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應