7.7 Сортировка символов в строке

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Алёна, 4 мар 2009.

  1. TopicStarter Overlay
    Алёна
    Offline

    Алёна

    Регистрация:
    8 сен 2008
    Сообщения:
    40
    Симпатии:
    0
    Баллы:
    1
    Необходимо получив строку проверить её на наличие символов и цифр и в результате получить только цифры, отсеяв из строки символы! Подскажите пожалуйста как это сделать! :unsure:
  2. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    Можно так:
    Код:
    Функция ПолучитьЦифрыИзСтроки(Строчка)
    ШаблонПоиска = "0123456789";
    Результат = "";
    Для А = 1 По СтрДлина(Строчка) Цикл
    СимволСтроки = Сред(Строчка, А, 1);
    Если Найти(ШаблонПоиска, СимволСтроки)>0 Тогда
    Результат = Результат+СимволСтроки;
    КонецЕсли;
    КонецЦикла;
    Возврат Результат;
    КонецФункции
    
    
    Можно коды символов проверять, можно список с разрешенными символами создать... Куча вариантов, короче:)
  3. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Лучше делать через код Символов
    Код:
    ШаблонПоиска = "0123456789"; // --  разве функция "Найти" не будет искать целиком строку?  
    
    
  4. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Код:
    Процедура Сформировать()
    НоваяСтрока="";
    Для сч=1 По СтрДнина(Стр) Цикл // Стр это наша строка;
    С=Сред(Стр,Сч,1);
    Если (КодСимв(С)>=49)И(КодСимв(С)<=57) Тогда
    НоваяСтрока=НоваяСтрока+С;
    КонецЕсли;
    КонецЦикла;
    // новаяСтрока - полученная строка цифр.
    КонецПроцедуры
    
    
    
  5. ASh
    Offline

    ASh Опытный в 1С

    Регистрация:
    10 сен 2008
    Сообщения:
    568
    Симпатии:
    0
    Баллы:
    26
    В данном случае ищется символ в шаблоне поиска, а не наоборот. Да и шаблон тут нагляднее, чем коды для новичка.
  6. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    я перепутал параметры местами :unsure:

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