在 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 處找到,並打印出來。
廣告