字符串小写的第一个字符 - C#

时间:2014-02-13 13:32:51

标签: c# string lowercase

如何将字符串的第一个字符设为小写?

例如:ConfigService

我需要它像这样:configService

9 个答案:

答案 0 :(得分:11)

这将有效:

string s = "ConfigService";
            if (s != string.Empty && char.IsUpper(s[0]))
            {
              s=  char.ToLower(s[0]) + s.Substring(1);
            }
            Console.WriteLine(s);

答案 1 :(得分:7)

一种方式:

string newString = oldString;
if (!String.IsNullOrEmpty(newString))
    newString = Char.ToLower(newString[0]) + newString.Substring(1);

对于它的价值,一种扩展方法:

public static string ToLowerFirstChar(this string input)
{
    string newString = input;
    if (!String.IsNullOrEmpty(newString) && Char.IsUpper(newString[0]))
        newString = Char.ToLower(newString[0]) + newString.Substring(1);
    return newString;
}

用法:

string newString = "ConfigService".ToLowerFirstChar(); // configService

答案 2 :(得分:2)

你可以试试这个:

lower = source.Substring(0, 1).ToLower() + source.Substring(1);

答案 3 :(得分:2)

    public static string Upper_To_Lower(string text)
    {
        if (Char.IsUpper(text[0]) == true) { text = text.Replace(text[0], char.ToLower(text[0])); return text; }

        return text;
    }

    public static string Lower_To_Upper(string text)
    {
        if (Char.IsLower(text[0]) == true) { text = text.Replace(text[0], char.ToUpper(text[0])); return text; }

        return text;
    }

希望这会对你有所帮助!这里我做了两个方法作为参数任何字符串,并根据您将使用的方法返回首字母大写或小写的字符串

答案 4 :(得分:1)

string test = "ConfigService";
string result = test.Substring(0, 1).ToLower() + test.Substring(1);

答案 5 :(得分:1)

我会这样做:

Char.ToLowerInvariant(yourstring[0]) + yourstring.Substring(1)

简单并完成工作。

编辑:

看起来this thread有同样的想法。 :)

答案 6 :(得分:1)

    string FirstLower(string s)
    {
        if(string.IsNullOrEmpty(s))
            return s;
        return s[0].ToString().ToLower() + s.Substring(1);
    }

答案 7 :(得分:1)

使用此功能:

public string GetStringWithFirstCharLowerCase(string value)
{
    if (value == null) throw new ArgumentNullException("value")
    if (String.IsNullOrWhiteSpace(value)) return value;

    char firstChar = Char.ToLowerInvariant(value[0]);

    if (value.Length == 1) return firstChar;

    return firstChar + value.Substring(1);
}

请注意,如果需要支持其他语言,则需要进一步超载。

答案 8 :(得分:1)

这可以帮助你,如果它是高位则将第一个字符更改为低,并且还检查null或空并且只检查空白字符串:

string str = "ConfigService";
string strResult = !string.IsNullOrWhiteSpace(str) && char.IsUpper(str, 0) ? str.Replace(str[0],char.ToLower(str[0])) : str;