如何使字符串的第一个字符小写?
例如,我需要这样: ConfigService
我需要它是这样的。configService
这样就可以了。
string s = "ConfigService";
if (s != string.Empty && char.IsUpper(s[0]))
{
s = char.ToLower(s[0]) + s.Substring(1);
}
Console.WriteLine(s);
一种方式。
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
你可以试试这个。
lower = source.Substring(0, 1).ToLower() + source.Substring(1);
string FirstLower(string s)
{
if(string.IsNullOrEmpty(s))
return s;
return s[0].ToString().ToLower() + s.Substring(1);
}
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;
}
希望这对你有帮助! 这里我做了两个方法,将任何字符串作为参数,并根据你要使用的方法返回字符串的首字母大写或小写。
string test = "ConfigService";
string result = test.Substring(0, 1).ToLower() + test.Substring(1);
我就干脆这样做。
Char.ToLowerInvariant(yourstring[0]) + yourstring.Substring(1)
简单又能完成任务
EDIT:
看起来像 这条 有同样的想法。)
使用此功能。
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);
}
请注意,如果需要支持其他语言,则需要进一步重载。
这个函数可以帮助你,如果第一个字符是大写的,就把它改成小写的,还可以检查空或空,只检查空白字符串。
string str = "ConfigService";
string strResult = !string.IsNullOrWhiteSpace(str) && char.IsUpper(str, 0) ? str.Replace(str[0],char.ToLower(str[0])) : str;