Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Function regex_replace

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Function regex_replace

boost::xpressive::regex_replace — Build an output sequence given an input sequence, a regex, and a format string or a formatter object, function, or expression.

Synopsis

// In header: <boost/xpressive/regex_algorithms.hpp>

template<typename OutIter, typename BidiIter, typename Formatter> 
  OutIter regex_replace(OutIter out, BidiIter begin, BidiIter end, 
                        basic_regex< BidiIter > const & re, 
                        Formatter const & format, 
                        regex_constants::match_flag_type flags = regex_constants::match_default, 
                        unspecified = 0);
template<typename OutIter, typename BidiIter> 
  OutIter regex_replace(OutIter out, BidiIter begin, BidiIter end, 
                        basic_regex< BidiIter > const & re, 
                        typename iterator_value< BidiIter >::type const * format, 
                        regex_constants::match_flag_type flags = regex_constants::match_default);
template<typename BidiContainer, typename BidiIter, typename Formatter> 
  BidiContainer 
  regex_replace(BidiContainer & str, basic_regex< BidiIter > const & re, 
                Formatter const & format, 
                regex_constants::match_flag_type flags = regex_constants::match_default, 
                unspecified = 0);
template<typename BidiContainer, typename BidiIter, typename Formatter> 
  BidiContainer 
  regex_replace(BidiContainer const & str, basic_regex< BidiIter > const & re, 
                Formatter const & format, 
                regex_constants::match_flag_type flags = regex_constants::match_default, 
                unspecified = 0);
template<typename Char, typename Formatter> 
  std::basic_string< typename remove_const< Char >::type > 
  regex_replace(Char * str, basic_regex< Char * > const & re, 
                Formatter const & format, 
                regex_constants::match_flag_type flags = regex_constants::match_default, 
                unspecified = 0);
template<typename BidiContainer, typename BidiIter> 
  BidiContainer 
  regex_replace(BidiContainer & str, basic_regex< BidiIter > const & re, 
                typename iterator_value< BidiIter >::type const * format, 
                regex_constants::match_flag_type flags = regex_constants::match_default, 
                unspecified = 0);
template<typename BidiContainer, typename BidiIter> 
  BidiContainer 
  regex_replace(BidiContainer const & str, basic_regex< BidiIter > const & re, 
                typename iterator_value< BidiIter >::type const * format, 
                regex_constants::match_flag_type flags = regex_constants::match_default, 
                unspecified = 0);
template<typename Char> 
  std::basic_string< typename remove_const< Char >::type > 
  regex_replace(Char * str, basic_regex< Char * > const & re, 
                typename add_const< Char >::type * format, 
                regex_constants::match_flag_type flags = regex_constants::match_default);

Description

Конструирует<regex_iterator>объект:<regex_iterator>< BidiIter >i (начало, конец, re, флаги)и использует<i>для перечисления всех совпадений типа m<match_results>< BidiIter >, которые происходят в последовательности<[begin, end)>. Если же таких совпадений нет, то<!(flags & format_no_copy)>вызывает<std::copy(begin, end, out)>. В противном случае, для каждого найденного матча, если<!(flags & format_no_copy)>звонит<std::copy(m.prefix().first, m.prefix().second, out)>, а затем звонит<m.format(out, format, flags)>.<!(flags & format_no_copy)><std::copy(last_m.suffix().first, last_m.suffix().second, out)>, где<last_m>является копией последнего найденного матча.

Если<flags & format_first_only>не ноль, то заменяется только первый найденный матч.

Параметры:

<begin>

Начало входной последовательности.

<end>

Конец входной последовательности.

<flags>

Флаги, используемые для контроля соответствия выражения последовательности. (См.<match_flag_type>).

<format>

Строка формата, используемая для форматирования заменяющей последовательности или функции формататора, объекта функции или выражения.

<out>

Выходной итератор, в который записывается выходная последовательность.

<re>

Регулярное выражение возражает против использования.

Требуется:

Тип<BidiIter>соответствует требованиям Двунаправленного итератора (24.1.4).

Тип<OutIter>соответствует требованиям выходного итератора (24.1.2).

Тип<Formatter>моделей<ForwardRange>,<Callable<match_results<BidiIter> >>,<Callable<match_results<BidiIter>, OutIter>>или<Callable<match_results<BidiIter>, OutIter, regex_constants::match_flag_type>>; или же это строка формата с нулевым окончанием, или шаблон выражения, представляющий формататор лямбда-выражение.

<[begin,end)>обозначает допустимый диапазон итераторов.

Возвращение:

Значение выходного итератора после выходной последовательности было записано на него.

Броски:

regex_errorоб истощении стека или неправильной строке формата.

PrevUpHomeNext

Статья Function regex_replace раздела The Boost C++ Libraries BoostBook Documentation Subset Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 19:56:17/0.0087318420410156/1