| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Регулярные выражения |
| Автор: Lazin 14.6.2009, 12:53 |
| Добрый день. У меня возникла следующая проблема. Допусти есть массив char* data, содержащий текст. Я в нем ищу с помощью рег. выражения подстроку "blablabla$", то-есть моя подстрока всегда находится в самом конце строки. Затем, мне нужно удалить эту подстроку, для чего достаточно записать туда 0. Но, библиотеки регулярных выражений так не работают, к примеру boost::regex не позволяет изменить оригинальную строку, вместо этого boost::regex_replace копирует данные. Как можно это обойти? |
| Автор: zim22 14.6.2009, 13:11 |
я с бустом не работал, но: он случайно не возвращает итератор на начало/конец строки? можно было бы туда '\0' записать |
| Автор: jonie 14.6.2009, 19:17 |
| ну как минимум PCRE возвращает массив смещений, по которым элементарно поставить \0 |