Экранирование
Запись \. в шаблоне находит точку
в тексте, а не «любой символ». В verbatim-строке
@"..." пишут один \.
Готовое экранирование даёт
Regex.Escape.
Синтаксис
Regex.IsMatch(text, @"\.");
Пример
Давайте найти точку в числе:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
bool res = Regex.IsMatch("1.5", @"\d\.\d");
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте отличить \. от .:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
bool dot = Regex.IsMatch("a.b", @".");
bool literal = Regex.IsMatch("a.b", @"\.");
Console.WriteLine(dot + " " + literal);
}
}
Результат выполнения кода:
True True
Пример
Давайте экранировать скобки:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
bool res = Regex.IsMatch("(abc)", @"\(abc\)");
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Смотрите также
-
Regex.Escape,
автоматическое экранирование текста -
любой символ,
метасимвол . -
группа,
скобки как захват -
Regex,
класс поиска