我需要一個函數,將採取一個字符串和「帕斯卡情況」它。一個新詞開始的唯一指標是下劃線。下面是需要一些例如字符串進行清理:功能使帕斯卡案件? (C#)
- 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
- financialtrend
- accountingchangetype
這裏的主要挑戰是確定其中一個字結束和另一個開始。我想我需要某種查找字典來確定新單詞的起始位置?我們有圖書館來做這種事嗎?
感謝,
保羅
一個快速評論 - 這是Pascal大小寫。駱駝案例以小寫開頭,例如'rankOld'。 – 2010-08-02 09:50:39
@Jon O,很高興知道......更新... – 2010-08-02 09:52:28
另一個快速評論 - 當你想從一個特定的起點開始整個子串時,沒有必要指定一個長度。所以,而不是value.Substring(1,value.Length - 1),你可以簡單地做value.Substring(1)。 – Anton 2010-08-02 09:54:03