🟰StringComparison

StringComparison es una enumeración en .NET que especifica las reglas de comparación de cadenas. Se utiliza como parámetro en métodos de comparación de cadenas para determinar cómo se deben tratar las diferencias entre mayúsculas y minúsculas, así como las reglas culturales o de idioma durante la comparación.

La enumeración StringComparison incluye varios valores que permiten controlar el comportamiento de la comparación:

  • Ordinal: Compara las cadenas basándose en el valor numérico de cada char en las cadenas. Es una comparación binaria, rápida y no tiene en cuenta las reglas culturales.

  • OrdinalIgnoreCase: Similar a Ordinal, pero ignora las diferencias entre mayúsculas y minúsculas.

  • CurrentCulture: Usa las reglas de la cultura actual para la comparación, lo cual es útil para comparaciones sensibles al lenguaje.

  • CurrentCultureIgnoreCase: Igual que CurrentCulture, pero ignora las diferencias entre mayúsculas y minúsculas.

  • InvariantCulture y InvariantCultureIgnoreCase: Utilizan las reglas de la cultura invariante, que es independiente de la configuración regional del sistema y se recomienda para operaciones que requieren consistencia a través de culturas.

Ejemplos de Uso

string str1 = "Café";
string str2 = "CAFE";

// Comparación sensible a mayúsculas y minúsculas usando la cultura actual
bool resultado1 = str1.Equals(str2, StringComparison.CurrentCulture);

// Comparación ignorando mayúsculas y minúsculas usando la cultura actual
bool resultado2 = str1.Equals(str2, StringComparison.CurrentCultureIgnoreCase);

// Comparación ordinal (basada en el valor binario de los caracteres)
bool resultado3 = str1.Equals(str2, StringComparison.Ordinal);

// Comparación ordinal ignorando mayúsculas y minúsculas
bool resultado4 = str1.Equals(str2, StringComparison.OrdinalIgnoreCase);

¿Cuándo usar StringComparison?

El uso de StringComparison es crucial cuando necesitas control sobre la sensibilidad a mayúsculas y minúsculas y las reglas culturales en tus comparaciones.

Última actualización