MatchCollection.GetEnumerator Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje enumerátor, který iteruje prostřednictvím kolekce.
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
Návraty
Objekt, který obsahuje všechny Match objekty uvnitř MatchCollection.
Implementuje
Výjimky
Došlo k vypršení časového limitu.
Poznámky
Místo volání metody pro načtení výčtu GetEnumerator , který vám umožní iterovat Match objekty v kolekci, měli byste použít konstruktor iterace skupiny (například foreach
v jazyce C# a For Each
...Next
v Visual Basic) poskytované vaším programovacím jazykem.
Iterace členů objektu MatchCollection GetEnumerator pomocí metody (nebo foreach
příkazu v jazyce C# a For Each``Next
... v Visual Basic) způsobí, že modul regulárních výrazů naplní kolekci podle potřeby pomocí opožděného vyhodnocení. To je analogické k opakovanému volání Regex.Match metody a následné přidání výsledné shody k objektu MatchCollection . Naproti tomu modul regulárních výrazů používá přímé vyhodnocení k naplnění kolekce najednou při přístupu k Count vlastnosti. Může to být mnohem dražší metoda vytváření kolekce než opožděné vyhodnocení.
Vzhledem k tomu, že je MatchCollection objekt obecně naplněn pomocí opožděného vyhodnocení, může pokus o přechod na dalšího člena kolekce vyvolat RegexMatchTimeoutException výjimku. Tato výjimka může být vyvolán, pokud je platná hodnota časového limitu pro odpovídající operace a pokus o nalezení další shody překročí tento časový limit.