Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];




Вниз

Как изменить букву на несколько букв вперёд(по алфавиту)? 


Delphimun   (2001-12-21 14:24) [0]

Как изменить букву на несколько букв вперёд(по алфавиту)?
Например у меня в переменной типа стринг находится буква "A", и мне нужно сдвинуть эту буква скажем на 3 буквы вперёд, чтобы в переменной стала буква "Г".



Alx2   (2001-12-21 14:29) [1]

var ch : char;
begin
ch := "A";
inc(ch,3);
end;



Алексей Петров   (2001-12-21 14:30) [2]

Для латыни - просто добавь :)
char(byte("A")+3);

А для русских - придется массив с алфовитом делать, индекс нскать и затем выбирать последующую.



Alx2   (2001-12-21 14:33) [3]

>Алексей Петров
Можно и так же, если позволяет кодировка.



Anatoly Podgoretsky   (2001-12-21 14:50) [4]

А что делать для "я"



Alx2   (2001-12-21 14:54) [5]

:))
Вот так рождаются философы....
В конце концов кодовая таблица тот же самый алфавит. Только с кучей букв. Дойдя до #255 возратимся к #0 (при однобайтной кодировке, естественно)



MBo   (2001-12-21 15:25) [6]

для русского языка придется, видимо делать
const RuB="АБВГ..."
и
if pos(c,RuB)>0 then c:=RuB[(pos(c,RuB)+3) mod length(RuB) ];





Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.022 c
14-28530          Sir Alex              2001-11-12 19:37  2002.01.10  
клиент DMFC & Sources & CVS


1-28470           JankinDoll            2001-12-21 20:07  2002.01.10  
Как посмотреть выделенный символ в Richedite является символом переноса или нет?


3-28441           Sergey Karagodin      2001-12-10 09:28  2002.01.10  
Как вернуть результат хранимой процедуры?


1-28475           Starkom               2001-12-17 12:30  2002.01.10  
Вопрос о существовании сборщика мусора


3-28444           Kozhanov              2001-12-07 12:57  2002.01.10  
Как