8.х Убрать из строки все символы кроме букв и цифр

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Euronymous, 16 дек 2014.

  1. antares
    Offline

    antares Опытный в 1С

    Регистрация:
    30 ноя 2006
    Сообщения:
    340
    Симпатии:
    7
    Баллы:
    29
    Код:
    Процедура КнопкаВыполнитьНажатие(Кнопка)
        // Вставить содержимое обработчика.
        текСтрока = "ывфывфывфываывафыва";
        шаблон = "ы";
        результат ="";
        Для инд =1 по СтрДлина(текСтрока) цикл
            Если Найти(шаблон,Сред(текСтрока,инд,1))=0 тогда
                результат = результат + Сред(текСтрока,инд,1);
            КонецЕсли;
        КонецЦикла;
        Сообщить(результат);  
    КонецПроцедуры
    
    работает
    Код:
    Процедура КнопкаВыполнитьНажатие1(Кнопка)
        текСтрока = "ывфывфывфываывафыва";
        шаблон = "ы";
        Для инд =1 по СтрДлина(шаблон) цикл       
            текСтрока = СтрЗаменить(текСтрока,Сред(шаблон,инд,1),"");
        КонецЦикла;
        Сообщить(текСтрока);
    КонецПроцедуры
    так кажется изящней, по идее alexburn; тоже работает
    Последнее редактирование: 16 дек 2014
    Euronymous нравится это.
  2. TopicStarter Overlay
    Euronymous
    Offline

    Euronymous Опытный в 1С

    Регистрация:
    19 фев 2014
    Сообщения:
    206
    Симпатии:
    0
    Баллы:
    26
    Код:
        МассивЛишнихСимволов = Новый Массив;
        Макет  = ПолучитьОбщийМакет("МакетЛишнихСимволов");
        n = 1;
        Пока n < Макет.ВысотаТаблицы Цикл
            МассивЛишнихСимволов.Добавить(Макет.Область(n, 1).Текст);
            n = n + 1;
        КонецЦикла;
      
        НаименованиеТМЦ = СтрЗаменить(СокрЛп(НаименованиеТМЦ), " ","");
        Для Каждого Строка из МассивЛишнихСимволов Цикл
            НаименованиеТМЦ = СтрЗаменить(СокрЛп(НаименованиеТМЦ), Строка,"");
        КонецЦикла;
        Возврат НаименованиеТМЦ;
    Сделал таким макаром: в макете заполняем символы, которые нам не нужны, потом в цикле их удаляем из строки.
  3. antares
    Offline

    antares Опытный в 1С

    Регистрация:
    30 ноя 2006
    Сообщения:
    340
    Симпатии:
    7
    Баллы:
    29
    а почему именно макет?
  4. TopicStarter Overlay
    Euronymous
    Offline

    Euronymous Опытный в 1С

    Регистрация:
    19 фев 2014
    Сообщения:
    206
    Симпатии:
    0
    Баллы:
    26
    Чтобы пользователь мог сам указывать что нужно исключать, не ковыряясь в коде)
  5. antares
    Offline

    antares Опытный в 1С

    Регистрация:
    30 ноя 2006
    Сообщения:
    340
    Симпатии:
    7
    Баллы:
    29
    я к тому, не проще ли через поле ввода формы? функционал работы пользователя с макетом тоже прийдется описывать, а функция замены все равно в интерфейсе какойто формы будет, в крайнем случае запилить форму настроек с полем ввода под ввод шаблона; вобщем то конечно "на вкус и цвет.." - почему бы не макет))

Поделиться этой страницей