Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2011, 18:58   #1
Noor
Участник клуба
 
Аватар для Noor
 
Регистрация: 01.11.2006
Сообщений: 1,051
По умолчанию проблема в транлитерации заменой

Подскажите как решить проблему при транслитерации заменой,
вот есть функция
Код:
function Translit(const Str: string): string;
const
  RArrayL = 'f,dult`;pbqrkvyjghcnea[wxio]sm''''.z';
  RArrayU = 'F<DULT`;PBQRKVYJGHCNEA[WXIO]SM''''>Z';

  colChar = 33;
  arr: array[1..2, 1..ColChar] of string =
  (('а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж', 'з', 'и', 'й',
    'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф',
    'х', 'ц', 'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я'),
    ('А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ё', 'Ж', 'З', 'И', 'Й',
    'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф',
    'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я'));
var
  i: Integer;
  LenS: Integer;
  p: integer;
  d: byte;
begin
  result := '';
  LenS := length(str);
  for i := 1 to lenS do
  begin
    d := 1;
    p := pos(str[i], RArrayL);
    if p = 0 then
    begin
      p := pos(str[i], RArrayU);
      d := 2
    end;
    if p <> 0 then
      result := result + arr[d, p]
    else
      result := result + str[i];
  end;
end;
все буквы преобразовываются нормально, кроме буквы "z->я" и "Z->Я", они почему то преобразовываются в "z -> A" и "Z -> d&E или вылетает с ошибкой"

---------------------------------
Тему можно закрыть, вопрос решился !(if_then_else рулит)

Последний раз редактировалось Noor; 02.12.2011 в 13:21.
Noor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с заменой символов ZET78 Общие вопросы C/C++ 0 19.09.2010 21:04
Помогите с заменой!!! olview Microsoft Office Excel 7 04.12.2009 10:35
Проблема с поиском и заменой в Word 2003 garik64 Microsoft Office Word 2 09.07.2009 16:04
Поиск с заменой! MAKEDON Общие вопросы C/C++ 1 15.04.2009 22:02
ПРОБЛЕМА с заменой символов в ячейке с помощью кода VBA Maxx Microsoft Office Excel 5 11.11.2008 16:42