3.11. Iteracyjne przeszukiwanie wszystkich dopasowań

Problem

W poprzedniej recepturze przedstawiono sposób wielokrotnego stosowania wyrażenia regularnego dla łańcucha celem uzyskania listy dopasowań. Tym razem chcemy iteracyjnie przeszukać wszystkie dopasowania we własnym kodzie.

Rozwiązanie

C#

Jeśli planujemy przetworzyć niewielką liczbę łańcuchów z wykorzystaniem tego samego wyrażenia regularnego, możemy posłużyć się wywołaniem statycznym:

Match matchResult = Regex.Match(subjectString, @"\d+");
while (matchResult.Success) {
    // Tutaj możemy przetworzyć dopasowanie reprezentowane przez obiekt matchResult.
    matchResult = matchResult.NextMatch();
}

Jeśli planujemy użyć tego samego wyrażenia regularnego dla dużej liczby łańcuchów, powinniśmy skonstruować ...

Get Wyrażenia regularne. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.