#include <xpressive_fwd.hpp>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename LetExpr >
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
If what.prefix().first != what[0].second and if the element match_prev_avail is not set in flags then sets it.
Then behaves as if by calling regex_search(what[0].second, end, what, *pre, flags), with the following variation: in the event that the previous match found was of zero length (what[0].length() == 0) then attempts to find a non-zero length match starting at what[0].second, only if that fails and provided what[0].second != suffix().second does it look for a (possibly zero length) match starting from what[0].second + 1. If no further match is found then sets *this equal to the end of sequence iterator.
- Postcondition
- (*this)->size() == pre->mark_count() + 1
-
(*this)->empty() == false
-
(*this)->prefix().first == An iterator denoting the end point of the previous match found
-
(*this)->prefix().last == (**this)[0].first
-
(*this)->prefix().matched == (*this)->prefix().first != (*this)->prefix().second
-
(*this)->suffix().first == (**this)[0].second
-
(*this)->suffix().last == end
-
(*this)->suffix().matched == (*this)->suffix().first != (*this)->suffix().second
-
(**this)[0].first == The starting iterator for this match.
-
(**this)[0].second == The ending iterator for this match.
-
(**this)[0].matched == true if a full match was found, and false if it was a partial match (found as a result of the match_partial flag being set).
-
(**this)[n].first == For all integers n < (*this)->size(), the start of the sequence that matched sub-expression n. Alternatively, if sub-expression n did not participate in the match, then end.
-
(**this)[n].second == For all integers n < (*this)->size(), the end of the sequence that matched sub-expression n. Alternatively, if sub-expression n did not participate in the match, then end.
-
(**this)[n].matched == For all integers n < (*this)->size(), true if sub-expression n participated in the match, false otherwise.
-
(*this)->position() == The distance from the start of the original sequence being iterated, to the start of this match.
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
template<typename BidiIter>
The documentation for this struct was generated from the following file: