Транслитерация из латиницы в кириллицу

02.07.15

Разработка - Универсальные функции

Обработка (пример) для перевода текста (в основном, имен собственных) из латиницы в кириллицу.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Транслитерация
.epf 8,71Kb ver:1.0
56 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Доброго времени суток, коллеги!  Не так давно, в работе над одним из проектов, возникла необходимость переводить текст (имена и фамилии клиентов) из латиницы  в кириллицу, т.к. в выгрузке из платежной системы они были именно в таком виде, а в БД, естественно, они были "вбиты" с кириллическими ФИО.

Функций транслитерации из кириллицы в латиницу - тьма, а вот того, чтобы работало в обратную сторону, я особо не нашел. Пришлось делать самому, вот делюсь, может, кому-то пригодится. На особую оригинальность идеи и алгоритма отнюдь не претендую.   

Вступайте в нашу телеграмм-группу Инфостарт

Транслитерация

См. также

Загрузка и выгрузка в Excel Универсальные функции Программист 1С:Предприятие 8 Россия Бесплатно (free)

Описанный ниже подход позволяет в три шага заполнять формулы в Excel файлы, вне зависимости от ОС сервера (MS Windows Server или Linux). Подход подразумевает отказ от работы с COM-объектом в пользу работы через "объектную модель документа" (DOM).

30.10.2025    4057    Abysswalker    10    

46

Универсальные функции Работа с интерфейсом Программист 1С:Предприятие 8 Бесплатно (free)

Порой необходимо временно отключить расширение 1С, не удаляя его, чтобы не потерять данные. Но в этом случае при каждом запуске всем будет лезть уведомление о неактивном расширении, хотя очевидно, это техническая информация, которой не стоит лишний раз пугать пользователей.

14.05.2025    7604    DeerCven    15    

61

Универсальные функции Программист 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

Благодаря этим пяти строчкам можно больше не заморачиваться с загрузкой из внешних файлов. Пользуюсь везде, всегда и постоянно.

21.05.2024    52402    dimanich70    84    

174

Универсальные функции Программист 1С:Предприятие 8 1C:Бухгалтерия Абонемент ($m)

Задача: вставить картинку из буфера обмена на форму средствами платформы 1С.

1 стартмани

18.03.2024    7644    7    John_d    13    

59

Универсальные функции Программист Стажер 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    66766    atdonya    31    

72

Универсальные функции Программист 1С:Предприятие 8 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    9549    ke.92@mail.ru    17    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Automatik 991 26.02.16 10:53 Сейчас в теме
"Функций транслитерации из кириллицы в латиницу тьма" - можешь выслать хоть одну для 1С8 на isihome@yandex.ru ?
2. Serega-artem 17 26.02.16 15:45 Сейчас в теме
(1) IsiKosta, Ну вот, например.

Функция Транслит(СтрокаТекста) Экспорт
    стрРус = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчш­щъыьэюя";
    стрEng = "A///B///V///G///D///E///YO//ZH//Z///I///Y///K///L///M///N//­/O///P///R///S///T///U///F///H///TS//CH//SH//SHCH'///Y///'//­/E///YU//JA//a///b///v///g///d///e///yo//zh//z///i///y///k//­/l///m///n///o///p///r///s///t///u///f///h///ts//ch//sh//shc­h'///y///'///e///yu//ja//";
    Результат = "";
    Для Сч = 1 по СтрДлина(СтрокаТекста) Цикл
        Символ = Сред(СтрокаТекста, Сч, 1);
        Позиция = Найти(стрРус, Символ);
        Если Позиция = 0 Тогда
            Результат = Результат + Символ
        Иначе
            Результат = Результат + СтрЗаменить(Сред(стрEng, (Позиция - 1) * 4 + 1, 4), "/", "")
        КонецЕсли
    КонецЦикла;
    Возврат Результат
КонецФункции
Показать
3. Bell 37 06.09.18 22:58 Сейчас в теме
Таблица заглавных букв избыточная для фамилий и имен. Буду модифицировать.
4. user1223712 19.05.19 17:28 Сейчас в теме
5. пользователь 08.10.21 20:48
Сообщение было скрыто модератором.
...
6. user1867362 10.03.23 20:02 Сейчас в теме
А в чем идея то? В заголовке указано что обработка именно Имена переводит.
Например Esmeralda по всем правилам будет Есмералда, но мы то знаем что это Эсмеральда.
Или в обработке есть база имен?
Для отправки сообщения требуется регистрация/авторизация