Может кому пригодиться, чтобы не запариваться - готовая функция транлитерации со всякими исключениями и окончаниями:
Транслитерация русского алфавита латиницей
SQL.ru - Есть ли у кого готовая функция перевода (транслит) с руского на английский
Всем пока.
У кого есть наработки для FPD26 под Windows10 пишите!
FUNCTION translitВот ссылки, что мне помогли в работе:
parameters str
private _s, _upper
_s=str
_upper=(_s=upper(_s))
*Окончания
_s=MYSTRTRAN(_s,'АЙ','AY')
_s=MYSTRTRAN(_s,'ЕЙ','EY')
_s=MYSTRTRAN(_s,'ЁЙ','EY')
_s=MYSTRTRAN(_s,'ИЙ','IY')
_s=MYSTRTRAN(_s,'ЮЙ','IUY')
_s=MYSTRTRAN(_s,'ЯЙ','AY')
_s=MYSTRTRAN(_s,'ИЯ','IA')
_s=MYSTRTRAN(_s,'ОЙ','OY')
_s=MYSTRTRAN(_s,'ЫЙ','UY')
_s=MYSTRTRAN(_s,'ЭЙ','YY')
_s=MYSTRTRAN(_s,'ЬЯ','IA')
_s=MYSTRTRAN(_s,'ЬЕ','YE')
_s=MYSTRTRAN(_s,'ЬЁ','YE')
_s=MYSTRTRAN(_s,'ЬА','IA')
_s=MYSTRTRAN(_s,'ЬИ','YI')
_s=MYSTRTRAN(_s,'ЬО','YO')
_s=MYSTRTRAN(_s,'ЬУ','YU')
*Исключения
_s=MYSTRTRAN(_s,'Жд','Zd')
_s=MYSTRTRAN(_s,'Кс','X')
_s=MYSTRTRAN(_s,'Ж','Zh')
_s=MYSTRTRAN(_s,'Ё','Yo')
_s=MYSTRTRAN(_s,'Х','Kh')
_s=MYSTRTRAN(_s,'Ц','Ts')
_s=MYSTRTRAN(_s,'Ч','Ch')
_s=MYSTRTRAN(_s,'Ш','Sh')
_s=MYSTRTRAN(_s,'Щ','Shch')
_s=MYSTRTRAN(_s,'Ю','Iu')
_s=MYSTRTRAN(_s,'Я','Ia')
*Правила
_s=CHRTRAN(_s,;
"АБВГДЕЗИЙКЛМНОПРСТУФЫЭабвгдезийклмнопрстуфыэЪЬъь",;
"ABVGDEZIIKLMNOPRSTUFYEabvgdeziiklmnoprstufye")
RETURN IIF(_upper,upper(_s),_s)
FUNCTION MYSTRTRAN
param _stroka, _chto, _nachto
private _temp
_temp=_stroka
_temp=strtran(_temp,_chto,_nachto)
_temp=strtran(_temp,lower(_chto),lower(_nachto))
_temp=strtran(_temp,upper(_chto),upper(_nachto))
RETURN _temp
Транслитерация русского алфавита латиницей
SQL.ru - Есть ли у кого готовая функция перевода (транслит) с руского на английский
Всем пока.
У кого есть наработки для FPD26 под Windows10 пишите!