Функция СтрокаЛатиницей(Стр) Экспорт
СтрЗамен = "A,B,V,G,D,E,Yo,Zh,Z,I,Y,K,L,M,N,O,P,R,S,T,U,F,H,C,Ch,Sh,Sch,Y,E,Yu,Ya";
СтрКириллица = "А,Б,В,Г,Д,Е,Ё,Ж,З,И,Й,К,Л,М,Н,О,П,Р,С,Т,У,Ф,Х,Ц,Ч,Ш,Щ,,Ы,,Э,Ю,Я";
МасЗамен = СтрРазделить(СтрЗамен, ",");
МасКириллица = СтрРазделить(СтрКириллица, ",");
СтрЛат = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,R,S,T,Q,U,V,X,Y,Z,W";
МасЛат = СтрРазделить(СтрЛат, ",");
Результат = "";
Для сч = 1 по СтрДлина(Стр) Цикл
Симв = Сред(Стр, сч, 1);
Если МасЛат.Найти(ВРег(Симв)) <> Неопределено Тогда
СимвЛат = Симв;
Иначе
Инд = МасКириллица.Найти(ВРег(Симв));
Если Инд = Неопределено Тогда
Продолжить;
КонецЕсли;
Если Симв = МасКириллица[Инд] Тогда //значит исходный символ в верхнем регистре
СимвЛат = МасЗамен[Инд];
Иначе
СимвЛат = НРег(МасЗамен[Инд]);
КонецЕсли;
КонецЕсли;
Результат = Результат + СимвЛат;
КонецЦикла;
Возврат Результат;
КонецФункции
Показать