Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
regex_algorithms.hpp File Reference

Contains the regex_match(), regex_search() and regex_replace() algorithms. More...

#include <string>
#include <iterator>
#include <boost/mpl/or.hpp>
#include <boost/range/end.hpp>
#include <boost/range/begin.hpp>
#include <boost/mpl/identity.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits/add_const.hpp>
#include <boost/type_traits/is_pointer.hpp>
#include <boost/type_traits/remove_const.hpp>
#include <boost/xpressive/match_results.hpp>
#include <boost/xpressive/detail/detail_fwd.hpp>
#include <boost/xpressive/detail/core/state.hpp>
#include <boost/xpressive/detail/utility/save_restore.hpp>
Include dependency graph for regex_algorithms.hpp:
This graph shows which files directly or indirectly include this file:

Namespaces

 boost
 Duration formatting facet for input.
 
 boost::xpressive
 
 boost::xpressive::detail
 

Macros

#define BOOST_XPR_NONDEDUCED_TYPE_(x)   typename mpl::identity<x>::type
 INTERNAL ONLY. More...
 

Functions

template<typename BidiIter >
bool boost::xpressive::detail::regex_match_impl (typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 
template<typename BidiIter >
bool boost::xpressive::regex_match (typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 See if a regex matches a sequence from beginning to end. More...
 
template<typename BidiIter >
bool boost::xpressive::regex_match (typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename Char >
bool boost::xpressive::regex_match (typename mpl::identity< Char >::type *begin, match_results< Char * > &what, basic_regex< Char * > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_match (BidiRange &rng, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_match (BidiRange const &rng, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename Char >
bool boost::xpressive::regex_match (typename mpl::identity< Char >::type *begin, basic_regex< Char * > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_match (BidiRange &rng, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_match (BidiRange const &rng, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiIter >
bool boost::xpressive::detail::regex_search_impl (match_state< BidiIter > &state, basic_regex< BidiIter > const &re, bool not_initial_null=false)
 
template<typename BidiIter >
bool boost::xpressive::regex_search (typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 Determines whether there is some sub-sequence within [begin,end) that matches the regular expression re. More...
 
template<typename BidiIter >
bool boost::xpressive::regex_search (typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename Char >
bool boost::xpressive::regex_search (typename mpl::identity< Char >::type *begin, match_results< Char * > &what, basic_regex< Char * > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_search (BidiRange &rng, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_search (BidiRange const &rng, match_results< BidiIter > &what, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename Char >
bool boost::xpressive::regex_search (typename mpl::identity< Char >::type *begin, basic_regex< Char * > const &re, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_search (BidiRange &rng, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiRange , typename BidiIter >
bool boost::xpressive::regex_search (BidiRange const &rng, basic_regex< BidiIter > const &re, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< BidiRange > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename OutIter , typename BidiIter , typename Formatter >
OutIter boost::xpressive::detail::regex_replace_impl (OutIter out, BidiIter begin, BidiIter end, basic_regex< BidiIter > const &re, Formatter const &format, regex_constants::match_flag_type flags=regex_constants::match_default)
 
template<typename OutIter , typename BidiIter , typename Formatter >
OutIter boost::xpressive::regex_replace (OutIter out, typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, basic_regex< BidiIter > const &re, Formatter const &format, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< Formatter > >::type *=0)
 Build an output sequence given an input sequence, a regex, and a format string or a formatter object, function, or expression. More...
 
template<typename OutIter , typename BidiIter >
OutIter boost::xpressive::regex_replace (OutIter out, typename mpl::identity< BidiIter >::type begin, typename mpl::identity< BidiIter >::type end, basic_regex< BidiIter > const &re, typename iterator_value< BidiIter >::type const *format, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiContainer , typename BidiIter , typename Formatter >
BidiContainer boost::xpressive::regex_replace (BidiContainer &str, basic_regex< BidiIter > const &re, Formatter const &format, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< mpl::or_< detail::is_char_ptr< BidiContainer >, detail::is_char_ptr< Formatter > > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiContainer , typename BidiIter , typename Formatter >
BidiContainer boost::xpressive::regex_replace (BidiContainer const &str, basic_regex< BidiIter > const &re, Formatter const &format, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< mpl::or_< detail::is_char_ptr< BidiContainer >, detail::is_char_ptr< Formatter > > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename Char , typename Formatter >
std::basic_string< typename
remove_const< Char >::type > 
boost::xpressive::regex_replace (typename mpl::identity< Char >::type *str, basic_regex< Char * > const &re, Formatter const &format, regex_constants::match_flag_type flags=regex_constants::match_default, typename disable_if< detail::is_char_ptr< Formatter > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiContainer , typename BidiIter >
BidiContainer boost::xpressive::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, typename disable_if< detail::is_char_ptr< BidiContainer > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename BidiContainer , typename BidiIter >
BidiContainer boost::xpressive::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, typename disable_if< detail::is_char_ptr< BidiContainer > >::type *=0)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename Char >
std::basic_string< typename
remove_const< Char >::type > 
boost::xpressive::regex_replace (typename mpl::identity< Char >::type *str, basic_regex< Char * > const &re, typename add_const< Char >::type *format, regex_constants::match_flag_type flags=regex_constants::match_default)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 

Detailed Description

Contains the regex_match(), regex_search() and regex_replace() algorithms.

Macro Definition Documentation

#define BOOST_XPR_NONDEDUCED_TYPE_ (   x)    typename mpl::identity<x>::type

INTERNAL ONLY.