📚 petrovich - Awesome Go Library for Text Processing

Go Gopher mascot for petrovich

Petrovich is the library which inflects Russian names to given grammatical case

🏷️ Text Processing
📂 Utility/Miscellaneous
0 stars
View on GitHub 🔗

Detailed Description of petrovich

Petrovich

Petrovich is the library which inflects Russian names to given grammatical case.

This is the Go port of https://github.com/petrovich.

GoDoc Build Status Coverage Status Go Report Card

Installation

go get github.com/striker2000/petrovich

Usage

All functions takes three arguments: name in nominative case, gender and grammatical case.

import "github.com/striker2000/petrovich"

n := petrovich.FirstName("Кузьма", petrovich.Male, petrovich.Genitive)
fmt.Print(n) // "Кузьмы"

n = petrovich.MiddleName("Сергеевич", petrovich.Male, petrovich.Instrumental)
fmt.Print(n) // "Сергеевичем"

n = petrovich.LastName("Петров-Водкин", petrovich.Male, petrovich.Prepositional)
fmt.Print(n) // "Петрове-Водкине"

Valid values for gender are petrovich.Androgynous, petrovich.Male and petrovich.Female.

Full list of grammatical cases is in the table below.

CaseCase (in Russian)Question (in Russian)
petrovich.NominativeИменительныйКто?
petrovich.GenitiveРодительныйКого?
petrovich.DativeДательныйКому?
petrovich.AccusativeВинительныйКого?
petrovich.InstrumentalТворительныйКем?
petrovich.PrepositionalПредложныйО ком?