|
Парсер форматной строки хочу
|
Я
|
|
Garykom 22.03.20 - 22:21 | Понадобился сабж для анализа/парсинга форматной строки.
В смысле на входе есть форматная строка (которая как в функции "Формат" и "Конструктор форматной строки").
И надо разобрать программно сколько в ней указано знаков после запятой, какой разделитель и т.д.
Самому ваять гм, может уже готовая функция есть где?
Которая структуру возвращает по входящей форматной строке. |
NcSteel 1 - 22.03.20 - 22:27 | А через выполнить не проще?
|
Garykom 2 - 22.03.20 - 22:31 | ( 1) Думаю ты не понял.
Мне надо редкостный изврат сделать в плане показывать числа целые без нулей сзади, а вот если дробные то с нужным числом знаков после запятой до последнего значащего.
1,000 надо показать как 1
1,0100000 надо показать как 1,01
1,0000000 надо показать как 1
1,1000000 как 1,1
и т.д. |
Garykom 3 - 22.03.20 - 22:32 | ( 2)+ И не просто показать а свой диалог ввода наваять в т.ч. дробных чисел |
NcSteel 4 - 22.03.20 - 22:37 | ( 2) Ты говоришь, что есть форматная строка, которую надо разобрать. Но зачем непонятно.
И зачем разбирать, если просто возьми число и по форматной строке получи число строкой. И показывай пользователю |
Garykom 5 - 22.03.20 - 22:42 | (4) Есть форматная строка "ЧДЦ=3; ЧРД=,"
Мне надо узнать что КоличествоЗнаков=3 и что РазделительДробной="," остальное не важно.
Парсер готовый есть? |
Garykom 6 - 22.03.20 - 22:43 | ( 5)+ Потому что я буду динамически менять ФорматРедактирования для поля, сам конструируя форматную строку по нужным параметрам. |
Сияющий в темноте 7 - 22.03.20 - 23:04 | Я делал проще,везде,где числа использовал тип Число:Целая.Дробная
и писал преобразование в конструктор описания типа и обратно-остальное,нафиг не нужно,в принципе,так как форматная строка задает много чего лишнего,например,как выводить ноль.
|
takefive 8 - 22.03.20 - 23:12 | НСтр("ЧДЦ=3; ЧРД=,", "ЧРД")
|
RomanYS 9 - 22.03.20 - 23:48 | |
Garykom 10 - 22.03.20 - 23:54 | ( 8) Грязный хак.
Но надо проверить что возвращает если нет такого "кода языка".
И очень некрасиво если все "коды языков" = параметрам в форматной строке пробовать получить. |
RomanYS 11 - 23.03.20 - 00:00 | ( 10)
1. Возвращает пустую строку
2. Не понял |
Garykom 12 - 23.03.20 - 00:07 | ( 11) 2. Я не знаю сколько там параметров в форматной строке, мне надо все получить.
с НСтр придется все перепробовать:
ЧРД = НСтр("ЧДЦ=3; ЧРД=,", "ЧРД");
ЧДЦ = НСтр("ЧДЦ=3; ЧРД=,", "ЧДЦ");
//и т.д. |
D_E_S_131 13 - 23.03.20 - 11:27 | ( 10) СтрРазделить() вроде бы не хак, а как раз для этого. |
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать
новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более
2000 человек.