Удалить нули в строке #730097


#0 by 13Дима13
добрый вечер. Есть строка вида 00000453099, нужно удалить нули вначале строки. Количество нулей неизвестно, кто какой алгоритм подскажет?
#1 by Casey1984
мда) СтрЗаменить ?
#2 by Кир Пластелинин
в типовых же был механизм. что то аля "ВывестиНомерДокументаДляПечати". Он как раз и обрезал нули в начале.
#3 by МимохожийОднако
Обходи циклом строку с начала, пока есть ноль и отрежь в тот момент, когда в начале останется не ноль.
#4 by Кир Пластелинин
нули могут быть в середине искомого номера
#5 by 13Дима13
нули в середине тоже заменятся
#6 by Casey1984
Ну тады цыклами)
#7 by DexterMorgan
Функция УдалитьПовторяющиесяСимволы(Знач Строка, Знач Символ, Знач Режим = "Слева") Экспорт
#8 by Casey1984
#9 by DexterMorgan
Йо, все бухают, а ты тут программишь)
#10 by DexterMorgan
В типовых все сделано за вас, меьсе
#11 by Casey1984
Не мешай - я изобрел велосипед! ;)
#12 by 0xFFFFFF
Число("1"+Стр)- Pow(10, СтрДлина(Стр)) - не проверял...
#13 by 13Дима13
спасибо!
#14 by Casey1984
ого!)
#15 by DexterMorgan
неблагодарный, в уже все было
#16 by 13Дима13
в 8-ом короче)
#17 by 0xFFFFFF
циклы зло. Зри в корень :)
#18 by DexterMorgan
И че? в универсально, любые символы, справа/слева, а вы все авнокодите заплатками по случаю
#19 by Casey1984
А может тогда Стр = Строка(Число(Стр)) ?
#20 by DexterMorgan
я ваще тут бухаю, нафиг твой корень =)
#21 by 13Дима13
в номере могут встречаться буквы, точки...
#22 by МимохожийОднако
Прикольное уточнение ТЗ к к 21 посту. Ждём продолжения...
#23 by Casey1984
эй - этого не было в условии, я так не играю (
#24 by DS
Прикольно наблюдать сей диалог. Чем тогда поможет , если "могут встречаться буквы, точки..."?
#25 by 13Дима13
продолжение: обратную функцию, есть строка, например 475834, нужно сделать 0000475834.
#26 by mehfk
Для тебя лучший алгоритм: Бери больше, кидай дальше, пока летит - отдыхаешь!
#27 by Casey1984
не буду делать.
#28 by koreav
строка(число("00000453099"))
#29 by DS
+ Можно усложнить условием "количество нулей неизвестно".
#30 by МимохожийОднако
Открой типовую конфигурацию или демо БСП. Там все эти функции есть. Ждёшь, когда другие оттуда цитат надёргают?
#31 by 13Дима13
количество нулей от 0 до 10, максимальная длина строки 10
#32 by DS
Это был сарказм если чо...
#33 by Umga2002
Где то видел Стр=Прав("000000000000000"+Стр,11);
#34 by WebberNSK
Вы на чем разрабатываете? В БСП есть процедуры, которые это делают + во всех типовых "старой" линейки есть такие процедуры
#35 by b_ru
кошмар, вызывать констуктор строки несколько раз лидирующие нули все равно могут остаться Если строка состоит из одних только цифр как в примере, можно преобразовать в число и обратно в строку. а правильное решение:
#36 by b_ru
к : забыл проверку на конец строки
#37 by Casey1984
Кошмар, вызывать конструктор строки несколько раз!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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