Интегрировать данный Porter Stemermer в C - PullRequest
2 голосов
/ 22 октября 2011

Я видел, что у следующего есть реализация портера для C http://tartarus.org/martin/PorterStemmer/

Однако, хотя я пробовал несколько раз, я не могу интегрировать это в свой код.Может кто-нибудь сказать мне, как я должен назвать загруженный файл и что я должен передать ему, чтобы обрезать строку?для этого .Я думаю об использовании выше, но я не знаю, как использовать загруженный файл.Пожалуйста, приведите пример

Ответы [ 2 ]

2 голосов
/ 22 октября 2011

Код c предоставляет функцию:

int stem ( *str, int i, int j);

Это та, которую вы должны вызвать.Он изменяет исходную строку и возвращает длину результата. Типичное использование демонстрируется в функции stem_file (), которая выполняет что-то вроде:

char buff[12345]; //should contain one word.

buff [ stem(buff, xx, yy) ] = '\0' ;

Я не знаю, что 2-й и 3-йпараметры означают точно.Посмотри.

1 голос
/ 18 июня 2013

Код состоит из двух частей.

Есть часть, которая отмечает окончание определения Стеммера. Перед этим они показали основные 5 шагов, которые устанавливает алгоритм портера. Часть после этого имеет дело с частью обработки файла, преобразует символы в нижние регистры. Стволовая функция имеет дело с частью инициализации. j рассматривается как начальная длина слова.

Пройдите через это правильно один раз. Это не очень легко понять.

...