5 #include <libutl/Array.h> 6 #include <libutl/BitArray.h> 7 #include <libutl/BoyerMooreSearch.h> 8 #include <libutl/Queue.h> 9 #include <libutl/Span.h> 10 #include <libutl/String.h> 161 virtual void steal(
Object& rhs);
175 bool match(
const String& str, RegexMatch* m =
nullptr,
size_t idx = 0)
const;
190 return getFlag(flg_ok);
202 return getFlag(flg_anchored);
207 bool match(RegexMatch& m,
size_t& idx,
const REnode* node)
const;
218 setAnchored(
bool anchored)
220 setFlag(flg_anchored, anchored);
223 bool setCharSet(
const REnode* node,
BitArray& charSet);
231 void setTail(REnode* chain, REnode* tail);
273 return _matches !=
nullptr;
290 _matchStr = matchStr;
303 numMatchSpans()
const 306 return _matches->size();
311 matchSpan(
size_t idx)
314 return (*_matches)(idx);
319 matchSpan(
size_t idx)
const 322 return (*_matches)(idx);
bool ok() const
Determine whether the regex is successfully compiled.
void deInit()
De-initialize UTL++.
FIFO (first-in, first-out) data structure.
Template version of DequeIt.
#define UTL_CLASS_DECL(DC, BC)
Declaration of standard UTL++ functionality for a non-template class.
Regex(const char *str)
Constructor.
Regex(const String ®ex)
Constructor.
void copy(T *dest, const T *src, size_t len)
Copy one array of objects to another.
Boyer-Moore string search.
unsigned int uint_t
Unsigned integer.
#define UTL_CLASS_NO_COMPARE
Declare that a class cannot do compare().
#define UTL_CLASS_NO_COPY
Declare that a class cannot do copy().
Root of UTL++ class hierarchy.
int compare(bool lhs, bool rhs)
Compare two boolean values.
void init()
Initialize UTL++.
#define ASSERTD
Do an assertion in DEBUG mode only.