@Junior007

Regex регулярные выражения — как правильно?

Допустим, у меня есть строка вида:
std::string str = "<html><body><a href=\"url\">name link</a><a href=\"url\">name link</a></body></html>";


Как с помощью регулярных выражений получить содержимое ссылки?
С самой регуляркой вроде нет проблем:
std::string str = "(.*)(<a href=\">)(\\w*)(<\/a>)";


Но можно ли в C++ получить содержимое ссылки? Т.е. позицию в строке, к примеру.
В php, к примеру, это реализуемо.

Или для таких целей нужно юзать std::string::find?
  • Вопрос задан
  • 260 просмотров
Решения вопроса 1
romy4
@romy4
Exception handler
А если будет
<a lang="fr" href="url"></a>
то что?

а в регулярке (\\w*) не словит ваше "name link" ;)

так что с регуляркой проблемы есть
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
(<a href=[^>]+>)([^<]*)(<\/a>)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы