Использование регулярных выражений

Arduino:
Использование регулярных выражений

Как:

Arduino не имеет встроенной поддержки regex, но вы можете имитировать простые проверки шаблонов. Для более сложных задач рассмотрите возможность использования библиотеки regex, такой как Regexp.

#include <Regexp.h>

void setup() {
  Serial.begin(9600);
  
  MatchState ms;
  char result;
  
  ms.Target ("Привет, мир!");
  result = ms.Match ("(мир)");

  if (result > 0) {
    char captured[10]; // Убедитесь, что это достаточно большой размер для вашего совпадения
    ms.GetCapture (captured, 0);
    Serial.print("Совпадение найдено: ");
    Serial.println(captured);
  } else {
    Serial.println("Совпадений не найдено.");
  }
}

void loop() {
  // Здесь делать нечего.
}

Пример вывода:

Совпадение найдено: мир

Глубже

Регулярные выражения происходят из теоретической информатики и существуют с 1950-х годов. Perl и другие языки имеют сильную реализацию regex, но на Arduino ресурсы ограничены, поэтому нет встроенной поддержки. Библиотеки вроде Regexp могут стать вашим спасением — они берут на себя часть нагрузки, но помните, что они могут быть ресурсоемкими для меньших микроконтроллеров.

Смотрите также

Проверьте эти ссылки для получения дополнительной информации: