在Arduino中获取子字符串的最后一次出现
就像indexOf()帮助识别字符串中子字符串的第一次出现一样,lastIndexOf()函数帮助识别最后一次出现。这是因为lastIndexOf()执行反向搜索,而indexOf()执行正向搜索。
语法
myString.lastIndexOf(substr)
其中substr是在myString中搜索的子字符串。它可以是字符或字符串。
就像indexOf()一样,此函数也接受可选的from参数,如果您希望反向搜索从特定索引开始。
语法
myString.lastIndexOf(substr, from)
与indexOf()一样,此函数要么返回字符串中子字符串的最后一个索引,要么在找不到匹配项时返回-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.lastIndexOf(substr1));
Serial.println(s1.lastIndexOf(substr2));
Serial.println(s1.lastIndexOf(substr1, 3));
}
void loop() {
// put your main code here, to run repeatedly:
}输出
串口监视器输出如下所示:

如您所见,在第一种情况下,返回子字符串的最后一个索引(索引从0开始)。在第二种情况下,由于未找到匹配项,因此返回-1。在第三种情况下,因为我们要求Arduino从索引3开始反向扫描,所以返回下一个匹配项的索引。
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP