将字符串更改为第一个字符为大写,余数为小写

时间:2011-12-16 04:45:23

标签: c#

我有这样的字符串:

var a = "abc";
var b = "DEF";
var c = "gHi";

是否有一个函数可以应用于字符串来更改它,所以第一个字符是大写后跟小写?

4 个答案:

答案 0 :(得分:8)

ToTitleCase()是理想的解决方案。您可以在下面找到创建扩展方法的链接。或者为了好玩,你可以自己创造一个......

public string ToProperCase(string str)
{
    if (string.IsNullOrEmpty(str))
         return str;

    return str[0].ToUpper() + str.Substring(1).ToLower();
}

// or an extension method
public static string ToProperCase(this string str)
{
    if (string.IsNullOrEmpty(str))
         return str;

    return str[0].ToUpper() + str.Substring(1).ToLower();
}

链接到在System.String上创建ToTitleCase()作为扩展方法:

http://geekswithblogs.net/mucman/archive/2007/03/26/109892.aspx

答案 1 :(得分:7)

你可以很容易地写自己的。

public string Capitalise(string str) {
    if (String.IsNullOrEmpty(str))
        return String.Empty;
    return Char.ToUpper(str[0]) + str.Substring(1).ToLower();
}

答案 2 :(得分:4)

使用

CultureInfo.CurrentCulture.TextInfo.ToTitleCase( yourstring);

答案 3 :(得分:3)

您可以使用标题案例... http://support.microsoft.com/kb/312890/EN-US/