Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2025, 12:20

Новая строка предложения

Автор Дмитрий Корнилов, 13 апр 2025, 21:25

0 Пользователей и 1 гость просматривают эту тему.

Дмитрий Корнилов

Здравствуйте, пожалуйста помогите, реализовать код так, чтоб можно было ввести любое предложение, которое после точки, следующая предложение переходило на другую строку, а также чтоб сообщение выводили каждую новую строку. Как на скриншоте ниже(где условие задачи), а также результат что у меня получилось
&НаКлиенте
Процедура ПримерVI(Команда)
   
    // Исходный многострочный текст
    ИсходныйТекст = "Травка зеленеет. Солнышко блестит. Ласточка с весною в сени к нам летит.";
   
    // Разбиваем текст на предложения по точкам
    Предложения = СтрРазделить(ИсходныйТекст, ".", Ложь);
   
    // Очищаем массив от пустых строк и лишних пробелов
    Для i = 0 По Предложения.Количество() - 1 Цикл
        Предложения[i] = СокрЛП(Предложения[i]);
        Если Предложения[i] = "" Тогда
            Предложения.Удалить(i);
            i = i - 1; // Корректируем индекс после удаления
        КонецЕсли;
    КонецЦикла;
   
    // Формируем результат с нумерацией предложений
    Результат = "";
    Для i = 0 По Предложения.Количество() - 1 Цикл
        НомерПредложения = i + 1;
        Результат = Результат + НомерПредложения + "-е предложение - " + Предложения[i] + "." + Символы.ПС;
    КонецЦикла;
   
    // Добавляем общую информацию о количестве предложений
    Результат = "В тексте " + ИсходныйТекст + " " + Предложения.Количество() + " предложений" + Символы.ПС + Результат;
   
    // Выводим результат (например, в сообщение или на форму)
    Сообщить(Результат);
КонецПроцедуры

sali

Цитата: Дмитрий Корнилов от 13 апр 2025, 21:25// Разбиваем текст на предложения по точкам     Предложения = СтрРазделить(ИсходныйТекст, ".", Ложь);

попробуй вместо Разделить() Найти() этот разделяющий символ

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск