Метод Escape
Статический Regex.Escape добавляет
обратные слэши перед символами, которые в
шаблоне имеют особый смысл - точкой,
скобками и другими. Обратная операция -
Unescape.
Полученную строку подставляют в
Regex
как буквальный текст.
Синтаксис
string safe = Regex.Escape(text);
Пример
Давайте экранируем строку "a.b":
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string res = Regex.Escape("a.b");
Console.WriteLine(res);
}
}
Результат выполнения кода:
"a\.b"
Пример
Давайте найдём точку как символ, а не «любой знак»:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string pattern = Regex.Escape("a.b");
bool res = Regex.IsMatch("a.b", pattern);
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте экранируем строку "12345"
для поиска как текста:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
string pattern = Regex.Escape("12345");
Console.WriteLine(Regex.IsMatch("12345", pattern));
}
}
Результат выполнения кода:
True
Смотрите также
-
метод
Unescape,
который снимает экранирование -
метод
IsMatch,
которым проверяют экранированный шаблон -
Regex,
класс, где объявленEscape -
RegexParseException,
которое возникает при неверном шаблоне