Как удалить из строки все символы кроме цифр? #698919


#0 by meegor
Добрый день, возник вот такой срочно вопрос, спасибо!
#1 by Wobland
перебором
#2 by 1Сергей
можно без цикла
#3 by Wobland
регэксп?
#4 by 1Сергей
#5 by 1Сергей
*
#6 by 1Сергей
писал на коленке
#7 by Wobland
(Лев(Строка,1)<="9") во. чувствую, что-то не сходится ;)
#8 by alexei366
Жесть. Мож 1 цикл по всем символам, и смотреть на результат функции "КодСимвола" (точно не помню там какие коды для 0-9), ну и если код попадает в диапазон кодов цифр то добавлять в результат, а в конце результат на "Возврат"
#9 by 1Сергей
абажаю рекурсию. хотя, она тут нафиг не нужна :)
#10 by 1Сергей
см ,
#11 by 1Сергей
а коды 48 и 57. Это я помню, но так нагляднее
#12 by alexei366
Да лучше уж цикл чем стек вызовов функций.
#13 by badboychik
}
#14 by 1Сергей
это ты с сями попутал
#15 by Wobland
Для й=0 По 256 Цикл Если й<=48 и й>=57
#16 by badboychik
лень писать валидный 1С, переводи с псевдокода
#17 by Torquader
#18 by 1Сергей
конкурс на самый медленный код считается открытым? :)
#19 by Wobland
ага. 256 - это я недобрал
#20 by Torquader
А у нас символы не Unicode разве ?
#21 by Wobland
вово
#22 by alexei366
#24 by Torquader
На самом деле, если длина строки более 64Кб, то метод не очень-то и медленным покажется.
#25 by Wobland
не факт, что это - самый медленный вариант. незачёт
#26 by badboychik
#27 by Torquader
Надо чтобы пользователю, который вместо цифр ввёл то, чего не должно быть, показывалась картинка с результатом, которого тоже быть не должно - тогда будут думать.
#28 by badboychik
так норм?
#29 by Серго62
СтрЗаменить("Строка1234567890", "0", "") ...
#30 by 1Сергей
подогнал под ответ. Переменная У там в наху? не нужна
#31 by Wobland
25й кадр? бойцовский клуб вспоминаетяс
#32 by badboychik
а вообще самый правильный способ re.replace(str,"");
#33 by 1Сергей
Прав . У нас, если не проставлены коэффициенты у ЕИ товаров, то количество считается как 9999999999999999999 и этому есть логичное объяснение. Когда Коэф = 0 у одной из позиций, то это не сразу видно в большой портянке документа, при печати, итоговая сумма похожа на правду. Но, когда итоговая сумма = 99999999999999999, то чел сразу понимает, что в документе что-то не так
#34 by Адинэснег
Если Не СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(ИсхСтрока) Тогда
#36 by Torquader
А машина это сама проверить и сказать пользователю не может ?
#37 by 1Сергей
нельзя
#38 by 1Сергей
агамс, теперь давай функцию ЭтоЧисло :)
#39 by Torquader
Почему нельзя ?
#40 by 1Сергей
требование бизнеса.
#41 by Torquader
Лучше один раз объяснить, почему так делать нехорошо, чем реализовывать бредовую идею.
#42 by 1Сергей
не ты ли в предложил аналогичный вариант?
#43 by Wobland
а по-моему имеет право на жизнь. изящненько так ;)
#44 by Torquader
Ну, можно ещё и минус пририсовать - если в графе минус, то явно что-то в "консерватории исправить надо".
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С