[解決済み] BestPractice - 文字列の最初の文字を小文字に変換する
2022-04-28 06:13:22
質問
文字列の最初の文字を小文字に変換するメソッドが欲しいです。
私のアプローチ
1.
public static string ReplaceFirstCharacterToLowerVariant(string name)
{
return String.Format("{0}{1}", name.First().ToString().ToLowerInvariant(), name.Substring(1));
}
2.
public static IEnumerable<char> FirstLetterToLowerCase(string value)
{
var firstChar = (byte)value.First();
return string.Format("{0}{1}", (char)(firstChar + 32), value.Substring(1));
}
あなたなら、どのようなアプローチをとりますか?
解決方法は?
単純な連結を使いますね。
Char.ToLowerInvariant(name[0]) + name.Substring(1)
最初の解決策は、最適化されていません。
string.Format
は遅いので、絶対に変更しない書式であれば必要ありません。また、文字を小文字に変換するために余分な文字列が生成されますが、これは必要ありません。
ASCII文字値のオフセットに関する知識を必要とするため、"+ 32"によるアプローチは醜く、保守性に欠けます。また、UnicodeデータとASCIIシンボル文字で不正な出力を生成します。
関連
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] Bashで文字列を小文字に変換する方法は?
-
[解決済み] JavaScript の文字列をすべて小文字に変換する
-
[解決済み] 大文字・小文字を区別しない文字列比較を行うには?
-
[解決済み] Rubyで文字列を小文字・大文字に変換する方法
-
[解決済み] std::stringのインスタンスを小文字に変換する方法
-
[解決済み] Javascriptで文字列の1文字目を削除する
-
[解決済み】大文字・小文字を区別しない「Contains(string)
-
[解決済み】大文字と数字を含むランダムな文字列の生成
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み】コンパイルエラー「未割り当てのローカル変数を使用しています」が発生したのはなぜですか?
-
[解決済み】トランスポート接続からデータを読み取れない:既存の接続は、リモートホストによって強制的に閉じられました。
-
[解決済み】クロススレッド操作が有効でない。作成されたスレッド以外のスレッドからアクセスされたコントロール
-
[解決済み】Unity 「関連するスクリプトを読み込むことができません」「Win32Exception: システムは指定されたファイルを見つけることができません"
-
[解決済み】OnCollisionEnter2Dが実行されない?
-
[解決済み】C#のequal to演算子でtextとvarcharのデータ型は互換性がない
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み】Microsoft.Extensions.LoggingからILoggerを解決することができない
-
[解決済み】ユーザー設定値を別のユーザー設定値で設定する