文字列を受け取り、それを「パスカルケース」にする関数が必要です。新しい単語が始まることを示す唯一の指標はアンダースコアです。クリーンアップする必要のある文字列の例を次に示します。
- price_old=>PriceOldである必要があります
- rank_old=>はRankOldである必要があります
私は最初の文字を大文字にする関数に取り組み始めました:
public string FirstCharacterUpper(string value)
{
if (value == null || value.Length == 0)
return string.Empty;
if (value.Length == 1)
return value.ToUpper();
var firstChar = value.Substring(0, 1).ToUpper();
return firstChar + value.Substring(1, value.Length - 1);
}
上記の関数が実行しないのは、アンダースコアを削除し、アンダースコアの右側にある文字を「ToUpper」することです。
また、インジケーター(アンダースコアなど)のない文字列をキャメルケースに入れる方法についてのアイデア。例えば:
- companysource
- 財務トレンド
- 会計変更タイプ
ここでの主な課題は、ある単語がどこで終わり、別の単語がどこから始まるかを判断することです。新しい単語がどこから始まるかを判断するには、ある種のルックアップ辞書が必要だと思いますか?この種のことを行うための図書館はすでにありますか?
ありがとう、
ポール