1. ホーム
  2. c#

[解決済み】文字列をタイトルケースに変換する

2022-03-27 09:14:05

質問

大文字と小文字が混在した単語を含む文字列があります。

例えば string myData = "a Simple string";

各単語の最初の文字(スペースで区切られている)を大文字に変換する必要があります。だから、私は結果を次のようにしたい。 string myData ="A Simple String";

何か簡単な方法はないでしょうか?文字列を分割して変換するのは嫌です(それは最後の手段です)。また、文字列は英語であることが保証されています。

どのように解決するのですか?

MSDN : TextInfo.ToTitleCase

必ず入れてください。 using System.Globalization

string title = "war and peace";

TextInfo textInfo = new CultureInfo("en-US", false).TextInfo;

title = textInfo.ToTitleCase(title); 
Console.WriteLine(title) ; //War And Peace

//When text is ALL UPPERCASE...
title = "WAR AND PEACE" ;

title = textInfo.ToTitleCase(title); 
Console.WriteLine(title) ; //WAR AND PEACE

//You need to call ToLower to make it work
title = textInfo.ToTitleCase(title.ToLower()); 
Console.WriteLine(title) ; //War And Peace