3.14. Zastępowanie wszystkich dopasowań

Problem

Chcemy zastąpić wszystkie dopasowania do wyrażenia regularnego <before> tekstem docelowym «after».

Rozwiązanie

C#

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

string resultString = Regex.Replace(subjectString, "before", "after");

Jeśli korzystamy z wyrażenia regularnego wpisanego przez użytkownika końcowego, powinniśmy otoczyć to wywołanie statyczne kodem obsługującym ewentualne wyjątki:

string resultString = null;
try {
    resultString = Regex.Replace(subjectString, "before", "after");
} catch (ArgumentNullException ex) {
    // W roli wyrażenia regularnego, łańcucha do przetworzenia i tekstu docelowego
    // nie ...

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

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.