在 Arduino 中获取字符串中子字符串的第一次出现
Arduino 中的 **indexOf()** 函数从开头扫描字符串,并返回字符串中指定子字符串的第一个索引。语法如下:
语法
myString.indexOf(substr)
其中 **substr** 是要搜索的子字符串。它可以是 **字符** 或 **字符串** **类型**。
可以选择从不同的起始点开始搜索,在这种情况下,语法如下:
语法
myString.indexOf(substr, from)
其中 from 是搜索应开始的索引。此函数返回字符串中子字符串第一次出现的索引,如果未找到匹配项,则返回 -1。
示例
void setup() { // put your setup code here, to run once: Serial.begin(9600); Serial.println(); String s1 = "Mississippi"; String substr1 = "is"; String substr2 = "os"; Serial.println(s1.indexOf(substr1)); Serial.println(s1.indexOf(substr2)); Serial.println(s1.indexOf(substr1, 3)); } void loop() { // put your main code here, to run repeatedly: }
输出
串口监视器输出如下所示:
如您所见,在第一种情况下,打印了索引 1(计数从 0 开始)。在第二种情况下,由于未找到匹配项,因此打印了 -1。在第三种情况下,我们告诉 Arduino 从索引 3 开始搜索。因此,下一个匹配项在索引 4 处找到,并打印出来。
广告