如何使用char将C#中每个句子的第一个字母大写?

时间:2017-03-24 03:32:49

标签: c# char delimiter toupper

句子大写:

private string SentenceCapitalizer(string input)
{
 char delim = '.';
 string letter1;
 string[] tokens = input.Split(delim);
 foreach (string phrase in tokens)
 {
   letter1 = phrase.Remove(0);
   letter1.ToUpper();
 }
 return input;
}

请记住,这只是其中一种方法。

1 个答案:

答案 0 :(得分:1)

首先,看看ToUpper()的签名并注意它返回一个字符串。这不会修改你调用它的字符串;而是从该操作返回一个新的字符串结果。

在你的情况下,你已经有了短语。您可以使用phrase[0]phrase.First()获取短语的第一个字符。您还应该查看Substring,它会为您提供字符串中的一系列字符。

将所有这些放在一起你可以做类似的事情:

phrase = phrase[0].ToString().ToUpper() + phrase.Substring(1);

这样做是从phrase获取第一个字符并将其从字符串转换为字符串,这是您需要调用ToUpper()然后使用{连接短语的其余部分}的字符串{1}}从位置1开始(这是第二个字符)并将其分配回短语。