Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.07.17;
Скачать: [xml.tar.bz2];

Вниз

Подмена окончаний в слове   Найти похожие ветки 

 
Максон ©   (2011-04-11 08:25) [0]

Здравствуйте.
Помогите пожалуйста, разобраться в ситуации.
Задача: пользователь вводит в edit1 название района. Например: Ивановский район. Дальше нажимает на кнопку и программа выдает ему сопроводительное письмо, в котром в начале документа Ивановский район, а в конце документа по Ивановскому району
При нажатии на кнопку в закладку шаблона документа word вставляется текст из edit1.


WA.activeDocument.bookmarks.item("район").select;
WA.selection:=form1.edt1.Text;


C этим я разобрался.
Проблема: как убрать окончание (-ий) у слова, а потом добавить к нему другое окончание (-ому)


 
Ega23 ©   (2011-04-11 08:32) [1]

Copy + F1


 
Максон ©   (2011-04-11 08:34) [2]

Это как сделать?


 
Ega23 ©   (2011-04-11 08:36) [3]

Написать в редакторе "Copy", выставить на нём курсор и нажать F1. Будет выведена справка, что это и как этим пользоваться.


 
И. Павел ©   (2011-04-11 08:37) [4]

Вот библиотека, склоняющая фамилии. Думаю, что районы склоняются так же. Например "Московский" - это может быть и райорн и фамилия.
http://delphikingdom.ru/asp/viewitem.asp?catalogid=412

За 1000 руб. можно купить вот такую программу: http://morpher.ru/

Ну и в сети полно уже готовых решений.
Хотя можно сделать самостоятельно - http://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D0%BB%D0%BE%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B3%D0%B5%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BD%D0%B0%D0%B7%D0%B2%D0%B0%D0%BD%D0%B8%D0%B9_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5


 
И. Павел ©   (2011-04-11 08:39) [5]

> [1] Ega23 ©   (11.04.11 08:32)

А если попадется какой-нибудь район имени Вано Гугашвилли? :) Не уверен, что такие бывают, но мало ли.


 
Максон ©   (2011-04-11 08:41) [6]

Паша, скажи, а попроще ничего нет? Я вчера весь вечер гуглил, так и нашел ничего  путнего.
Можно как-нибудь вырезать окончание и вставить другое?


 
Anatoly Podgoretsky ©   (2011-04-11 08:45) [7]

Это называется падежи.


 
И. Павел ©   (2011-04-11 08:49) [8]

> [6] Максон ©   (11.04.11 08:41)


Если для всех районов достаточно вырезать последние 2 буквы и вставить новое окончание, то можно так:
procedure TForm1.Button1Click(Sender: TObject);
var raion, okonch: string;
begin
 raion := "Московский";
 Delete(raion, length(raion) - 1, 2);
 raion := raion +  "ого";
 Caption := raion;
end;


 
И. Павел ©   (2011-04-11 08:50) [9]

только в вашем варианте не:
raion := raion +  "ого";
а:
raion := raion +  "ому";


 
Максон ©   (2011-04-11 09:29) [10]

Все равно не получается


 
Максон ©   (2011-04-11 09:35) [11]

Ребята, спасибо огромное. Помогли очень.
Разобрался.
Вот код рабочий, если кому надо

procedure TForm1.btn1Click(Sender: TObject);
var
 raion, okonch: string;
begin
raion := edt1.Text;
Delete(raion, length(raion) - 1, 2);
okonch := raion + "ого";
edt2.Text := okonch;

end;
end.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2011.07.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.003 c
15-1301644671
sniknik
2011-04-01 11:57
2011.07.17
Pivot tables in OpenOffice Calc ... формирование программно


2-1302088974
ddd329
2011-04-06 15:22
2011.07.17
Заголовок в Indy корявый


15-1302018111
И. Павел
2011-04-05 19:41
2011.07.17
Ищу роман С. Кинга "Под куполом"


15-1301776193
Юрий
2011-04-03 00:29
2011.07.17
С днем рождения ! 3 апреля 2011 воскресенье


15-1301693932
Германн
2011-04-02 01:38
2011.07.17
ShowFocus у TButton в "Мастерах" ака Wizards





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский