Как преобразовать строку с большими буквами, вида ЗадачаПоПрограммированию в Задача по программированию в 1С
Вариант 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
Функция РазбитьСтр(СтрокаДляРазбора) Экспорт ГотоваяСтрока = Сред(СтрокаДляРазбора, 1, 1); Для Сч = 2 По СтрДлина(СтрокаДляРазбора) цикл ПредыдСимвол = Сред(СтрокаДляРазбора, Сч - 1, 1); ТекущСимвол = Сред(СтрокаДляРазбора, Сч, 1); СледующСимвол = Сред(СтрокаДляРазбора, Сч + 1, 1); Если ВРЕГ(ТекущСимвол) = ТекущСимвол тогда Если ВРЕГ(ПредыдСимвол) <> ПредыдСимвол тогда ГотоваяСтрока = ГотоваяСтрока + " "; Если ВРЕГ(СледующСимвол) <> СледующСимвол тогда ТекущСимвол = НРЕГ(ТекущСимвол); КонецЕсли; КонецЕсли; КонецЕсли; ГотоваяСтрока = ГотоваяСтрока + ТекущСимвол; КонецЦикла; Возврат ГотоваяСтрока; КонецФункции |
Вариант 2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
СписокЗн = Новый СписокЗначений; Для н=КодСимв("А") По КодСимв("Я") Цикл СписокЗн.Добавить(Символ(н)); КонецЦикла; Знач="ЗадачаПоПрограммированию"; ЗначениеВозврата=""; Для н=1 По СтрДлина(Знач) Цикл Симв=Сред(Знач,н,1); Если СписокЗн.НайтиПоЗначению(Симв) <> Неопределено Тогда Симв=" "+Симв; КонецЕсли; ЗначениеВозврата=ЗначениеВозврата+Симв; КонецЦикла; Сообщить(ЗначениеВозврата); |