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

лишние слова

Автор sali, 27 мая 2025, 11:18

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

sali

как убрать лишние слова в строке. я запросом получаю основной банковский номер счета , долларовый. но он выглядит так
14523678541259, USD
как мне оставить только цифры ??

Максим75

sali, ну это же наименование счета, а в самом счете явно же есть реквизит, который отвечает за его номер (так же как за МФО банка и т.д.).
Вот его и выводите.
Если нет такого, то сделайте функцию в глобальном модуле, которая со строки вернет только символы чисел (в сети вагон примеров).

может чего еще кто посоветует.

sali

дааа, функцию переписал
ДанныеПечати.Вставить("ДолларовыйСчет", УбратьЛишниеСимволы(Шапка.ОрганизацияОснБанкНомерСчета));

Функция УбратьЛишниеСимволы(Строка1) Экспорт
НовСтрока = "";
ПравильныеСимволы = "0123456789";
Для Сч = 1 по СтрДлина(Строка1) Цикл
ТекСимв = Сред(Строка1, Сч, 1);
Если Найти(ПравильныеСимволы, ТекСимв) > 0 Тогда
НовСтрока = НовСтрока + ТекСимв;
КонецЕсли;
КонецЦикла;

Возврат НовСтрока;

КонецФункции   

antoneus

Или регуляркой) \d+

depb

Зачем так усложнять, если номер счета фиксированное число цифр, достаточно одной строчки

НазваниеСчета = "14523678541259, USD";
ЦифрыСчета = Сред(НазваниеСчета, 1, 14);

Если число цифр разное, можно например,взять кусок текста до запятой и рассчитать количество знаков. Если у вас цифры могут вразнобой, а не только вначале встречаться, тогда да, нужна функция

sali

depb, спасибо большое за еще одно решение, но я уже отправил и не хочется в ней что-либо исправлять

Теги:

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

Рейтинг@Mail.ru

Поиск