8#if !defined(ALIB_C20_MODULES) || ((ALIB_C20_MODULES != 0) && (ALIB_C20_MODULES != 1))
9# error "Configuration MACRO ALIB_C20_MODULES has to be given to the compiler as either 0 or 1"
18 module ALib.Strings.Search;
23#if ALIB_FEAT_BOOST_REGEX && ALIB_CHARACTERS_WIDE && !ALIB_CHARACTERS_NATIVE_WCHAR
24# pragma message ( "Warning: Class RegexMatcher will not be available, because ALIB_CHARACTERS_NATIVE_WCHAR is false." )
27#if ALIB_FEAT_BOOST_REGEX && (!ALIB_CHARACTERS_WIDE || ALIB_CHARACTERS_NATIVE_WCHAR)
36 boost::regex_constants::optimize );
46 boost::match_results<String::const_iterator> what;
48 return { what.position(), what.length(0) };
#define ALIB_ASSERT_ERROR(cond, domain,...)
constexpr integer Length() const
const_iterator end() const
constexpr const TChar * Buffer() const
const_iterator begin() const
constexpr bool IsNull() const
bool Match(const String &haystack)
boost::basic_regex< character, boost::regex_traits< character > > boostRegex
This is the internal regex matcher.
SRange SearchIn(const String &haystack)
void Compile(const String &pattern)
strings::TString< character > String
Type alias in namespace alib.