47 #if U_SHOW_CPLUSPLUS_API
49 #if !UCONFIG_NO_REGULAR_EXPRESSIONS
69 class RuleBasedBreakIterator;
328 virtual uint32_t flags()
const;
476 virtual int32_t groupNumberFromName(
const char *groupName, int32_t nameLength,
UErrorCode &status)
const;
519 int32_t destCapacity,
561 virtual int32_t split(
UText *input,
563 int32_t destCapacity,
579 static UClassID U_EXPORT2 getStaticClassID();
589 UVector64 *fCompiledPat;
594 Regex8BitSet *fSets8;
600 int32_t fMinMatchLen;
612 UVector32 *fGroupMap;
618 Regex8BitSet *fStaticSets8;
622 int32_t fInitialStringIdx;
623 int32_t fInitialStringLen;
626 Regex8BitSet *fInitialChars8;
627 UBool fNeedsAltInput;
631 friend class RegexCompile;
633 friend class RegexCImpl;
641 void dumpOp(int32_t index)
const;
644 #ifndef U_HIDE_INTERNAL_API
649 void dumpPattern()
const;
835 virtual UBool find();
902 virtual int32_t groupCount()
const;
941 virtual UText *group(int32_t groupNum,
UText *dest, int64_t &group_len,
UErrorCode &status)
const;
950 virtual int32_t start(
UErrorCode &status)
const;
959 virtual int64_t start64(
UErrorCode &status)
const;
975 virtual int32_t start(int32_t group,
UErrorCode &status)
const;
990 virtual int64_t start64(int32_t group,
UErrorCode &status)
const;
1005 virtual int32_t end(
UErrorCode &status)
const;
1020 virtual int64_t end64(
UErrorCode &status)
const;
1040 virtual int32_t end(int32_t group,
UErrorCode &status)
const;
1059 virtual int64_t end64(int32_t group,
UErrorCode &status)
const;
1185 virtual UText *inputText()
const;
1231 virtual RegexMatcher ®ion(int64_t regionStart, int64_t regionLimit, int64_t startIndex,
UErrorCode &status);
1241 virtual int32_t regionStart()
const;
1251 virtual int64_t regionStart64()
const;
1262 virtual int32_t regionEnd()
const;
1272 virtual int64_t regionEnd64()
const;
1282 virtual UBool hasTransparentBounds()
const;
1312 virtual UBool hasAnchoringBounds()
const;
1342 virtual UBool hitEnd()
const;
1353 virtual UBool requireEnd()
const;
1572 int32_t destCapacity,
1599 virtual int32_t split(
UText *input,
1601 int32_t destCapacity,
1625 virtual void setTimeLimit(int32_t limit,
UErrorCode &status);
1633 virtual int32_t getTimeLimit()
const;
1656 virtual void setStackLimit(int32_t limit,
UErrorCode &status);
1665 virtual int32_t getStackLimit()
const;
1682 const void *context,
1697 const void *&context,
1715 const void *context,
1730 const void *&context,
1733 #ifndef U_HIDE_INTERNAL_API
1739 void setTrace(
UBool state);
1747 static UClassID U_EXPORT2 getStaticClassID();
1767 friend class RegexCImpl;
1769 #ifndef U_HIDE_INTERNAL_API
1771 void resetPreserveRegion();
1780 inline void backTrack(int64_t &inputIdx, int32_t &patIdx);
1781 UBool isWordBoundary(int64_t pos);
1782 UBool isUWordBoundary(int64_t pos);
1783 REStackFrame *resetStack();
1784 inline REStackFrame *StateSave(REStackFrame *fp, int64_t savePatIdx,
UErrorCode &status);
1788 inline UBool findProgressInterrupt(int64_t matchIndex,
UErrorCode &status);
1790 int64_t appendGroup(int32_t groupNum,
UText *dest,
UErrorCode &status)
const;
1794 UBool isChunkWordBoundary(int32_t pos);
1802 UText *fAltInputText;
1804 int64_t fInputLength;
1807 int64_t fRegionStart;
1808 int64_t fRegionLimit;
1810 int64_t fAnchorStart;
1811 int64_t fAnchorLimit;
1817 int64_t fActiveStart;
1818 int64_t fActiveLimit;
1822 UBool fTransparentBounds;
1823 UBool fAnchoringBounds;
1826 int64_t fMatchStart;
1830 int64_t fLastMatchEnd;
1832 int64_t fAppendPosition;
1841 REStackFrame *fFrame;
1846 int64_t fSmallData[8];
1852 int32_t fTickCounter;
1857 int32_t fStackLimit;
1862 const void *fCallbackContext;
1866 const void *fFindProgressCallbackContext;
1869 UBool fInputUniStrMaybeMutable;
1880 #endif // UCONFIG_NO_REGULAR_EXPRESSIONS