Экранирование символов патерна в рег.выражениях с#

iDnx

Client
Регистрация
06.06.2013
Сообщения
129
Благодарностей
104
Баллы
43
Перед искомым тестом есть: var=\"
После искомого текста: \"
Искомое - цифры: \d+
Рег. выражение работающее в конструкторе: (?<=var=\\")\d+(?=\\")

Как правильно заэкранировать для использования в коде c#?

Руками: (?<=var=\\\")\\d+(?=\\\")
Экранирование методом Regex.Escape: \(\?<=var=\\\\"\)\\d\+\(\?=\\\\"\)
С помощью онлайн сервиса: (?<=var=\\\\\")\\d+(?=\\\\\")
Ни один из вариантов не находит :(
 

Irbis

Client
Регистрация
02.03.2014
Сообщения
195
Благодарностей
120
Баллы
43
Последний находит.
Код:
string text = "var=\\\"100\\\"";


Console.WriteLine(text);


Regex r = newRegex("(?<=var=\\\\\")\\d+(?=\\\\\")");


Console.WriteLine(r.IsMatch(text));


Console.WriteLine(r.Match(text));
 
  • Спасибо
Реакции: iDnx

iDnx

Client
Регистрация
06.06.2013
Сообщения
129
Благодарностей
104
Баллы
43
Топик можно закрывать.
Рабочий вариант: (?<=var=\\\\\")\\d+(?=\\\\\")

Irbis, спасибо. Была ошибка в коде :-)
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)