Имя: Пароль:
1C
1C 7.7
v7: Вставить символ в середину строки
0 Mafiozaa
 
27.01.21
03:48
Привет, могу ли я как то штатно, вставить символ в центр строки?
НайденныйСимвол = Найти(SGTIN, """");
   Если НайденныйСимвол > 1 Тогда
    СтрЗаменить(SGTIN, """", """""");
    Файл.ДобавитьСтроку("""" + СокрЛП(SGTIN) + """" + ",," + Цена + "," + СуммаНДС);
   КонецЕсли;
Логика какая, в цикле ищу наличие символа (кавычки) ну и если они есть, мне нужно добавить еще одну (следующим символом)
1 Mafiozaa
 
27.01.21
03:50
Проверил через попытку, стр заменить выполняется, но изначальную строку никак не изменяет
2 Cthulhu
 
27.01.21
04:04
SGTIN = СтрЗаменить(SGTIN, """", """""");
3 Cthulhu
 
27.01.21
04:05
ну или вообще без (2) - тупо в одну строку:
Файл.ДобавитьСтроку("""" + СтрЗаменить(СокрЛП(SGTIN),"""","""""") + """" + ",," + Цена + "," + СуммаНДС);
4 Mafiozaa
 
27.01.21
04:08
(3) Да, действительно при каждом вхождении "" в строку добавляет еще одну, то что нужно, благодарь
5 Злопчинский
 
27.01.21
09:07
(4) главное по этой строке повторно потом не пройтись
6 Митяйский
 
27.01.21
09:20
(5) Экранирование кавычек по-любому должно в несколько проходов идти.
7 АЛьФ
 
27.01.21
09:29
2(6) Если уж экранировать кавычки, то тогда уж как-то так:
стр = "Тестовая строка: "" - это кавычка";
стр = ЗначениеВСтроку(стр);
стр = Сред(стр, 12);
стр = Лев(стр, СтрДлина(стр) - 2);