Partilhar via


MatchCollection.GetEnumerator Método

Definição

Fornece um enumerador que itera por meio da coleção.

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

Um objeto que contém todos os Match objetos dentro do MatchCollection.

Implementações

Exceções

Ocorreu um tempo limite.

Comentários

Em vez de chamar o GetEnumerator método para recuperar um enumerador que permite iterar por meio dos Match objetos na coleção, você deve usar o constructo de iteração de grupo (como foreach em C# e For Each...Next no Visual Basic) fornecido pela linguagem de programação.

Iterar os membros do MatchCollection objeto usando o GetEnumerator método (ou a foreach instrução em C# e a For Eachinstrução ...Next no Visual Basic) faz com que o mecanismo de expressão regular preencha a coleção conforme necessário usando a avaliação lenta. Isso é análogo à chamada repetida do Regex.Match método e, em seguida, à adição da correspondência resultante ao MatchCollection objeto. Por outro lado, o mecanismo de expressão regular usa a avaliação direta para preencher a coleção de uma só vez quando a Count propriedade é acessada. Esse pode ser um método muito mais caro de compilação da coleção do que uma avaliação lenta.

Como o MatchCollection objeto geralmente é preenchido usando uma avaliação lenta, tentar navegar até o próximo membro da coleção pode gerar uma RegexMatchTimeoutException exceção. Essa exceção poderá ser gerada se um valor de tempo limite para operações correspondentes estiver em vigor e a tentativa de localizar a próxima correspondência exceder esse intervalo de tempo limite.

Aplica-se a