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

  • Автор темы Автор темы iDnx
  • Дата начала Дата начала

iDnx

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

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

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


Console.WriteLine(text);


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


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


Console.WriteLine(r.Match(text));
 
  • Спасибо
Реакции: iDnx
Топик можно закрывать.
Рабочий вариант: (?<=var=\\\\\")\\d+(?=\\\\\")

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

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