MatchCollection.GetEnumerator Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia moduł wyliczający, który iteruje po kolekcji.
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
Zwraca
Obiekt, który zawiera wszystkie Match obiekty w obiekcie MatchCollection.
Implementuje
Wyjątki
Wystąpił limit czasu.
Uwagi
Zamiast wywoływać metodę GetEnumerator w celu pobrania modułu wyliczającego, który umożliwia iterację po Match obiektach w kolekcji, należy użyć konstrukcji iteracji grupy (takiej jak foreach
w języku C# i For Each
...Next
w Visual Basic) udostępnianym przez język programowania.
Iterowanie elementów członkowskich MatchCollection obiektu przy użyciu GetEnumerator metody (lub foreach
instrukcji w języku C# i For Each
instrukcji ...Next
w Visual Basic) powoduje, że aparat wyrażeń regularnych wypełnia kolekcję zgodnie z potrzebami przy użyciu leniwej oceny. Jest to analogiczne do wielokrotnego Regex.Match wywoływania metody, a następnie dodawania wynikowego MatchCollection dopasowania do obiektu. Z kolei aparat wyrażeń regularnych używa oceny bezpośredniej do wypełniania kolekcji jednocześnie po Count uzyskaniu dostępu do właściwości. Może to być znacznie droższa metoda tworzenia kolekcji niż leniwa ocena.
MatchCollection Ponieważ obiekt jest zwykle wypełniany przy użyciu oceny z opóźnieniem, próba przejścia do następnego elementu członkowskiego kolekcji może zgłosić RegexMatchTimeoutException wyjątek. Ten wyjątek można zgłosić, jeśli wartość limitu czasu dla pasujących operacji jest obowiązująca, a próba znalezienia następnego dopasowania przekracza ten interwał limitu czasu.