Регулярное выражение на C# задается строковой константой. Это может быть обычная или @-константа. Чаще всего, следует использовать именно @-константу. Дело в том, что символ "\" широко применяется в регулярных выражениях как для записи escape-последовательностей, так и в других ситуациях. В С# работа с регулярными выражениями выглядит следующим образом:
Regex re = new Regex("образец", "опции");
MatchCollection me = re.Matches("строка для поиска");
iCountMatchs = me.Count;
re — это объект типа Regex. В конструкторе ему передается образец поиска и опции. Ниже представлена таблица, задающая различные варианты поиска.
Таблица 1.8 - Символы, используемые в регулярных выражениях
| Символ | Интерпретация |
| Категория: escape-последовательности | |
| \b | При использовании его в квадратных скобках соответствует символу "обратная косая черта" с кодом - \u0008 |
| \t | Соответствует символу табуляции \u0009 |
| \r | Соответствует символу возврата каретки \u000D |
| \n | Соответствует символу новой строки \u000A |
| \e | Соответствует символу escape \u001B |
| \040 | Соответствует символу ASCII, заданному кодом до трех цифр в восьмеричной системе |
| \x20 | Соответствует символу ASCII, заданному кодом из двух цифр в шестнадцатиричной системе |
| \u0020 | Соответствует символу Unicode, заданному кодом из четырех цифр в шестнадцатиричной системе |
| Категория: подмножества (классы) символов | |
| . | Соответствует любому символу, за исключением символа конца строки |
| [aeiou] | Соответствует любому символу из множества, заданного в квадратных скобках |
| [^aeiou] | Отрицание. Соответствует любому символу, за исключением символов, заданных в квадратных скобках |
| [0-9a-fA-F] | Задание диапазона символов, упорядоченных по коду. Так, 0-9 задает любую цифру |
| \w | Множество символов, используемых при задании идентификаторов - большие и малые символы латиницы, цифры и знак подчеркивания |
| \s | Соответствует символам белого пробела |
| \d | Соответствует любому символу из множества цифр |
| Категория: Операции (модификаторы) | |
| * | Итерация. Задает ноль или более соответствий; например, \w* или (abc)*. Аналогично, {0,} |
| + | Положительная итерация. Задает одно или более соответствий; например, \w+ или (abc)+. Аналогично, {1,} |
| ? | Задает ноль или одно соответствие; например, \w? или (abc)?. Аналогично, {0,1} |
| {n} | Задает в точности n соответствий; например, \w{2} |
| {n,} | Задает, по меньшей мере, n соответствий; например, (abc){2,} |
| {n,m} | Задает, по меньшей мере, n, но не более m соответствий; например, (abc){2,5} |
| Категория: Группирование | |
| (?<Name>) | При обнаружении соответствия выражению, заданному в круглых скобках, создается именованная группа, которой дается имя Name. Например, (?<tel> \d{7}). При обнаружении последовательности из семи цифр будет создана группа с именем tel |
| () | Круглые скобки разбивают регулярное выражение на группы. Для каждого подвыражения, заключенного в круглые скобки, создается группа, автоматически получающая номер. |







