C ++ std :: sregex_iterator не работает с LineFeedC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C ++ std :: sregex_iterator не работает с LineFeed

Сообщение Anonymous »

Я пытаюсь использовать std :: sregex_iterator с несколькими строками.
Но это ничего не находит.
void test()
{
const std::string text(R"(
.start
some text
.end
.start
some other text
.end)");
static const std::regex re(R"(\.start\s*(.*?)\.end)");

for (std::sregex_iterator it = std::sregex_iterator(text.begin(), text.end(), re);
it != std::sregex_iterator();
it++)
{
std::string part = (*it).str(1);
printf("%s\n", part.c_str());
}
}
< /code>
Я также пытался использовать std :: regex_constants :: endended < /code>, но получить исключение:
error_escape (2) < /p>
Как я могу получить sregex_iterator < /code>, чтобы работать с множественными линиями? regex.
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/797 ... h-linefeed
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»