Eine kleine HelperMethode in C#, die einen String entweder nach PascalCase (UpperCamelCase-Variante) oder camelCase (lowerCamelCase-Variante) konvertiert. Getrennt werden die Wörter des übergebenen Strings, bei einem Freizeichen, einem Bindestrich und bei einem Punkt.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | /// <summary> /// Converts the phrase to specified convention. /// </summary> /// <param name="phrase"></param> /// <param name="cases">The cases.</param> /// <returns>string</returns> static string ConvertCaseString(string phrase, Case cases) { string[] splittedPhrase = phrase.Split(' ', '-', '.'); var sb = new StringBuilder(); if (cases == Case.CamelCase) { sb.Append(splittedPhrase[0].ToLower()); splittedPhrase[0] = string.Empty; } else if (cases == Case.PascalCase) sb = new StringBuilder(); foreach (String s in splittedPhrase) { char[] splittedPhraseChars = s.ToCharArray(); if (splittedPhraseChars.Length > 0) { splittedPhraseChars[0] = ((new String(splittedPhraseChars[0], 1)).ToUpper().ToCharArray())[0]; } sb.Append(new String(splittedPhraseChars)); } return sb.ToString(); } |
1 2 3 4 5 | enum Case { PascalCase, CamelCase } |
Aufruf:
1 2 3 | string a = "background color-red.brown"; string camelCase = ConvertCaseString(a, Case.CamelCase); string pascalCase = ConvertCaseString(a, Case.PascalCase); |
Wer CamelCase oder PascalCase Strings nach “Title Case” konvertieren möchte, der sollte sich das Snippet von Jan Welker auf .Net-Snippets anschauen.
Viel Spaß beim entwickeln : )







