Regexp.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #ifndef __REGEXP_H__
  2. #define __REGEXP_H__
  3. //class CString;
  4. class regexp;
  5. class Regexp
  6. {
  7. public:
  8. enum { NSUBEXP = 10 };
  9. Regexp();
  10. Regexp( LPCTSTR exp, BOOL iCase = 0 );
  11. Regexp( const Regexp &r );
  12. ~Regexp();
  13. const Regexp & operator=( const Regexp & r );
  14. bool Match( const TCHAR * s );
  15. int SubStrings() const;
  16. const CString operator[]( unsigned int i ) const;
  17. int SubStart( unsigned int i ) const;
  18. int SubLength( unsigned int i ) const;
  19. CString GetReplaceString( LPCTSTR source ) const;
  20. CString GetErrorString() const;
  21. bool CompiledOK() const;
  22. #if defined( _RE_DEBUG )
  23. void Dump();
  24. #endif
  25. private:
  26. const TCHAR * string; /* used to return substring offsets only */
  27. mutable CString m_szError;
  28. regexp * rc;
  29. void ClearErrorString() const;
  30. int safeIndex( unsigned int i ) const;
  31. };
  32. #endif