8.х Строка без букв

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем slaay, 23 июл 2010.

  1. TopicStarter Overlay
    slaay
    Offline

    slaay Опытный в 1С

    Регистрация:
    27 мар 2009
    Сообщения:
    162
    Симпатии:
    0
    Баллы:
    26
    есть строка "1ф-2п-3н-4г-6л"

    есть ли такая функция в 1с которая сделает её такой например "1-2-3-4-6"
    или "12346"
  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    В 1С - нет, тут только если перебором...
  3. TopicStarter Overlay
    slaay
    Offline

    slaay Опытный в 1С

    Регистрация:
    27 мар 2009
    Сообщения:
    162
    Симпатии:
    0
    Баллы:
    26
    всмысле сделать так:

    Найти (Строка, "л");
    Найти (Строка, "ч");

    ?
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Воспользуйтесь функцией
    Код:
    КодСимв
    
    
    0 это 48
    1 это 49
    ...
    9 это 57

    все что не входи в диапазон - в топку
  5. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Совсем уже забыли старые и добрые циклы :unsure:
    Код:
    	ИзменяемаяСтрокаПерем = СокрЛП(ИзменяемаяСтрока);
    
    НоваяСтрока = "";
    
    МассивДопустимыхСимволов = Новый Массив();
    
    МассивДопустимыхСимволов.Добавить("1");
    МассивДопустимыхСимволов.Добавить("2");
    МассивДопустимыхСимволов.Добавить("3");
    МассивДопустимыхСимволов.Добавить("4");
    МассивДопустимыхСимволов.Добавить("5");
    МассивДопустимыхСимволов.Добавить("6");
    МассивДопустимыхСимволов.Добавить("7");
    МассивДопустимыхСимволов.Добавить("8");
    МассивДопустимыхСимволов.Добавить("9");
    МассивДопустимыхСимволов.Добавить("0");
    
    i = 1;
    
    Пока НЕ i = СтрДлина(ИзменяемаяСтрокаПерем) + 1 Цикл
    
    Символ = Сред(ИзменяемаяСтрокаПерем, i, 1);
    
    Если НЕ МассивДопустимыхСимволов.Найти(Символ) = Неопределено Тогда
    НоваяСтрока = НоваяСтрока + Символ;
    КонецЕсли;
    
    i = i + 1;
    
    КонецЦикла;
    

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