MatchCollection.GetEnumerator Método

Definição

Fornece um enumerador iterado por meio da coleção.Provides an enumerator that iterates through the collection.

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

Retornos

IEnumerator

Um objeto que contém todos os objetos Match dentro do MatchCollection.An object that contains all Match objects within the MatchCollection.

Implementações

Exceções

Ocorreu um tempo limite.A time-out occurred.

Comentários

Em vez de chamar o GetEnumerator método para recuperar um enumerador que permite iterar os Match objetos na coleção, você deve usar a construção de iteração de grupo (como foreach em C# e For Each ...NextInstead of calling the GetEnumerator method to retrieve an enumerator that lets you iterate through the Match objects in the collection, you should use the group iteration construct (such as foreach in C# and For EachNext no Visual Basic) fornecido pela linguagem de programação.in Visual Basic) provided by your programming language.

Iterar os membros do MatchCollection objeto usando o GetEnumerator método (ou a foreach instrução em C# e a For Each instrução... Next em Visual Basic) faz com que o mecanismo de expressão regular preencha a coleção de acordo com a necessidade de uma base de avaliação lenta.Iterating the members of the MatchCollection object using the GetEnumerator method (or the foreach statement in C# and the For Each...Next statement in Visual Basic) causes the regular expression engine to populate the collection on an as needed basis using lazy evaluation. Isso é análogo a chamar repetidamente o Regex.Match método e, em seguida, adicionar a correspondência resultante ao MatchCollection objeto.This is analogous to repeatedly calling the Regex.Match method, and then adding the resulting match to the MatchCollection object. Por outro lado, o mecanismo de expressões regulares usa a avaliação direta para popular a coleção todas de uma vez quando a Count propriedade é acessada.In contrast, the regular expression engine uses direct evaluation to populate the collection all at once when the Count property is accessed. Isso pode ser um método muito mais caro de criar a coleção do que a avaliação lenta.This can be a much more expensive method of building the collection than lazy evaluation.

Como o MatchCollection objeto geralmente é preenchido usando a avaliação lenta, tentar navegar até o próximo membro da coleção pode gerar uma RegexMatchTimeoutException exceção.Because the MatchCollection object is generally populated by using lazy evaluation, trying to navigate to the next member of the collection may throw a RegexMatchTimeoutException exception. Essa exceção pode ser gerada se um valor de tempo limite para operações de correspondência estiver em vigor e a tentativa de encontrar a próxima correspondência exceder esse intervalo de tempo limite.This exception can be thrown if a time-out value for matching operations is in effect, and the attempt to find the next match exceeds that time-out interval.

Aplica-se a