Страница 2 из 2

Разбор содержимого строки

Добавлено: 12.01.2019{, 20:13}
Ingwar
Блок для вычленения нужной информации между заданным разделителем из СМС, с СОМ порта или SD.
Содержит 5 выходов.
На пример строка на входе jjjeee123;1r23;234;we;asd;5;7775 в качестве разделителя выбран символ ";"

На выходах блока будут соответственно:
1r23
234
we
asd
5

Структура очень простая и легко можете переделать на большее или меньшее кол-во.
Для сравнения (при создании блока с нужным кол-вом выходов), в качестве примера, прилагаю блок на 3 выхода.

Если будете использовать блок с избыточным кол-вом выходов, будьте готовы к "мусору" на неиспользуемых выходах.
pars_5_out_(CODE).ubi
(26.91 КБ) 258 скачиваний
pars_3_out_(CODE).ubi
(25.13 КБ) 245 скачиваний
parsing.flp
(87.67 КБ) 266 скачиваний

Разбор содержимого строки

Добавлено: 13.11.2019{, 14:04}
KulibinOrsk
Phazz, переводил, записывал. но что то не так. на дисплее вовсе не те цифры были.

Разбор содержимого строки

Добавлено: 13.11.2019{, 15:05}
Dryundel
KulibinOrsk писал(а):
13.11.2019{, 14:04}
Phazz, переводил, записывал. но что то не так. на дисплее вовсе не те цифры были.
KulibinOrsk, размерности long и даже unsigned long не хватает на 10 знаковый номер.
Думаю надо делить номер на части, а потом собирать.

Разбор содержимого строки

Добавлено: 13.11.2019{, 16:27}
Sancho
KulibinOrsk, Александр, я как-то выкладывал блок для eeprom, позволяющий записывать рецепты.
Его немного допилить под string, и получится всё, что нужно.
Я телефоны, фамилии и имена храню в 24Cхх, по I2C.
При приёме из уарт делаю поиск по моей "записной книжке".
Там-же, в книжке, каждому прописаны уровни доступа. Блок на форуме.
Да много чего есть у меня.... :) А коньячёк заканчивается :helpme:

Разбор содержимого строки

Добавлено: 13.11.2019{, 17:07}
Dryundel
Sancho писал(а):
13.11.2019{, 16:27}
я как-то выкладывал блок для eeprom, позволяющий записывать рецепты
Чет с ходу не нашел. А интересно. :)

Разбор содержимого строки

Добавлено: 13.11.2019{, 17:16}
Sancho
Dryundel писал(а):
13.11.2019{, 17:07}
Чет с ходу не нашел. А интересно. :)
Вот тут, наверное :)

Разбор содержимого строки

Добавлено: 13.11.2019{, 18:57}
KulibinOrsk
Sancho, мне же хранить то надо максимум 3 номера и то в перспективе. Сейчас только один номер. Из-за этого городить микруху памяти жесть )))
Насчет коньячка намек понятен, возможно скоро будет вопрос размером на коньяк :smile225:

Разбор содержимого строки

Добавлено: 13.11.2019{, 19:05}
Sancho
KulibinOrsk писал(а):
13.11.2019{, 18:57}
Sancho, мне же хранить то надо максимум 3 номера и то в перспективе. Сейчас только один номер. Из-за этого городить микруху памяти жесть )))
Я не о микрухе, я о блоке по ссылке.

Разбор содержимого строки

Добавлено: 20.11.2019{, 07:19}
KulibinOrsk
Sancho, каюсь не допилю сам ))
А надо то стринг типа "+7922620хххх" уложить в еепром и при необходимости считывать в переменную "стринг"

Разбор содержимого строки

Добавлено: 20.11.2019{, 10:30}
rw6cm
KulibinOrsk писал(а):
20.11.2019{, 07:19}
не допилю сам ))
И что там пилить? если блоками флп элементарно сделать.
N тел в EEPROM.flp
(79.64 КБ) 100 скачиваний

Разбор содержимого строки

Добавлено: 20.11.2019{, 11:15}
KulibinOrsk
rw6cm, вот спасибки!
Вопрос снят. Пойду изучать GetSubstring.

Разбор содержимого строки

Добавлено: 20.11.2019{, 11:32}
Sancho
KulibinOrsk, зря делал?
Но надеюсь, кому нибудь, да пригодится....

Отправлено спустя 1 минуту 1 секунду:
rw6cm, Володя а два, три, десять?

Разбор содержимого строки

Добавлено: 20.11.2019{, 11:53}
KulibinOrsk
Sancho, так утром сегодня зашел по той ссылке - не было стринг-еепром. Ну и подумал что мне делегировали "допилить" ) а деваться некуда - переменная затерлась (утром на улице -24 уже и акб подсел) и уже нужно было с еепром решать ) твою версию ща тоже проверим.

Разбор содержимого строки

Добавлено: 20.11.2019{, 13:03}
rw6cm
Sancho писал(а):
20.11.2019{, 11:33}
а два, три, десять?
До десятка большой сложности не вижу,
1_2_3 тел в EEPROM.flp
(358.69 КБ) 127 скачиваний

больше конечно муторно все это набирать и не запутаться,
а если еще и буквы, то и сам блок бы сделал ))
Здесь есть один нюанс, при разбивке номера если вторая часть начинается с ноля,
то при конвертировании он исчезает, в проекте сделал как это обойти
п.с походу темку надо разделить и перенести в соответствующую

Разбор содержимого строки

Добавлено: 20.11.2019{, 13:20}
KulibinOrsk
rw6cm, у меня правильно начал отрабатывать только когда прописал так:
в первом гетстринг от 2 до 9
во втором гетстинг от 9 до 12
т.е. как было 2-8 и 8 ... не корректно было

Разбор содержимого строки

Добавлено: 20.11.2019{, 13:32}
rw6cm
KulibinOrsk,
в проекте 2-7 а не 8, и 7до конца.
но как у вашей переменной записан номер я не знаю
возможно есть пробелы или еще что, надо смотреть и отсчет вести свой
к тому же делить число номера можно не пополам а как удобно.
Если номера одного провайдера, можно сохранять только вторую часть после (допустим +7918)

Разбор содержимого строки

Добавлено: 05.07.2020{, 12:02}
ivanpost
AlexCrane писал(а):
19.01.2019{, 10:01}
Ingwar, rw6cm,
Для тех кто не хочет заморачиваться, то-же самое что и выше в посту, только на ПБ

В лесу родилась елочка ПБ.flp
Игорь, так более правильно парсить, чем искать вложение между разделителями :yes:
Подскажите, какие в этом блоке переменные можно сделать локальными?

Разбор содержимого строки

Добавлено: 06.07.2020{, 06:27}
AlexCrane
ivanpost, Я думаю все...

Разбор содержимого строки

Добавлено: 06.07.2020{, 22:04}
ivanpost
AlexCrane писал(а):
06.07.2020{, 06:27}
ivanpost, Я думаю все...
Очень полезный блок! Уж сделайте все переменные локальными своей рукой. А то он без нужды всю память займет ), если 5 раз вставить ;)