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

Definizione

Converte la stringa specificata nella combinazione con tutte le iniziali maiuscole, eccetto le parole costituite interamente da lettere maiuscole, che sono considerate acronimi.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

Parametri

str
String String String String

Stringa da convertire nella combinazione di maiuscole e minuscole dei titoli.The string to convert to title case.

Restituisce

Stringa specificata convertita nella combinazione di maiuscole e minuscole dei titoli.The specified string converted to title case.

Eccezioni

Esempi

Nell'esempio seguente vengono modificate le maiuscole e le minuscole di una stringa basata sulle impostazioni cultura Inglese (Stati Uniti) con il relativo nome 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.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

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


Nell'esempio, ogni stringa di una matrice viene passata al metodo ToTitleCase.The following example passes each string in an array to the ToTitleCase method. Nelle stringhe sono incluse le stringhe corrette dei titoli e gli acronimi.The strings include proper title strings as well as acronyms. Le stringhe vengono convertite in maiuscole utilizzando le convenzioni delle impostazioni 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

Commenti

In genere, la combinazione di maiuscole e minuscole converte il primo carattere di una parola in maiuscolo e il resto dei caratteri in minuscolo.Generally, title casing converts the first character of a word to uppercase and the rest of the characters to lowercase. Tuttavia, questo metodo non fornisce attualmente la combinazione di maiuscole e minuscole appropriata per convertire una parola interamente in maiuscolo, ad esempio un acronimo.However, this method does not currently provide proper casing to convert a word that is entirely uppercase, such as an acronym. Nella tabella seguente viene illustrato il modo in cui il metodo esegue il rendering di più stringhe.The following table shows the way the method renders several strings.

InputInput LinguaggioLanguage Risultato previstoExpected result Risultato effettivoActual result
guerra e pacewar and peace IngleseEnglish Guerra e paceWar and Peace Guerra e paceWar And Peace
Per Anhalter durch die GalaxisPer anhalter durch die Galaxis TedescoGerman Per Anhalter durch die GalaxisPer Anhalter durch die Galaxis Per Anhalter durch die GalaxisPer Anhalter Durch Die Galaxis
Les Naufragés d'ythaqles naufragés d'ythaq FranceseFrench Les Naufragés d'YthaqLes Naufragés d'Ythaq Les Naufragés D'ythaqLes Naufragés D'ythaq

Come illustrato sopra, il ToTitleCase metodo fornisce un comportamento di maiuscole e minuscole arbitrario che non è necessariamente corretto dal livello linguistico.As illustrated above, the ToTitleCase method provides an arbitrary casing behavior which is not necessarily linguistically correct. Una soluzione linguisticamente corretta richiede regole aggiuntive e l'algoritmo corrente è leggermente più semplice e più veloce.A linguistically correct solution would require additional rules, and the current algorithm is somewhat simpler and faster. Si riserva il diritto di rendere più lenta questa API in futuro.We reserve the right to make this API slower in the future.

L'implementazione corrente del ToTitleCase metodo produce una stringa di output di lunghezza uguale a quella della stringa di input.The current implementation of the ToTitleCase method yields an output string that is the same length as the input string. Questo comportamento non è tuttavia garantito e potrebbe cambiare in un'implementazione futura.However, this behavior is not guaranteed and could change in a future implementation.

Si applica a

Vedi anche