Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Si escribe una aplicación que acepta la entrada de un usuario, nunca podrá confiar en qué formato (mayúsculas o minúsculas) usarán para introducir los datos. A menudo, quiere que las cadenas se casen de forma coherente, especialmente si las muestra en la interfaz de usuario. En la tabla siguiente se describen tres métodos de conversión de caso de mayúsculas y minúsculas. Los dos primeros métodos proporcionan una sobrecarga que acepta una cultura.
| Nombre del método | Use |
|---|---|
| String.ToUpper | Convierte todos los caracteres de una cadena en mayúsculas. |
| String.ToLower | Convierte todos los caracteres de una cadena en minúsculas. |
| TextInfo.ToTitleCase | Convierte una cadena a formato de título. |
Advertencia
Los String.ToUpper métodos y String.ToLower no deben usarse para convertir cadenas con el fin de compararlas o probarlas para obtener igualdad. Para obtener más información, consulte la sección Comparar cadenas de caso mixto.
Comparar cadenas de texto con mayúsculas y minúsculas mezcladas
Para comparar cadenas con mezcla de mayúsculas y minúsculas para determinar su ordenación, llame a una de las sobrecargas del método String.CompareTo con un parámetro comparisonType y proporcione un valor de StringComparison.CurrentCultureIgnoreCase, StringComparison.InvariantCultureIgnoreCase, o StringComparison.OrdinalIgnoreCase para el argumento comparisonType. Para una comparación con una referencia cultural específica distinta de la referencia cultural actual, llame a una sobrecarga del método String.CompareTo con un parámetro culture, options, y proporcione un valor de CompareOptions.IgnoreCase como argumento options.
Para comparar cadenas de mayúsculas y minúsculas mixtas para determinar si son iguales, llame a una de las sobrecargas del método String.Equals con el parámetro comparisonType y proporcione un valor de StringComparison.CurrentCultureIgnoreCase, StringComparison.InvariantCultureIgnoreCase o StringComparison.OrdinalIgnoreCase para el argumento comparisonType.
Para obtener más información, consulte Procedimientos recomendados para usar cadenas.
método ToUpper
El String.ToUpper método cambia todos los caracteres de una cadena a mayúsculas. En el ejemplo siguiente se convierte la cadena "Hello World!" de mayúsculas y minúsculas mixtas a mayúsculas.
string properString = "Hello World!";
Console.WriteLine(properString.ToUpper());
// This example displays the following output:
// HELLO WORLD!
Dim MyString As String = "Hello World!"
Console.WriteLine(MyString.ToUpper())
' This example displays the following output:
' HELLO WORLD!
El ejemplo anterior es sensible a la cultura por defecto; aplica las convenciones de mayúsculas y minúsculas de la cultura actual. Para realizar un cambio de caso insensible a la cultura o aplicar las convenciones de mayúsculas y minúsculas de una cultura determinada, use la sobrecarga de método String.ToUpper(CultureInfo) y proporcione un valor de CultureInfo.InvariantCulture o un objeto System.Globalization.CultureInfo que represente la cultura especificada al parámetro culture. Para obtener un ejemplo que muestra cómo usar el ToUpper método para realizar un cambio de caso insensible a la cultura, consulte Realizar cambios de mayúsculas y minúsculas insensibles a la cultura.
método ToLower
El String.ToLower método es similar al método anterior, pero convierte todos los caracteres de una cadena en minúsculas. En el ejemplo siguiente se convierte la cadena "Hello World!" en minúsculas.
string properString = "Hello World!";
Console.WriteLine(properString.ToLower());
// This example displays the following output:
// hello world!
Dim MyString As String = "Hello World!"
Console.WriteLine(MyString.ToLower())
' This example displays the following output:
' hello world!
El ejemplo anterior es sensible a la cultura por defecto; aplica las convenciones de mayúsculas y minúsculas de la cultura actual. Para realizar un cambio de caso insensible a la cultura o aplicar las convenciones de mayúsculas y minúsculas de una cultura determinada, use el método String.ToLower(CultureInfo) sobrecargado y proporcione un valor de CultureInfo.InvariantCulture o un objeto System.Globalization.CultureInfo que represente la cultura especificada al parámetro culture. Para obtener un ejemplo que muestra cómo usar el método ToLower(CultureInfo) para realizar un cambio de mayúsculas y minúsculas insensible a la cultura, consulte Realizar cambios de mayúsculas y minúsculas insensibles a la cultura.
método ToTitleCase
TextInfo.ToTitleCase convierte el primer carácter de cada palabra en mayúsculas y los caracteres restantes en minúsculas. Sin embargo, se asume que las palabras que están completamente en mayúsculas son acrónimos y no se convierten.
El TextInfo.ToTitleCase método es sensible a la cultura; es decir, usa las convenciones de mayúsculas y minúsculas de una cultura específica. Para llamar al método , primero se recupera el TextInfo objeto que representa las convenciones de mayúsculas y minúsculas de la referencia cultural concreta de la CultureInfo.TextInfo propiedad de una referencia cultural determinada.
En el ejemplo siguiente se pasa cada cadena de una matriz al TextInfo.ToTitleCase método . Las cadenas incluyen cadenas de título adecuadas, así como acrónimos. Las cadenas se convierten en formato tipo título utilizando las convenciones de mayúsculas tipo título de la convención cultural inglés (Estados Unidos).
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
string[] values = { "a tale of two cities", "gROWL to the rescue",
"inside the US government", "sports and MLB baseball",
"The Return of Sherlock Holmes", "UNICEF and children"};
TextInfo ti = CultureInfo.CurrentCulture.TextInfo;
foreach (var value in values)
Console.WriteLine($"{value} --> {ti.ToTitleCase(value)}");
}
}
// The example displays the following output:
// a tale of two cities --> A Tale Of Two Cities
// gROWL to the rescue --> Growl To The Rescue
// inside the US government --> Inside The US Government
// sports and MLB baseball --> Sports And MLB Baseball
// The Return of Sherlock Holmes --> The Return Of Sherlock Holmes
// UNICEF and children --> UNICEF And Children
Imports System.Globalization
Module Example
Public Sub Main()
Dim values() As String = {"a tale of two cities", "gROWL to the rescue",
"inside the US government", "sports and MLB baseball",
"The Return of Sherlock Holmes", "UNICEF and children"}
Dim ti As TextInfo = CultureInfo.CurrentCulture.TextInfo
For Each value In values
Console.WriteLine("{0} --> {1}", value, ti.ToTitleCase(value))
Next
End Sub
End Module
' The example displays the following output:
' a tale of two cities --> A Tale Of Two Cities
' gROWL to the rescue --> Growl To The Rescue
' inside the US government --> Inside The US Government
' sports and MLB baseball --> Sports And MLB Baseball
' The Return of Sherlock Holmes --> The Return Of Sherlock Holmes
' UNICEF and children --> UNICEF And Children
Tenga en cuenta que, aunque es sensible a la cultura, el método TextInfo.ToTitleCase no proporciona reglas de mayúsculas y minúsculas lingüísticamente correctas. Por ejemplo, en el ejemplo anterior, el método convierte "un cuento de dos ciudades" en "A Tale Of Two Cities". Sin embargo, el uso lingüístico correcto de mayúsculas y minúsculas para la referencia cultural en-US es "A Tale of Two Cities".