Я снова ударился о стену.
Как заменить escape-символы с помощью регулярных выражений?
Если символ табуляции (\ t) встречается более двух раз, я хочу заменить эти два или более вхождений на один \ t.
Например, если приходит \ t \ t \ t, я хочу заменить его только на \ t.
Как это сделать?
У меня возникла еще одна проблема, связанная с чтением текстового файла и применением к нему регулярных выражений.
Я использую C # для чтения текстового файла и для регулярных выражений.
Когда я открываю текстовый файл (файл с расширением txt), я получаю нормальный вид файла. Но когда я читаю тот же файл с помощью «textReader» и сохраняю его в строку, я получаю текст примерно так:
O K \ t \ t \ t \ t \ t \ tEmail:
k.o@gmail.com \ rТелефон: + 91
992 \ t \ r \ r \ краткий обзор опыта
Бизнес-аналитика и данные
склад конструктор с более чем 6
многолетний опыт работы в OLAP
Проект. Технологии \ rВнизу
список важных программных продуктов
и инструменты, с которыми я работал
с. \ г \ rSoftware
Продукты \ г \ а \ г \ aOperating
Системы: \ rWINDOWS NT, WINDOWS 2000,
UNIX \ rDatabase Management
Системы: \ rOracle 8i, Oracle 9i, Oracle
10g, SQL-Server 7.0, DB2 \ rSoftware
Пакеты: \ rVSS, ER Win, M1 \ rFourth
Язык генерации: \ rPL / SQL,
SQL * PLUS \ rTools &
Технологии: \ ROracle Warehouse
Builder 10.1.0.4.0, ORACLE 9i AS,
ORACLE Discoverer Отчеты Стадия данных
8.0, Fast Track 8.5, DB @ Cube, JavaScript, JSP, JDEV, BI BEANS, ASP,
ASP.NET, Ab
Initio \ г \ г \ а \ г \ а \ v \ г \ г \ fAssignments \ rThe
детали различных заданий
что я обработал, перечислены здесь,
в хронологическом порядке
заказ. \ r \ rName \ r \ aКаждые данные Dennison
Складирование \ г \ а \ г \ aClient \ г \ aAvery
Деннисон, он бросает вызов в проекте
должен кормить EDW из существующих
склады с данными в
агрегированный
level. \ r \ a \ r \ a \ r \ rName \ r \ aAOL BI
(Omniture) обряд команды. Проектирование,
кодирование и тестирование вместе с
координация с выездной командой.
\ r \ a \ r \ aTools & Technologies \ r \ aUnix
Платформа, Oracle 10g, Py. Не только
поставляя правильное требование, но
также производительность должна быть в
приемлемая * * тысяча пятьдесят-один
Диапазон. \ г \ а \ г \ а \ г \ г \ г \ г \ г \ г \ г \ г \ г \ г \ г \ RNAME \ г \ aAIW
События (ABSA) \ r \ a \ r \ aClient \ r \ aABSA,
Южная Африка \ r \ a \ r \ aP
Т.е. все экранирующие символы, такие как \ s, \ r, \ f, видны. Из-за этого регулярное выражение, которое работает с обычным текстом, не работает, когда я читаю тот же текст в строковую переменную.
Кто-нибудь знает, как решить эту проблему?
Спасибо
У меня есть еще один запрос. Я хочу сопоставить текст в конце строки. Я пытался использовать $ для этого. Например, чтобы соответствовать тексту, оканчивающемуся на «присваивание», я использовал регулярное выражение $. Он работал с обычным текстом. Но когда я запускаю этот regx для текста, переданного streamreader, это регулярное выражение не работает. Программа чтения потоковых данных выдает строки типа «Назначения» \ r \ r \ f. Как сопоставить конец строки или начало строки с этим видом текста?