C++Builder
  Начало   Форум   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: boost/regex регулярные выражения - как сделать?  (Прочитано 1665 раз)
direk
Участник


Сказали спасибо: +6/-0
Offline

Сообщений: 79


boost/regex регулярные выражения - как сделать?
« : 19 Сентябрь 2013, 17:42:26 »

Пользовался boost/regex для удаления всех тегов из HTML:

boost::wregex xRegEx(L"<.>");


А теперь назрела потребность  удалять теги изберательно. Тоесть, из

     Терминатор 1984
     The Terminator, 108 мин
     Великобритания... реж. Джеймс Кэмерон
     
(фантастика, боевик)
     


должно остатся

Терминатор 1984
     The Terminator, 108 мин
     Великобритания... реж. Джеймс Кэмерон
     (фантастика, боевик)
     


каким способом можно оставить только одну конкретную гиперссылку, а остальные теги удалить...
Находил что-то в нете, ну вот при попытке понять как сделать это в регулярке шарики за ролики заходят.

Помогите на этом примере, а дальше постараюсь сам разобратся....
Записан
volvo877
Глобальный модератор


Сказали спасибо: +736/-1
Offline

Сообщений: 891


Re: boost/regex регулярные выражения - как сделать?
« Ответ #1 : 19 Сентябрь 2013, 19:02:14 »

Не знаю, насколько boost::wregex совместим с тем, которым пользуюсь я, но выражение
Код:
()|()

(это без экранирования символов, учти, обратные слэши надо еще экранировать при использовании в С++) выбирает именно то, что тебе нужно:
Записан
direk
Участник


Сказали спасибо: +6/-0
Offline

Сообщений: 79


« Ответ #2 : 19 Сентябрь 2013, 21:44:49 »

Большое спасибо!!!

В RAD XE3 все прекрасно работает 
Строка в виде

boost::wregex xRegEx(L"()|()");

как Вы и говорили.

Уже есть от чего отталкиватся, но пробую понять, как оно работает и получается очень со скрипом   
 Все-таки регулярные выражения это наверное не мое...
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  




....

Powered by SMF 1.1.21 | SMF © 2025, Simple Machines
Страница сгенерирована за 0.034 секунд. Запросов: 21.