как правильно использовать строку с двумя неизвестными знаками ?
- Войдите на сайт для отправки комментариев
Пт, 08/12/2017 - 22:21
Точнее нужно отлавливать строку вида: WEBR#12#
так вот на месте 12 могут быть разные цифры. К примеру мне нужно реагировать примерно так:
if (val.index(F("#XX#")) > -1) что использовать для поиска строки с ХХ которые могут быть любые на том месте?
1. Методы класса String -
string.indexOf()
string.substring(from, to)
2. Регулярные выражения. Библа тут.
3. 100 раз | :))))
Точнее нужно отлавливать строку вида: WEBR#12#
так вот на месте 12 могут быть разные цифры. К примеру мне нужно реагировать примерно так:
if (val.index(F("#XX#")) > -1) что использовать для поиска строки с ХХ которые могут быть любые на том месте?
Пока е нашел, что хочу.
Уточню вопрос - в ардуино есть возожность указать например ** где на месте звездочки может быть любой знак?
чтобы для поиска WEBR#12# можно было указать примерно как if (val.index(F("WEBR#**#")) > -1) ??
я могу конечно искать до ** и после **.. но в моем случае это не подходит, долго обьяснять почему.
есть подозрение, что в ардуино как то возможно так сделать.
Пока е нашел, что хочу.
Уточню вопрос - в ардуино есть возожность указать например ** где на месте звездочки может быть любой знак?
"звездочки" и другие метасимволы - частный случай регулярных выражений, упоминавшихся выше.
А вообще, если такая строка в программе одна-две, то проще написать ее анализ самостоятельно, будет значительно экономнее в смысле расхода памяти и быстродействия. чем через бибилиотеки.
Вам всего-то надо найти строку до этих символов, потом пропустить два символа и найти нужную строку после них.
Вам всего-то надо найти строку до этих символов, потом пропустить два символа и найти нужную строку после них.
Только не пропустить два символа, а проверить, что эти символы являются цифрами.
Точнее нужно отлавливать строку вида: WEBR#12#
Писал навскидку, не компилил, принцип, надеюсь, понятен:
Проверки на то, является ли символ после первой # цифрой - можно добавить, если надо.
Уточню вопрос - в ардуино есть возожность указать например ** где на месте звездочки может быть любой знак?
есть подозрение, что в ардуино как то возможно так сделать.
Есть подозрение, что в посте #1 Вам не просто сказали как это делать, а даже дали ссылку на библиотеку, которая это делает.