Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2024, 09:24

Замена символов

Автор mashencev_anton, 17 июл 2014, 14:19

0 Пользователей и 1 гость просматривают эту тему.

mashencev_anton

доброго всем. получил УникИдент документа сократил до первых 8 символо. как заменить буквы имеющиеся в нем на цифры. можно ли при помощи стрЗаменить() менять произвольное количество символов?

pavl_vs

Цитата: mashencev_anton от 17 июл 2014, 14:19
доброго всем. получил УникИдент документа сократил до первых 8 символо. как заменить буквы имеющиеся в нем на цифры. можно ли при помощи стрЗаменить() менять произвольное количество символов?

Можно, указав параметры, если тип УникИдент строковая переменная.

mashencev_anton

дело в том что в строке может содержаться несколько различных букв

для примера

УникИден=23b1h74be9

Kironten

Покажите пару айдишников для примера.

mashencev_anton

УИ=лев(СсылкаНаОбъект.УникальныйИдентификатор(),8);// получаем ebe7bc25

Kironten

Цитата: mashencev_anton от 17 июл 2014, 15:42
23b1h74be9
И как именно вы хотите в таком ид менять буквы на цифры? Конкретную букву на конкретную цифру? Сочетание букв на цифру? Еще как-нибудь?
И еще, какая цель этого действия? Т.е. зачем нужна строка из цифр?

mashencev_anton

Цитата: Kironten от 17 июл 2014, 16:01
Цитата: mashencev_anton от 17 июл 2014, 15:42
23b1h74be9
И как именно вы хотите в таком ид менять буквы на цифры? Конкретную букву на конкретную цифру? Сочетание букв на цифру? Еще как-нибудь?
И еще, какая цель этого действия? Т.е. зачем нужна строка из цифр?
именно так!!

Kironten

Уточните, к чему именно относилась фраза "Именно так!!!", а то сейчас наш разговор выглядит как:
- Что именно выбираем, пироженное, шины, масло или дерево?
- Да!

mashencev_anton

ой сори!!! определенную букву на определенную цифры нужно заменить

Kironten

Легких путей мне в голову не приходит, если честно :D
Я бы наверно сделал перебором.
Т.е. сделать структуру вида "буква" - "цифра". Раз алфавит инглишовый, значит 27 элементов структуры будет.
Ну а дальше циклом:
Для каждого Элемент из Структура Цикл
    УИ = СтрЗаменить(УИ, Элемент.Буква, Элемент.Цифра);
КонецЦикла;

Добавлено: 17 июл 2014, 16:45


Цитата: Kironten от 17 июл 2014, 16:29
Раз алфавит инглишовый, значит 27 элементов структуры будет.
Не, вру, там же наверняка 16-ричное число. Значит только 8 элементов в массиве будет

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск