我有一個很大的XML文件,其中包含實現破折號分隔的命名約定的標記名稱。我如何使用C#將標記名稱轉換爲駝峯命名約定?通過C#將破折號分隔的字符串轉換爲camelCase
規則是: 1。轉換所有字符爲小寫 2.大寫的第一個字符每一劃線 3.拆下後的所有短劃線
例 轉換之前
<foo-bar>
<a-b-c></a-b-c>
</foo-bar>
轉換後
<fooBar>
<aBC></aBC>
</fooBar>
下面是一個有效的代碼示例,但它的處理速度很慢 - 我想有更好的方法來實現我的目標。
string ConvertDashToCamelCase(string input)
{
input = input.ToLower();
char[] ca = input.ToCharArray();
StringBuilder sb = new StringBuilder();
for(int i = 0; i < ca.Length; i++)
{
if(ca[i] == '-')
{
string t = ca[i + 1].ToString().toUpper();
sb.Append(t);
i++;
}
else
{
sb.Append(ca[i].ToString());
}
}
return sb.ToString();
}
提供一些代碼,以便我們可以幫助您...我們不會爲您完成這項工作。 –
好的 - 代碼示例添加到我的OP。正如你所看到的,我蠻橫地強迫我穿過人物。此方法有效,但速度很慢。我希望找到更清潔,更快捷的解決方案。 – Jed
可能的重複[http://stackoverflow.com/questions/17186641/...](http://stackoverflow.com/questions/17186641/how-do-i-make-letters-to-uppercase-after-除了在大寫字母后刪除特殊字符之外,每個特定字符都是一組字符)。 –