|
Есть где нибудь функции, склоняющие ФИО и Должности по падежам? | ☑ | ||
---|---|---|---|---|
0
0xFFFFFF
12.11.08
✎
13:31
|
Собственно вопрос.
|
|||
1
Fragster
гуру
12.11.08
✎
13:33
|
в яндексе
|
|||
2
Fragster
гуру
12.11.08
✎
13:34
|
и гения на инфостарте, что-то было
|
|||
3
Rovan
гуру
12.11.08
✎
13:34
|
itland.ru/forum/index.php?showtopic=14302&hl=%F1%EA%EB%EE%ED%E5%ED%E8%E5
|
|||
4
skunk
12.11.08
✎
13:35
|
у гения фигня
|
|||
5
Ёпрст
12.11.08
✎
13:36
|
Есть... и много..Но правильной всё равно нет..
|
|||
6
Ёпрст
12.11.08
✎
13:37
|
пока.
|
|||
7
skunk
12.11.08
✎
13:37
|
(6)есть
|
|||
8
skunk
12.11.08
✎
13:37
|
во всяком случае, за ФИО
|
|||
9
Ёпрст
12.11.08
✎
13:37
|
http://infostart.ru/projects/2620/
почитай все коменты... там есть еще ссылки .. |
|||
10
Ёпрст
12.11.08
✎
13:38
|
(7) нету :)
|
|||
11
Ёпрст
12.11.08
✎
13:38
|
(8) Да нету :)
ВУсе известные, работают неверно , даже ту, что Рупор делал.. |
|||
12
Mikeware
12.11.08
✎
13:40
|
// http://superjur.narod.ru
// // Удаление этих строк незнаконно! // Гарантия 91 года и 1 месяц!!! // Послегарантийное обслуживание - бесплатно!!! // Круглосуточная поддержка - все 48 часов в бою! // Ссылка на источник обязательна! // Эти программы защищены законом об авторских правах. Запрещается перепродажа данной программы. // ПРОВЕРЕНО! ВИРУСОВ НЕТ!!! АНТИВИРУСОВ ТОЖЕ!!! // Смотри Милячуша в творительном !! // скупой слепой тупой - пропой!! // !№№! // !55! ПадежЫ - для оглы и кызы // !54! // !53! Очередное сокращение кода // !51! Прегромадное спасибо Олегу Дубровскому за оказанную моральную, информационную и материальную поддержку сего проекта. // Сергею Толкачёву за напоминание о том, что в русском языке всегда есть место исключениям! // !50! П:Ответственный за электрохозяйство Ф:Ацута Груша // !48! исправлена ошибка при склонении фамилий (спасибо, Mario). // !47! исправлена ошибка при склонении профессий ( спасибо, Павел Ковалев). // !46! оптимизация + четвертый параметр задает, что вернуть - фамилия, имя или отчество или всё сразу в нужном падеже // !42! Осел + Соловей + Воробей + Немец + Кормилец + Силиец // !41! отчества оканчивающиеся на "ы" считаются женскими ? // Функция для склонения одного слова!!! // z1 - само слово // z2 - номер падежа // z3 - пол // z4 - 1-склонять как фамилию, 2-имя, 3-отчество Функция ПадежС(z1,Знач z2=2,Знач z3="*",z4=0) Экспорт z5=Найти(z1,"-"); z6=?(z5=0,"","-"+ПадежС(Сред(z1,z5+1,СтрДлина(z1)-z5+1),z2,z3,z4)); z1=НРег(?(z5=0,z1,Лев(z1,z5-1))); z7=Прав(z1,3);z8=Прав(z7,2);z9=Прав(z8,1); z5=СтрДлина(z1); za=Найти("ая ия ел ок яц ий па да ца ша ба та га ка",z8); zb=Найти("аеёийоуэюяжнгхкчшщ",Лев(z7,1)); zc=Макс(z2,-z2); zd=?(za=4,5,Найти("айяь",z9)); zd=?((zc=1)или(z9=".")или((z4=2)и(Найти("оиеу"+?(z3="ч","","бвгджзклмнпрстфхцчшщъ"),z9)>0))или((z4=1)и(Найти("мия мяэ лия кия жая лея",z7)>0)),9,?((zd=4)и(z3="ч"),2,?(z4=1,?(Найти("оеиую",z9)+Найти("их ых аа еа ёа иа оа уа ыа эа юа яа",z8)>0,9,?(z3<>"ч",?(za=1,7,?(z9="а",?(za>18,1,6),9)),?(((Найти("ой ый",z8)>0)и(z5>4)и(Прав(z1,4)<>"опой"))или((zb>10)и(za=16)),8,zd))),zd))); ze=Найти("лец вей бей дец пец мец нец рец вец аец иец ыец бер",z7); zf=?((zd=8)и(zc<>5),?((zb>15)или(Найти("жий ний",z7)>0),"е","о"),?(z1="лев","ьв",?((Найти("аеёийоуэюя",Сред(z1,z5-3 ,1))=0)и((zb>11)или(zb=0))и(ze<>45),"",?(za=7,"л",?(za=10,"к",?(za=13,"йц",?(ze=0,"",?(ze<12,"ь"+?(ze=1,"ц",""),?(ze<37,"ц",?(ze<49,"йц","р")))))))))); zf=?((zd=9)или((z4=3)и(z3="ы")),z1,Лев(z1,z5-?((zd>6)или(zf<>""),2,?(zd>0,1,0)))+zf+СокрП(Сред("а у а "+Сред("оыые",Найти("внч",z9)+1,1)+"ме "+?(Найти("гжкхш",Лев(z8,1))>0,"и","ы")+" е у ойе я ю я ем"+?(za=16,"и","е")+" и е ю ейе и и ь ьюи и и ю ейи ойойу ойойойойуюойойгомуго"+?((zf="е")или(za=16)или((zb>12)и(zb<16)),"и","ы")+"мм",10*zd+2*zc-3,2))); Возврат ?(""=z1,"",?(z4>0,ВРег(Лев(zf,1))+?((z2<0)и(z4>1),".",Сред(zf,2)),zf)+z6); КонецФункции //_____________________________________________________________________________ // z1 - фамилия имя отчество например Железняков Юрий Юрьевич // z2 - Падеж ( по умолчанию = 2 - родительный) // 2 - родительный ( нет кого? ) Железнякова Юрия Юрьевича // 3 - дательный ( кому? ) Железнякову Юрию Юрьевичу // 4 - винительный ( вижу кого? ) Железнякова Юрия Юрьевича // 5 - творительный ( кем? ) Железняковым Юрием Юрьевичем // 6 - предложный ( о ком? ) Железнякове Юрии Юрьевиче // Если задать Z2 меньше 0, то на выходе получим от -1=Железняков Ю. Ю. до -6=Железнякове Ю. Ю. // z3 - параметр Пол может не указываться, но при наличии фамилий с // инициалами точное определение пола невозможно, поэтому предлагается задавать пол этим // параметром 1 - мужской 2 - женский // ДЛЯ СКЛОНЕНИЯ ПРОФЕССИЙ ИСПОЛЬЗУЙТЕ ФУНКЦИЮ ПАДЕЖП И БУДЕТ ВАМ СЧАСТЬЕ! // --------------------------------------------------------------------------------------- // Бибик Галушка Цой Николайчик Наталия Петровна Герценберг Кривошей Капица-Метелица // Если Падеж(Фио ,1 ,3), то на выходе получим Фамилия Имя Отчество и т.д. // Если Падеж(Фио ,1 ,3,"1" ), то Фамилия // Если Падеж(Фио ,1 ,3,"2" ), то Имя // Если Падеж(Фио ,1 ,3,"3" ), то Отчество // Если Падеж(Фио, 1 ,3,"12" ), то Фамилия Имя // Если Падеж(Фио, 1 ,3,"23" ), то Имя Отчество // Если Падеж(Фио,-1 ,3,"231" ),то И. О. Фамилия // Если Падеж(Фио,-1 ,3,"23" ), то И. О. // 10-11-2003 3-20 Функция Падежик(z1,z2=2,z3=3,Знач z4="123",z5=1) Экспорт Возврат?(z5<4,Падежик(СокрЛП(СтрЗаменить(Сред(z1,Найти(z1+" "," ")+1),".",". ")),z2,z3,СтрЗаменить(z4,z5,ПадежС(Лев(z1,Найти(z1+" "," ")-1),z2,Сред("ча"+НРег(Прав(СокрП(z1),1)),z3,1),z5)+" "),z5+1),z4); КонецФункции//Падежик Функция Падеж(z1,z2=2,z3=3,Знач z4="123") Экспорт z1=СокрП(z1); z5=Прав(z1,4); z6=Найти("оглы кызы огло",z5); Возврат Падежик(?(z6>0,Лев(z1,СтрДлина(z1)-5),z1),z2,z3,z4)+?(z6>0,z5,""); КонецФункции//Падеж Функция ПадежП(Знач z1,Знач z2,z3=0) Экспорт z1=СокрЛП(z1);z4=Найти(z1+" "," ")+1;z5=Лев(z1,z4-2);z6=Прав(z5,2); z7=?((Найти("ая ий ый",z6)>0)и(Найти("ющий нный",Сред(z1,z4-5,4))=0)и(z3=0),"1","*"); Возврат НРег(?((z6="ая")или(Прав(z6,1)="а"),ПадежС(z5,z2,z7,1)+" "+ПадежС(Сред(z1,z4),z2),ПадежС(z5,z2,"ч",1)+?((z6="ий")и(Найти(z1," ")=0),""," "+?(z7="1",ПадежП(Сред(z1,z4),z2,Число(z7)),Сред(z1,z4))))); КонецФункции//ПадежП // (c) Jurer Production End ( Finish ) |
|||
13
skunk
12.11.08
✎
13:40
|
(11)есть ... сперва была просто падеж ... потом падеж-2 ... она даже -оглы ... склоняла
|
|||
14
Ёпрст
12.11.08
✎
13:41
|
(12) Эта не рабочая... в (9) есть объяснение, почему :)
|
|||
15
Sj
12.11.08
✎
13:41
|
это старая, мне кажется, лучше все же с сайта качнуть
|
|||
16
Ёпрст
12.11.08
✎
13:41
|
(13) Не та случаем, которая в (12) ? ...
|
|||
17
0xFFFFFF
12.11.08
✎
13:42
|
(3) Архив битый :(
|
|||
18
skunk
12.11.08
✎
13:46
|
(16)вроде как она...
|
|||
19
Sj
12.11.08
✎
13:47
|
http://superjur.narod.ru
- да сюда зайдите и качните. там последняя самая... теоретически. |
|||
20
Ёпрст
12.11.08
✎
13:51
|
(18)
Я тоже ей пользовался, а тут вот девушка на инфостарте нашла ошибку: Сообщить(Падеж("Меч Иван Иванович",5,3)); в творительном возвращает Мечем Иваным Ивановичем что не есть гуд :) |
|||
21
Sj
12.11.08
✎
13:52
|
(20) поправлю конечно скоро
|
|||
22
Ёпрст
12.11.08
✎
13:52
|
+20 а должно быть
( кем? ) МечОм ИванОм Ивановичем |
|||
23
Ёпрст
12.11.08
✎
13:53
|
(21) давай, потестим потом...
|
|||
24
Sj
12.11.08
✎
13:57
|
(23) мыло дай
|
|||
25
Ёпрст
12.11.08
✎
13:58
|
да тут запостишь и всё.. делов то :)
|
|||
26
Sj
12.11.08
✎
14:00
|
я тогда ссылку лучше запостчу
|
|||
27
Sj
12.11.08
✎
14:01
|
а то интернет еще перегружу нафик
|
|||
28
skunk
12.11.08
✎
14:10
|
(20)блин из-за одного ... можно сказать исключения... говорить, что не работает...
зы: не считается... ))) |
|||
29
Ёпрст
12.11.08
✎
14:14
|
(28) Ну так, мот еще чего не работает :)
Таких фанатов лингвистики как Е.Коган нужно еще и поискать :) |
|||
30
0xFFFFFF
12.11.08
✎
14:25
|
(12)
Спасибо. Блин, как она это делает? |
|||
31
Sj
12.11.08
✎
14:32
|
(30) с сайта, надеюсь, качнули ?
(29) можно тогда весь список "мот еще чего не работает" ? дабы дважды не садиться. |
|||
32
Ёпрст
12.11.08
✎
14:35
|
(31) Нее.. это нужно кучу бета - тестеров :)
Или юнит-тестированием заниматься... Можешь скачать отсюда и прогнать: http://1c.alterplast.ru/functest/index.html |
|||
33
skunk
12.11.08
✎
14:40
|
(29)ну может это так ... гоняли на справочнике из 15.000 сотров... с кызлы и оглы... все работало...
|
|||
34
Sj
12.11.08
✎
14:53
|
(33) мне бы такой справочник... а то исключениями побираюсь
|
|||
35
Ёпрст
12.11.08
✎
15:10
|
(34) Приходи на завод побольше - выдадут :)
|
|||
36
skunk
12.11.08
✎
15:13
|
(34)при удобном случае выдерну... думаю сам справочник дергать смысла нет... думаю текстового файло с ФИО и полом будет достаточно
|
|||
37
andrewalexk
12.11.08
✎
15:16
|
(34)
:) купи диск с БД какой-нибудь.. |
|||
38
Sj
12.11.08
✎
15:40
|
(35) хватит, поработали уже
(36) да. необходимо только фио и пол... (37) в наше тяжелое предкризисное время что-то покупать как-то не на что |
|||
39
Torquader Darigha
12.11.08
✎
15:56
|
По поводу сколнения слов можно много чего написать, но проще перебрать всевозможные фамилии и задать правила для них.
Так как склонение слов - операция условная. Чем, например, отличаются слова "пень" и "тень" - а склоняются-то по разному. Также и с алгоримом. Всегда будут находиться неточности, но если их задавать, как исключения, то ошибок не будет. Удачи. |
|||
40
Sj
13.11.08
✎
11:47
|
(25) не поверишь, но тут
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=92&lid=1545 уже давно лежит версия, которая правильно в творительном падеже и Меча и Ивана склоняет. |
|||
41
Ёпрст
13.11.08
✎
11:49
|
(40) Может быть, лень проверять :)
|
|||
42
Ёпрст
13.11.08
✎
11:49
|
+41 Мот она в других падежах ошибается ...
|
|||
43
Sj
13.11.08
✎
12:02
|
предполагать можно все, что угодно
|
|||
44
Ёпрст
13.11.08
✎
12:03
|
(43) Нет уж, увольте, меня в бета-тестеры записывать не надо ...
|
|||
45
Ёпрст
13.11.08
✎
12:03
|
:)
|
|||
46
Sj
13.11.08
✎
12:06
|
(44) да и в мыслях не было. По Фрейду получается, что на уровне подсознания вы хотите стать бета-тестером.
|
|||
47
Dimarik2309
13.11.08
✎
12:51
|
В типовом ЗУПе есть внешняя компонента - она точно правильно все делает:)
|
|||
48
ASU_Diamond
13.11.08
✎
12:59
|
а должности склоняет?
|
|||
49
skunk
13.11.08
✎
13:16
|
(46)да ладно ... все равно у тебя самая зачетная склонялка...
|
|||
50
skunk
13.11.08
✎
13:17
|
чес слова Рупоровская к примеру даже близко не лежала
|
|||
51
Sj
13.11.08
✎
13:17
|
(49) ну и ладно... :-) спасибо
|
|||
52
0xFFFFFF
13.11.08
✎
21:17
|
Да, склонялка супер!
Спасибо. PS Кто нибудь, кроме автора понимает, как эта "лингвистика в информатике" работает вообще? :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |