СтрЗаменить() в запросе. #542878


#0 by Molinor
Подскажите, пожалуйста, если ли что-то подобное СтрЗаменить, но только в запросе. Имеем строку: "123-вап-34-па-4". Хотим убрать "-", чтобы получилось "123вап34па4". Это реально сделать? Если реально, то как?
#1 by SalavatUlaev
нет
#2 by Grusswelle
Реально. См. функцию "Подстрока" языка запросов, например.
#3 by Grusswelle
...если ты, конечно, знаешь точно позиции, на которых у тебя дефисы стоят...
#4 by Fragster
бугага
#5 by Wobland
есть же ПОДСТРОКА. если у тебя строка всегда минусы на тех же местах, то взлетит
#6 by Molinor
, Заранее неизвестно где будут "-", сколько их будет...
#7 by Grusswelle
Чего это вы поржать изволили, сударь?
#8 by Grusswelle
Тогда - нереально.
#9 by SalavatUlaev
И я бы поржал, Подстрокой заменить СтрЗаменить
#10 by Molinor
Печально. Ладно, спасибо.
#11 by PR
1. Сложение выборов по максимальному числу символов. 2. СКД. 3. Забить и делать это не в запросе (рекомендуется).
#12 by hhhh
чего это нереально? Вполне реально. ВЫБОР КОГДА ПОДСТРОКА(Поле, 1, 1) = ""-"" ТОГДА КОНЕЦ + ВЫБОР КОГДА ПОДСТРОКА(Поле, 2, 1) = ""-"" ТОГДА + ... + ВЫБОР КОГДА ПОДСТРОКА(Поле, 100, 1) = ""-"" ТОГДА КОНЕЦ
#13 by hhhh
+ блин, наоборот "="  -->  "<>"
#14 by SalavatUlaev
Ты ржашь чтоли ?
#15 by SalavatUlaev
Почему именно 100 ?
#16 by Molinor
, ага, понятно, спасибо. :) Подошёл с другой стороны, получилось менее универсально, но зато раз так в 100 короче. :)
#17 by SalavatUlaev
Давай решение, интересно
#18 by Wobland
если строка фиксированной длины 100, тогда 100 ;)
#19 by Wobland
а что там интересного, обработка результата запроса
#20 by Molinor
Проставляю "-" параметру, который передаю в запрос. Универсальность страдает в том случае, если строку ввели не полностью, тогда "-" могут поставиться не там где надо, и не получим нужного результата. Ежели строку ввели полностью, тогда мы точно знаем где ставить "-".
#21 by Elf_80_lvl
А почему нельзя после того как подставили парамест в запрос сделать Запрос.Текст = СтрЗаменить(Запрос.Текст,"","") ?
#22 by Elf_80_lvl
Прошу прощения, с параметром не получится как в . А сам параметр перед передачей нельзя обработать?
#23 by Molinor
ВЫБРАТЬ   Откуда-то.СтрокаСМинусом ИЗ   Откуда-то Хочу, чтобы по параметру "СтрокаБезМинуса" равному "п34" он находил Откуда-то.СтрокаСМинусом равную "1-2-п-3-4".
#24 by Дантес
да действительно, почему нельзя? ))))) Прикольно получится :)
#25 by PR
А что, "%п%3%4%" не катит? Ну или что там вместо % для любого количества любых символов, если ошибся :))
#26 by Fragster
знаешь, как долго это будет работать? тогда уж "?"
#27 by PR
И сработает? :))
#28 by Fragster
а, фигню написал... Подобно Данная операция проверяет соответствие строки переданному шаблону. Значением оператора ПОДОБНО является ИСТИНА, если значение <Выражения> удовлетворяет шаблону, и ЛОЖЬ в противном случае. Следующие символы в <Строке_шаблона> имеют смысл, отличный от просто очередного символа строки: % - процент: последовательность, содержащая ноль и более произвольных символов; _ - подчеркивание: один произвольный символ; […] - один или несколько символов в квадратных скобках: один символ, любой из перечисленных внутри квадратных скобок. В перечислении могут встречаться диапазоны, например a-z, означающие произвольный символ, входящий в диапазон, включая концы диапазона; [^…] - в квадратных скобках значок отрицания, за которым следует один или несколько символов: любой символ, кроме тех, которые перечислены следом за значком отрицания; Любой другой символ означает сам себя и не несет никакой дополнительной нагрузки. Если в качестве самого себя необходимо записать один из перечисленных символов, то ему должен предшествовать <Спецсимвол>, указанный после ключевого слова СПЕЦСИМВОЛ (ESCAPE). Например, шаблон означает подстроку, состоящую из последовательности символов: буквы А; буквы Б; буквы В; одной цифры; одной из букв а, б, в или г; символа подчеркивания; буквы а; буквы б; буквы в. Причем эта последовательность может располагаться, начиная с произвольной позиции в строке.
#29 by Fragster
хотя непонятно, почему они квантификаторы не прикрутили
#30 by Andry888
что типа того... ВЫБРАТЬ   Откуда-то.СтрокаСМинусом ИЗ   Откуда-то + ну а "%п[-]3[-]4%" параметризовать есесено...
#31 by Molinor
Да конечно, сп украли, негде было прочитать. :( Проблема решается с %, работает не сильно долго, даже если между всеми символами впихивать. Спасибо. Буду искать грабителя!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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