检查两个字符串是否相等,同时忽略 Arduino 中的大小写


我们知道 String1.equals(String2) 可以用于找出 Arduino 中的 String1 和 String2 是否相等。但是,此函数区分大小写。因此,如果即使单个字符的情况有所不同,此函数也将返回 false。人们用于对两个字符串执行不区分大小写的比较的一种策略是将两个字符串都转换为小写,然后进行比较。但是,Arduino 有一个用于比较两个字符串而不区分大小写的函数。正如你猜测的那样,该函数是 equalsIgnoreCase

示例

以下给出一个示例实现 -

void setup() {
   // put your setup code here, to run once:
   Serial.begin(9600);
   Serial.println();
   String String1 = "Hello";
   String String2 = "hello";
   if (String1.equals(String2)) {
      Serial.println("String1 equals String2");
   } else {
      Serial.println("String1 doesn't equal String2");
   }

   if (String1.equalsIgnoreCase(String2)) {
      Serial.println("String1 equals String2 if we ignore case");
   } else {
      Serial.println("String1 doesn't equal String2 even if we ignore case");
   }
}
void loop() {
   // put your main code here, to run repeatedly:
}

输出

串口监视器输出如下 -

正如你所料,.equals() 函数返回 false,而 .equalsIgnoreCase() 函数返回 true

更新于: 29-May-2021

763 次浏览

开启你的 职业

完成课程获得认证

开始
广告