我需要一个函数,将采取一个字符串和“帕斯卡情况”它。一个新词开始的唯一指标是下划线。下面是需要一些例如字符串进行清理:功能使帕斯卡案件? (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