|
Замена символа текста в русской раскладке на символ текста в ангийской раскладке | ☑ | ||
---|---|---|---|---|
0
Xsander
21.03.13
✎
12:26
|
Требуется осуществлять поиск эл.справочника по ревизиту "СпецКод", который заполняют 1-2 сотрудника., пример кода - "Е1236ВС".
Так вот основная проблема в определении раскладки букв - английские бурвы выглядят как и русские, - как при вводе заменить буквы на соответствующие буквы в русской расскладке? Нет ли случаем готового решения (процедуры или функции) или только писать, что-то вроде: Если НомерСимвола.КодСимвол=43 тогда символ заменит на "смвол по коду()" |
|||
1
acsent
21.03.13
✎
12:28
|
Тут писанины на 5 мин
|
|||
2
Лефмихалыч
21.03.13
✎
12:28
|
стрзаменить()
|
|||
3
acsent
21.03.13
✎
12:29
|
хотя за 500 р сделаю
|
|||
4
Волшебник
21.03.13
✎
12:29
|
неужели среди 26 английских букв и 33 русских букв так сложно найти пересечения?
ABCDEFGHIJKLMNOPQRSTUVWXYZ АВС Е Н К М ОР Т ХУ |
|||
5
Лефмихалыч
21.03.13
✎
12:29
|
vbscripr.regexp::repalce
|
|||
6
Волшебник
21.03.13
✎
12:29
|
|
|||
7
MadHead
21.03.13
✎
12:29
|
Вообще заменять лучше перед записью элемента справочника.
|
|||
8
Xsander
21.03.13
✎
12:41
|
1)Писать тут и впрямь быстро
4)не сложно - (5) - точно,можно и так Вдруг есть оператор на такое дело - что то вроде ПолучитьРусскийсимволПокодуСимвола 7)спасибо всем) спасибо, сейчас напишу и выложу код |
|||
9
Xsander
21.03.13
✎
17:02
|
Функция ЗаменитьАнглийскиеБуквыНаРусские(Текст)
Результат=СокрЛП(СтрЗаменить(Текст,Символ(99),Символ(1089))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(97),Символ(1072))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(111),Символ(1086))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(101),Символ(1077))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(120),Символ(1093))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(112),Символ(1088))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(121),Символ(1091))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(107),Символ(1082))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(98),Символ(1073))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(104),Символ(1085))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(109),Символ(1084))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(110),Символ(1085))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(116),Символ(1090))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(67),Символ(1057))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(65),Символ(1040))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(66),Символ(1042))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(79),Символ(1054))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(69),Символ(1045))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(88),Символ(1061))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(80),Символ(1056))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(84),Символ(1058))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(72),Символ(1053))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(77),Символ(1052))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(75),Символ(1050))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(89),Символ(1059))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(82),Символ(1071))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(85),Символ(1048))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(83),Символ(1057))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(68),Символ(1044))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(70),Символ(1060))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(71),Символ(1043))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(74),Символ(1046))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(76),Символ(1051))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(90),Символ(1047))); Результат=СокрЛП(СтрЗаменить(Результат,Символ(78),Символ(1048))); Возврат Текст; КонецФункции |
|||
10
Mort
21.03.13
✎
17:08
|
Ну по крайней мере пробелов справа и слева не будет 146%.
|
|||
11
Sidney
21.03.13
✎
17:23
|
(9)Если рассматривать твое решение:
На входе проверка на тип нужна - это раз. Вторая проверка - есть ли вообще в строке символы, третья есть ли среди них иностранные. Это если в лоб первое приближение. Затем замеряешь скорость. Если устраивает - оставляешь как есть, если нет - ищешь другое решение. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |