Stemmer.h
上传用户:sanxfzhen
上传日期:2014-12-28
资源大小:2324k
文件大小:1k
源码类别:

多国语言处理

开发平台:

Visual C++

  1. // Stemmer.h: interface for the CStemmer class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_STEMMER_H__F647EC3C_175E_4539_B216_98E2F54BCCFC__INCLUDED_)
  5. #define AFX_STEMMER_H__F647EC3C_175E_4539_B216_98E2F54BCCFC__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. class CStemmer  
  10. {
  11. public:
  12. void stem(char *p);
  13. CStemmer();
  14. virtual ~CStemmer();
  15. int stem(char * p, int i, int j);
  16. private:
  17. int cons(int i);
  18. int m();
  19. int vowelinstem();
  20. int doublec(int j);
  21. int cvc(int i);
  22. int ends(char * s);
  23. void setto(char * s);
  24. void r(char * s);
  25. void step1ab();
  26. void step1c();
  27. void step2();
  28. void step3();
  29. void step4();
  30. void step5();
  31. private:
  32. char * b;       /* buffer for word to be stemmed */
  33. int k,k0,j;     /* j is a general offset into the string */
  34. };
  35. extern CStemmer theStemmer;
  36. #endif // !defined(AFX_STEMMER_H__F647EC3C_175E_4539_B216_98E2F54BCCFC__INCLUDED_)