搜索和替换文本

Arduino:
搜索和替换文本

How to: (如何操作:)

String originalText = "I like apples.";
String searchText = "apples";
String replacementText = "oranges";
String replacedText;

void setup() {
  Serial.begin(9600);
  // 文本替换
  if (originalText.indexOf(searchText) != -1) {
    replacedText = originalText.substring(0, originalText.indexOf(searchText)) 
    + replacementText 
    + originalText.substring(originalText.indexOf(searchText) + searchText.length());
  } else {
    replacedText = originalText;
  }
  // 显示结果
  Serial.println(replacedText);
}

void loop() {
  // 程序未在loop()部分运行
}

输出结果:

I like oranges.

Deep Dive (深入了解)

Arduino字符串替换的需求不如服务器或者大型程序那般常见,但在处理诸如传感器数据文字处理时往往很有帮助。历史上,文本处理在编程早期阶段起了重要作用,比如UNIX系统中的正则表达式利用以及工具如sed和awk。尽管Arduino核心库不支持这些高级功能,替换功能便是简化版的文本处理例子。你还可以写自定义函数或者使用更高级的库来达到类似sed的效果。

See Also (另请参阅)

该教程侧重于基础用法,希望你对Arduino中的搜索和文本替换方式有所了解。如果需要更高级的处理,可以考虑看看以上链接。