Здравствуйте. С помощью регулярных выражений я пытаюсь проверить наличие подстроки. Для этого пишу такой код:
std::regex search(searchOption, std::regex::icase);
if(regex_search(currentBook, search))return true;
else return false;
//searchOption - подстрока, которую нужно найти
//currentBook - строка, где нужно искать
Но если у меня searchOption будет равен "C++", то у меня вылетит эксепшн. Можно ли это как-то исправить?
Но если у меня searchOption будет равен "C++", то у меня вылетит эксепшн.
что за бред? зачем вы посылаете в std::regex
подстроку? (вот вам и ошибка)
туда надо посылать регулярное выражение! тык 1, тык 2
а чтобы найти "C++" или "app" используйте find/ search
и т.п.
если же вам важны разделители то сначала разберитесь в том как правильно составлять регулярки!
p.s. ну если вам надо найти "app" то ищите " app "
UPD
ну раз можно отправить и саму строку то значит ругается на "++"
если это так, то надо плюсы экранировать \\
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Здравствуйте! Возникла необходимость в написании парсера на C++На входе имеем два файла, в одном лежат входные данные (которые мы и будем проверять),...
Здравствуйте! Как с помощью C++ реализовать передачу данных из потока? К примеру, команда grep получает данные из cat: cat file | grep Компилятор gcc, заранее...
Есть проблема: Программа работает с большим количеством клиентов и выделяет большое количество портовДля каждого клиента выделяется один...