在C#中,我正在寻找与ToTitleCase非常相似的代码,除了我需要它只影响小写字母。我不希望任何大写的字母变成小写字母,我只需要将小写字母正确地带到大写字母。
这适用于电子商务软件,因此资本变为小写是一个交易破坏者。使品牌名称看起来不正确。
任何帮助将不胜感激!
答案 0 :(得分:1)
您可以使用一种方法来放弃ToTitleCase()
中不需要的更改。
我在这里使用的是StringBuilder
而不是普通的string
,因为StringBuilder
(正如您可能从其名称中猜到的那样)追加字符串的速度比string
快得多+=
运营商。如果您的标题很长或者您在长循环中使用此方法等,这一点尤其重要。
public string BetterTitileCase(string original)
{
string title = /* ToTitleCase call here, etc. */;
StringBuilder fixedTitle = new StringBuilder();
//the title and the original string should be the same length
for(int i = 0; i < title.length; i++)
{
if(char.IsLower(original[i]))
fixedTitle.Append(title[i]);
else
fixedTitle.Append(original[i]);
}
return fixedTitle.ToString();
}