Comparar cadenas en Arduino

Ammar Ali 12 octubre 2023
  1. Compara cadenas usando la función compareTo() en Arduino
  2. Compara cadenas usando la función equals() en Arduino
  3. Compara cadenas usando operadores de comparación en Arduino
Comparar cadenas en Arduino

Este tutorial discutirá la comparación de dos cadenas usando la función compareTo() en Arduino.

Compara cadenas usando la función compareTo() en Arduino

Para comparar dos cadenas en Arduino, podemos usar la función compareTo() del objeto de cadena. La función compareTo() compara los caracteres presentes en las dos cadenas uno tras otro para identificar si las dos cadenas son iguales o no.

La función compareTo() comienza desde el primer carácter de ambas cadenas y las compara usando sus valores ASCII, y si las cadenas coinciden, pasará al siguiente carácter. Cada carácter del teclado tiene un valor ASCII único.

Los valores ASCII de letras mayúsculas y minúsculas son diferentes; el valor ASCII de a es 97, y A es 65. Si queremos comparar las dos cadenas ignorando las mayúsculas y minúsculas, debemos asegurarnos de que ambas cadenas estén en mayúsculas o minúsculas.

Para convertir una cadena a mayúsculas, podemos usar la función toUpperCase() del objeto de cadena en Arduino. Para convertir una cadena a minúsculas, podemos usar la función toLowerCase() del objeto de cadena en Arduino.

La función compareTo() devuelve 0 si las dos cadenas son iguales. La función compareTo() devuelve un número negativo si el valor ASCII de la primera cadena es menor que el valor ASCII de la segunda cadena.

La función compareTo() devuelve un número positivo si el valor ASCII de la primera cadena es mayor que el valor ASCII de la segunda cadena. Por ejemplo, definamos dos variables de cadena y comparémoslas usando la función compareTo() en Arduino.

String string_1 = "Hello";
String string_2 = "World";
int result = 0;

void setup() { result = string_1.compareTo(string_2); }
void loop() {}

El resultado de la comparación se almacenará dentro de la variable resultado. También podemos usar la función equals() en lugar de la función compareTo().

Compara cadenas usando la función equals() en Arduino

La función equals() devuelve un valor booleano, que será verdadero si las dos cadenas son iguales y falso si no lo son. La función equals() también distingue entre mayúsculas y minúsculas, lo que significa que abc no será igual a ABC.

Consulta este enlace para obtener más detalles sobre la función equals(). Si queremos comparar dos cadenas ignorando la sensibilidad a mayúsculas o minúsculas, podemos usar la función equalsIgnoreCase() del objeto de cadena.

El equalsIgnoreCase() también devuelve un valor booleano y no distingue entre mayúsculas y minúsculas, lo que significa que abc y ABC serán iguales y la función devolverá verdadero. Consulte este enlace para obtener más detalles sobre la función equalsIgnoreCase().

Compara cadenas usando operadores de comparación en Arduino

También podemos usar los operadores de comparación como menor o igual a <=, mayor o igual a >=, igual a ==, y otros operadores para comparar cadenas.

En este caso, las cadenas se compararán de acuerdo con los valores ASCII de los caracteres presentes en ellas, lo que significa que esta comparación también distinguirá entre mayúsculas y minúsculas.

Por ejemplo, la siguiente declaración devolverá falso.

"hello" == "Hello"
Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artículo relacionado - Arduino String