2017-02-18 16 views
11

文字列をTextInfo.ToTitleCaseに変換し、アンダースコアを削除して文字列を結合しました。文字列の最初の文字だけを小文字に変更する必要があります。何らかの理由でそれを実現する方法がわかりません。助けを前にありがとう。文字列をTitleCaseからcamelCaseに変換するC#

class Program 
{ 
    static void Main(string[] args) 
    { 
     string functionName = "zebulans_nightmare"; 
     TextInfo txtInfo = new CultureInfo("en-us", false).TextInfo; 
     functionName = txtInfo.ToTitleCase(functionName).Replace('_', ' ').Replace(" ", String.Empty); 
     Console.Out.WriteLine(functionName); 
     Console.ReadLine(); 
    } 
} 

結果:ZebulansNightmare

望ましい結果:zebulansNightmare

UPDATE:

class Program 
{ 
    static void Main(string[] args) 
    { 
     string functionName = "zebulans_nightmare"; 
     TextInfo txtInfo = new CultureInfo("en-us", false).TextInfo; 
     functionName = txtInfo.ToTitleCase(functionName).Replace("_", string.Empty).Replace(" ", string.Empty); 
     functionName = $"{functionName.First().ToString().ToLowerInvariant()}{functionName.Substring(1)}"; 
     Console.Out.WriteLine(functionName); 
     Console.ReadLine(); 
    } 
} 

は、あなただけの配列の最初の文字を小さくする必要が所望の出力

答えて

18

を生成します。あなたは空の文字列にアンダースコアを置き換えることができ、スペースを削除すると見て、注意点として、このanswer

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

を参照してください。

.Replace("_", string.Empty) 
+0

ありがとうございました。 –

+0

よろしくお願いします。調整を行い、質問を更新しました。 –

関連する問題