MatchCollection.GetEnumerator Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece um enumerador iterado 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 objetos Match 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
em 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 Each
instrução ...Next
em Visual Basic) faz com que o mecanismo de expressão regular preencha a coleção conforme necessário usando uma avaliação lenta. Isso é análogo a chamar repetidamente o Regex.Match método e, em seguida, adicionar a 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.