| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > .NET для новичков > Регулярные выражения чтение из файла |
| Автор: bigbuka 10.6.2011, 20:36 | ||
| Есть файлик со списком регулярных выражений каждое в отдельной строке делаю System.IO.File.ReadAllLines() вызываю конструктор RegEx бросает exeception "Неправильный формат esc-последовательности \p{x}" После берем любую строчку из этого же файла вставляем в конструктор и все никакого exeception нету в чем магия? на всякий случай вот пример выражения
P.S. с кодировкой файла все ок |
| Автор: diadiavova 10.6.2011, 21:31 | ||||
Скорей всего в обратном слеше. Если ты в коде строку передаешь именно так, как показано в твоем примере, то есть
Тофактически у тебя создается строка без обратного слеша, поскольку он воспринимается как спецсимвол. В то же время, читая эту строку из файла ты передаешь ее как есть. А последовательность \P в регулярном выражении имеет собственное значение и за ней должно следовать выражение в фигурных скобках http://msdn.microsoft.com/ru-ru/library/az24scfc.aspx#character_escapes Если в коде шарпа текстовый литерал будет представлен так
То по идее должна выскочить та же ошибка. Если ты ищешь эту последовательность символов(\P), то в самой регулярке обратный слеш надо удвоить. |
| Автор: bigbuka 10.6.2011, 21:38 |
| одна голова хорошо а 2 лучше ) Спасибо огромное!)) |