TextInfo.ToTitleCase(String) TextInfo.ToTitleCase(String) TextInfo.ToTitleCase(String) TextInfo.ToTitleCase(String) Method

Definição

Converte a cadeia de caracteres especificada em capitalização de título (exceto palavras que têm todas as letras maiúsculas, consideradas acrônimos).Converts the specified string to title case (except for words that are entirely in uppercase, which are considered to be acronyms).

public:
 System::String ^ ToTitleCase(System::String ^ str);
public string ToTitleCase (string str);
member this.ToTitleCase : string -> string
Public Function ToTitleCase (str As String) As String

Parâmetros

str
String String String String

A cadeia de caracteres a ser convertida para capitalização de título.The string to convert to title case.

Retornos

A cadeia de caracteres especificada é convertida em capitalização de título.The specified string converted to title case.

Exceções

Exemplos

O exemplo a seguir altera o uso de maiusculas e minúsculas de uma cadeia de caracteres com base na cultura inglês (Estados Unidos), com o nome de cultura en-US.The following example changes the casing of a string based on the English (United States) culture, with the culture name en-US.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Defines the String* with mixed casing.
   String^ myString = "wAr aNd pEaCe";
   
   // Creates a TextInfo based on the S"en-US" culture.
   CultureInfo^ MyCI = gcnew CultureInfo( "en-US",false );
   TextInfo^ myTI = MyCI->TextInfo;
   
   // Changes a String* to lowercase.
   Console::WriteLine( "\"{0}\" to lowercase: {1}", myString, myTI->ToLower( myString ) );
   
   // Changes a String* to uppercase.
   Console::WriteLine( "\"{0}\" to uppercase: {1}", myString, myTI->ToUpper( myString ) );
   
   // Changes a String* to titlecase.
   Console::WriteLine( "\"{0}\" to titlecase: {1}", myString, myTI->ToTitleCase( myString ) );
}

/*
This code produces the following output.

S"wAr aNd pEaCe" to lowercase: war and peace
S"wAr aNd pEaCe" to uppercase: WAR AND PEACE
S"wAr aNd pEaCe" to titlecase: War And Peace

*/
using System;
using System.Globalization;


public class SamplesTextInfo  {

   public static void Main()  {

      // Defines the string with mixed casing.
      string myString = "wAr aNd pEaCe";

      // Creates a TextInfo based on the "en-US" culture.
      TextInfo myTI = new CultureInfo("en-US",false).TextInfo;

      // Changes a string to lowercase.
      Console.WriteLine( "\"{0}\" to lowercase: {1}", myString, myTI.ToLower( myString ) );

      // Changes a string to uppercase.
      Console.WriteLine( "\"{0}\" to uppercase: {1}", myString, myTI.ToUpper( myString ) );

      // Changes a string to titlecase.
      Console.WriteLine( "\"{0}\" to titlecase: {1}", myString, myTI.ToTitleCase( myString ) );

   }

}

/*
This code produces the following output.

"wAr aNd pEaCe" to lowercase: war and peace
"wAr aNd pEaCe" to uppercase: WAR AND PEACE
"wAr aNd pEaCe" to titlecase: War And Peace

*/
Imports System
Imports System.Globalization

Public Class SamplesTextInfo

   Public Shared Sub Main()

      ' Defines the string with mixed casing.
      Dim myString As String = "wAr aNd pEaCe"

      ' Creates a TextInfo based on the "en-US" culture.
      Dim myTI As TextInfo = New CultureInfo("en-US", False).TextInfo

      ' Changes a string to lowercase.
      Console.WriteLine("""{0}"" to lowercase: {1}", myString, myTI.ToLower(myString))

      ' Changes a string to uppercase.
      Console.WriteLine("""{0}"" to uppercase: {1}", myString, myTI.ToUpper(myString))

      ' Changes a string to titlecase.
      Console.WriteLine("""{0}"" to titlecase: {1}", myString, myTI.ToTitleCase(myString))

   End Sub 'Main 

End Class 'SamplesTextInfo


'This code produces the following output.
'
'"wAr aNd pEaCe" to lowercase: war and peace
'"wAr aNd pEaCe" to uppercase: WAR AND PEACE
'"wAr aNd pEaCe" to titlecase: War And Peace


O exemplo a seguir passa todas as cadeias de caracteres de uma matriz para o método ToTitleCase.The following example passes each string in an array to the ToTitleCase method. As cadeias de caracteres incluem cadeias de caracteres de títulos próprios assim como acrônimos.The strings include proper title strings as well as acronyms. As cadeias de caracteres são convertidas para maiusculas/minúsculas usando as convenções da cultura en-US.The strings are converted to title case by using the conventions of the en-US culture.

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("{0} --> {1}", 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

Comentários

Em geral, capitalização de título converte o primeiro caractere de uma palavra em maiuscula e o restante dos caracteres em minúsculas.Generally, title casing converts the first character of a word to uppercase and the rest of the characters to lowercase. No entanto, esse método não fornece atualmente maiusculas e minúsculas adequadas para converter uma palavra que está totalmente em letras maiusculas, como um acrônimo.However, this method does not currently provide proper casing to convert a word that is entirely uppercase, such as an acronym. A tabela a seguir mostra a maneira como o método renderiza várias cadeias de caracteres.The following table shows the way the method renders several strings.

EntradaInput IdiomaLanguage Resultado esperadoExpected result Resultado realActual result
guerra e pazwar and peace InglêsEnglish WAR and PeaceWar and Peace WAR And PeaceWar And Peace
Por anhalter durch morrem GalaxisPer anhalter durch die Galaxis AlemãoGerman Por Anhalter durch morrem GalaxisPer Anhalter durch die Galaxis Per Anhalter Durch Die GalaxisPer Anhalter Durch Die Galaxis
les naufragés d'ythaqles naufragés d'ythaq FrancêsFrench Les Naufragés d'YthaqLes Naufragés d'Ythaq Les Naufragés D'ythaqLes Naufragés D'ythaq

Conforme ilustrado acima, o ToTitleCase método fornece um comportamento de maiusculas e minúsculas arbitrário que não é necessariamente linguisticamente correto.As illustrated above, the ToTitleCase method provides an arbitrary casing behavior which is not necessarily linguistically correct. Uma solução linguisticamente correta exigiria regras adicionais e o algoritmo atual é um pouco mais simples e rápida.A linguistically correct solution would require additional rules, and the current algorithm is somewhat simpler and faster. Nós nos reservamos o direito de fazer essa API mais lento no futuro.We reserve the right to make this API slower in the future.

A implementação atual do ToTitleCase método produz uma cadeia de caracteres de saída que é o mesmo tamanho que a cadeia de caracteres de entrada.The current implementation of the ToTitleCase method yields an output string that is the same length as the input string. No entanto, esse comportamento não é garantido e pode alterar em uma implementação futura.However, this behavior is not guaranteed and could change in a future implementation.

Aplica-se a

Veja também