Функция транслит для 1С Предприятие 8.3
Пример функции:
Функция Транслит(Вход) Экспорт
Коды = Новый Соответствие;
Коды.Вставить("0","0");
Коды.Вставить("1","1");
Коды.Вставить("2","2");
Коды.Вставить("3","3");
Коды.Вставить("4","4");
Коды.Вставить("5","5");
Коды.Вставить("6","6");
Коды.Вставить("7","7");
Коды.Вставить("8","8");
Коды.Вставить("9","9");
Коды.Вставить(" ","-");
Коды.Вставить("ё","yo");
Коды.Вставить("Ё","Yo");
Нач = КодСимвола("А");
Англ = "A" "B" "V" "G" "D" "E" "Zh" "Z" "I" "Y" "K" "L" "M" "N" "O" "P" "R" "S" "T" "U" "F" "Kh" "Ts" "Ch" "Sh" "Shch" "" "Y" "" "E" "Yu" "Ya" "a" "b" "v" "g" "d" "e" "zh" "z" "i" "y" "k" "l" "m" "n" "o" "p" "r" "s" "t" "u" "f" "kh" "ts" "ch" "sh" "shch" "" "y" "" "e" "yu" "ya";
Для К = Нач по КодСимвола("я") Цикл
Коды.Вставить(Символ(К), СтрПолучитьСтроку(Англ, К - Нач + 1));
КонецЦикла;
Выход = "";
Для К=1 по СтрДлина(Вход) Цикл
Бкв = Сред(Вход, К, 1);
Зн = Коды.Получить(Бкв);
Выход = Выход + ?(Зн = Неопределено, "", Зн);
КонецЦикла;
Возврат Выход;
КонецФункции
цифры остаются, буквы транслируются, пробелы в тире, все остальные символы удаляются