mirror of
https://github.com/retailcrm/NameCaseLib.git
synced 2024-12-04 19:06:06 +03:00
[0.4.1] /RU11071411/ Исправление правил
This commit is contained in:
parent
5a04b04c25
commit
ad1bc79c83
@ -26,7 +26,7 @@ class NCLNameCaseRu extends NCLNameCaseCore
|
||||
* Версия языкового файла
|
||||
* @var string
|
||||
*/
|
||||
protected $languageBuild = '11071222';
|
||||
protected $languageBuild = '11071411';
|
||||
|
||||
/**
|
||||
* Количество падежей в языке
|
||||
@ -121,7 +121,7 @@ class NCLNameCaseRu extends NCLNameCaseCore
|
||||
{
|
||||
if ($this->Last(1) == "а")
|
||||
{
|
||||
if ($this->Last(2, 1) <> 'к')
|
||||
if (!$this->in($this->Last(2, 1), 'кшгх'))
|
||||
{
|
||||
$this->wordForms($this->workingWord, array('ы', 'е', 'у', 'ой', 'е'), 1);
|
||||
$this->Rule(301);
|
||||
@ -270,7 +270,7 @@ class NCLNameCaseRu extends NCLNameCaseCore
|
||||
$this->Rule(701);
|
||||
return true;
|
||||
}
|
||||
elseif ($this->in($this->Last(2, 1), 'хк'))
|
||||
elseif ($this->in($this->Last(2, 1), 'хкг'))
|
||||
{
|
||||
$this->wordForms($this->workingWord, array('и', 'е', 'у', 'ой', 'е'), 1);
|
||||
$this->Rule(702);
|
||||
@ -628,7 +628,12 @@ class NCLNameCaseRu extends NCLNameCaseCore
|
||||
{
|
||||
$father+=3;
|
||||
}
|
||||
|
||||
|
||||
if ($this->in($this->Last(2), array('ик', 'ша')))
|
||||
{
|
||||
$first+=0.5;
|
||||
}
|
||||
|
||||
//Похоже на имя
|
||||
if ($this->in($this->Last(3), array('тин', 'тын')))
|
||||
{
|
||||
@ -636,18 +641,22 @@ class NCLNameCaseRu extends NCLNameCaseCore
|
||||
}
|
||||
|
||||
//Исключения
|
||||
if ($this->inNames($namepart, array('Лев', 'Яков', 'Мальвина', 'Антонина', 'Альбина', 'Агриппина', 'Каллиник', 'Маша', 'Ольга', 'Еремей', 'Фаина', 'Лазарь', 'Екатерина', 'Карина', 'Марина', 'Валентина', 'Кристина', 'Исак', 'Исаак', 'Валентин', 'Константин', 'Мартин', 'Устин', 'Калина', 'Аделина', 'Алина', 'Ангелина', 'Галина', 'Каролина', 'Павлина', 'Полина', 'Элина', 'Мина', 'Нина', 'Ева', 'Ирина', 'Элькин', 'Мерлин')))
|
||||
if ($this->inNames($namepart, array('Лев', 'Яков', 'Мальвина', 'Антонина', 'Альбина', 'Агриппина', 'Каллиник', 'Маша', 'Ольга', 'Еремей', 'Фаина', 'Лазарь', 'Карина', 'Марина', 'Валентина', 'Исак', 'Исаак', 'Валентин', 'Константин', 'Мартин', 'Устин', 'Калина', 'Аделина', 'Алина', 'Ангелина', 'Галина', 'Каролина', 'Павлина', 'Полина', 'Элина', 'Мина', 'Нина', 'Ева', 'Ирина', 'Элькин', 'Мерлин')))
|
||||
{
|
||||
$first+=10;
|
||||
}
|
||||
|
||||
if($this->in($this->Last(7),array('атерина', 'ристина')))
|
||||
{
|
||||
$first+=10;
|
||||
}
|
||||
|
||||
//похоже на фамилию
|
||||
if ($this->in($this->Last(2), array('ов', 'ин', 'ев', 'ёв', 'ый', 'ын', 'ой', 'ко', 'ук', 'як', 'ца', 'их', 'ик', 'ун', 'ок', 'ша', 'ая', 'га', 'ёк', 'аш', 'ив', 'юк', 'ус', 'це', 'ак', 'бр', 'яр', 'де', 'ых', 'уз', 'ах', 'рг', 'ец', 'юр', 'ич', 'ро')))
|
||||
if ($this->in($this->Last(2), array('ов', 'ин', 'ев', 'ёв', 'ый', 'ын', 'ой', 'ко', 'ук', 'як', 'ца', 'их', 'ун', 'ок', 'ая', 'га', 'ёк', 'аш', 'ив', 'юк', 'ус', 'це', 'ак', 'бр', 'яр', 'де', 'ых', 'уз', 'ах', 'рг', 'ец', 'юр', 'ич', 'ро', 'ло', 'ть', 'ль', 'ли', 'ур')))
|
||||
{
|
||||
$second+=0.4;
|
||||
}
|
||||
|
||||
if ($this->in($this->Last(3), array('ова', 'ева', 'ёва', 'ына', 'тых', 'рик', 'вач', 'аха', 'шен', 'мей', 'арь', 'вка', 'шир', 'бан', 'тин', 'чий', 'ина', 'гай', 'кий', 'бей', 'чан', 'ган')))
|
||||
if ($this->in($this->Last(3), array('ова', 'ева', 'ёва', 'ына', 'тых', 'рик', 'вач', 'аха', 'шен', 'мей', 'арь', 'вка', 'шир', 'бан', 'тин', 'чий', 'ина', 'гай', 'кий', 'бей', 'чан', 'ган', 'ник', 'ким', 'бян', 'кан')))
|
||||
{
|
||||
$second+=0.4;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user