Можно ли использовать Повышение. Regex для парсинга потока?

Переключение с типа : api на тип : запрос дал мне доступ к переменным запроса и ответа , которые до этого Я должен был сам создать переменные, чтобы попытаться получить к ним доступ.

При использовании типа : api у меня был доступ к last_response вместо ответа , потому что мой тип : api в том числе Rack :: Test :: Methods , который путал эти переменные (ответ и запрос), согласно этого поста .

Когда я переключился на тип : request и больше не импортировал Rack :: Test :: Methods , я смог получить доступ к переменной request и увидел, что нужные заголовки были добавлены правильно.

10
задан Ferruccio 19 January 2009 в 13:36
поделиться

2 ответа

Повышение. IOStreams имеет regex_filter, позволяющий один для выполнения эквивалента regex_replace на потоке. Однако смотря на реализацию, это, кажется, "обманывает", которого это просто загружает целый поток в буфер и затем называет Повышение. Regex на том буфере.

Создание поиска regex на содержании потока, не имея необходимость полностью загружать его в памяти может быть сделано с "частичным соответствием" поддержка Повышения. Regex. Посмотрите на пример в конце страницы.

5
ответ дан 4 December 2019 в 02:27
поделиться

regex_iterator конструктор требует BidirectionalIterators, но станд.:: istream_iterator является только InputIterator, таким образом, кажется, что Вы не смогли бы сделать это с любым из стандартных потоковых классов и/или объектов (cin, ifstream, и т.д.). Если бы у Вас был пользовательский поток, который выставил двунаправленный итератор, то он должен работать.

2
ответ дан 4 December 2019 в 02:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: