No description
Find a file
Alexander Kiryukhin 6796db17de
Initial
2018-05-10 03:00:52 +03:00
StemmerRu Initial 2018-05-10 03:00:52 +03:00
.gitignore Initial 2018-05-10 03:00:52 +03:00
LICENSE Initial 2018-05-10 03:00:52 +03:00
README.md Initial 2018-05-10 03:00:52 +03:00
tests.json Initial 2018-05-10 03:00:52 +03:00

Стеммер Портера для русского языка

Стемминг - процесс получения основы слова из любой его формы. Иными словами, отсекает лишние суффиксы и окончания.

Самое очевидное применение - в полнотекстовом поиске, где нужно, чтобы слово находилось, даже если у него другое окончание.

Этот пакет - реализация стеммера Портера для русского языка на Go.

Использование

основа := StemmerRu.StemWord("слово")

Преобразует слово на входе в его основу на выходе

Пример

package main

import (
	"fmt"
	"github.com/neonxp/StemmerRu"
)

func main() {
	fmt.Println(StemmerRu.StemWord("безмолвны") // выведет: безмолвн
	fmt.Println(StemmerRu.StemWord("безмолвные") // выведет: безмолвн
	fmt.Println(StemmerRu.StemWord("безмолвный") // выведет: безмолвн
	fmt.Println(StemmerRu.StemWord("безмолвным") // выведет: безмолвн
	fmt.Println(StemmerRu.StemWord("безмолвных") // выведет: безмолвн
}