Склоняет русские фамилии, имена и отчества из именительного в другие падежи.
@USE
FioMorph.p
$fio[^FioMorph::create[
^rem{ фамилия }
$.surname[Иванов]
^rem{ имя }
$.first[Иван]
^rem{ отчество }
$.middle[Иванович]
^rem{ 1/0 -> мужчина/женщина }
$.gender(1)
]]
# или
$fio[^FioMorph::create[Иванов Иван Иванович]]
# Доступные методы
# Обозначение падежей
# i, I, nom, nominative, им, именительный
# r, R, gen, genitive, род, родительный
# d, D, dat, dative, дат, дательный
# v, V, acc, accusative, вин, винительный
# t, T, ins, instrumental, тв, творительный
# p, P, pre, prepositional, пр, предложный
# Фамилия имя отчество полностью
# расположение фамилии = [ l | L | left | слева ] | [ r | R | right | справа ]
# по умолчанию слева
^fio.fullName[падеж;расположение]
# Короткая запись Фамилия + инициалы
# расположение инициалов = [ l | L | left | слева ] | [ r | R | right | справа ]
# по умолчанию справа
^fio.shortName[падеж;расположение]
# Фамилия
^fio.surName[падеж]
# Имя
^fio.firstName[падеж]
# Отчество
^fio.middleName[падеж]
# Пол
# форма = [ full | short | abbr ] = [ Мужчина | Муж | М ] | [ Женщина | Жен | Ж ]
# по умолчанию full
^fio.gender[форма]
# статический метод определения пола
^FioMorph:checkGender[фамилия;отчество]
- Если в класс передать строку, а не хеш, старается ее разобрать сам
- Если явно не указан пол, старается его определить
- Допускает отсутствие отчества
- Допускает сдвоенные фамилии через дефис (Салтыков-Щедрин)