Hallo,
wieder mal Extensions.
Die Erste Extension teilt einen String in gleich große Teile und gibt diese als Liste zurück
Die zweite Extension Spiegelt den Inhalt eines Strings
Der Aufruf beider Funktionen kann z.B. wie folgt erfolgen
Gruss
mikeb69
wieder mal Extensions.
Die Erste Extension teilt einen String in gleich große Teile und gibt diese als Liste zurück
C#-Quellcode
- /// <summary>
- /// Teilt einen String in definierte Teile
- /// </summary>
- /// <param name="s">String der geteilt werden soll</param>
- /// <param name="length">Länge der jeweiligen Teilstücke</param>
- /// <returns>Liste von Teilstrings</Returns>
- public static IEnumerable<string> String2Parts(this string s, int length)
- {
- if (s == null)
- {
- throw new ArgumentNullException("s");
- }
- if (length <= 0)
- {
- throw new ArgumentException("Die Länge der Teile kann nicht kleiner Null sein.");
- }
- for (var i = 0; i < s.Length; i += length)
- {
- yield return s.Substring(i, Math.Min(length, s.Length - i));
- }
- }
Die zweite Extension Spiegelt den Inhalt eines Strings
C#-Quellcode
- /// <summary>
- /// Dreht einen beliebigen String
- /// </summary>
- /// <param name="s">String der gedreht werden soll</param>
- /// <returns>Gedrehter String</Returns>
- public static string SwapCharacters(this string s)
- {
- if (s == null)
- {
- throw new ArgumentNullException("s");
- }
- StringBuilder sb = new StringBuilder();
- for (int i = s.Length - 1; i >= 0; i-- )
- {
- sb.Append(s.Substring(i, 1));
- }
- return sb.ToString();
- }
Der Aufruf beider Funktionen kann z.B. wie folgt erfolgen
Gruss
mikeb69