Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1562 | Anzahl registrierter User: 1893 | Besucher online: 61
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Implode und Trim für String-Enumerationen (Extension Method)


Autor: ThomasMentzel
Sprache: C#
Bewertung:
noch nicht bewertet
Anzahl der Aufrufe: 3644
  
Kick it on dotnet-kicks.de  

Beschreibung:

Diese beiden einfachen Methoden erweitern eine IEnumerable.
Die Methode "Trim()" entfernt alle leeren Strings (IsNullOrEmpty)
Die Methode "Implode()" verbindet die Strings aus der Liste mit einer übergeben Zeichenkette.

var list = new List {"Eins", null, "", "Zwei"};

// singleLine == "Eins;Zwei"
var singleLine = list.Trim().Implode(";");


Abgelegt unter: String, IEnumerable, IEnumerable, Implode, Trim.



C#
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
31
32
33
34
35
36
37
38
39
        /// <summary>
        /// concatenates a list of strings into a single string (with a glue).
        /// </summary>
        /// <param name="source">source list</param>
        /// <param name="glue">glue to concatenate the strings</param>
        /// <returns>a single string</returns>
        public static string Implode(this IEnumerable<string> source, string glue)
        {
            // exit criteria
            if (source == null) throw new InvalidOperationException("source cannot be null");
            if (source.Count() <= 0) return string.Empty;

            // result with first item
            var result = new StringBuilder(source.First());

            // add glue & item for next items
            foreach (string aPart in source.Skip(1))
            {
                result.Append(glue + aPart);
            }

            // return result
            return result.ToString();
        }

        /// <summary>
        /// removes all empty string from the source list
        /// </summary>
        /// <param name="source">source list with empty items</param>
        public static IEnumerable<string> Trim(this IEnumerable<string> source)
        {
            // exit criteria
            if (source == null) throw new InvalidOperationException("source cannot be null");
            if (source.Count() <= 0) return source;

            // filter all empty string
            return from item in source where !string.IsNullOrEmpty(item) select item;
        }

Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)

hackman schrieb am:  26.07.2010 20:45:49

schon mal was von string.join gehört?


Diese Snippets könnten für Sie interessant sein:
[C#] Hexcode eines Strings ausgeben
[VB.NET] Größe eines Strings berechnen
[C#] String bei bestimmten Zeichen splitten
[C#] Encode To ASCII - Buchstaben in Ascii-Werte umwandeln
[C#] Gibt den MD5 Hash eines Stings als String zurück.
[C#] String in Byte Array und zurück wandeln
[VB.NET] Den SHA1 Hash eines Strings ermitteln
[VB.NET] Den MD5 Hash eines Strings ermitteln
[C#] Wandelt ein Bytearray in einen Binärstring
[VB.NET] Text auf Bild zeichnen
[C#] String auf Emailadresse prüfen
[C#] SHA-1 Hash eines Strings erzeugen
[VB.NET] Strings schnell zählen
[VB.NET] Pfad kürzen
[VB.NET] Einfache Ähnlichkeitssuche (SQL)
[C#] Pfad kürzen
[C#] IsPositiveInteger as Extension Method
[C#] Datum und Zeit als String
[C#] String spiegeln
[VB.NET] String spiegeln
[C#] Erweiterung für Stringumwandlungen
[C#] Image in string wandeln und zurück
[C#] Strings komprimieren und dekomprimieren
[C#] CamelCase in Title Case konvertieren
[C#] Text zentriert in die Konsole schreiben
[VB.NET] Strings komprimieren und dekomprimieren
[C#] Fuzzy Suche
[VB.NET] Rows eines DataGridView in ein String-Array konvertieren
[C#] kontrolliert ob String eine gültige GUID ist
[C#] HTML aus einem String entfernen
[C#] byte-String in byte wandeln
[C#] Formelevaluierung aus RPN Form
[C#] Erzeugen eines zufälligen Strings
[C#] mehrfach vorkommende Worte entfernen
[C#] Determines whether the specified input is numeric
[C#] Prozentual Textvergleichen
[C#] doppelte Leerzeichen aus einem String entfernen
[C#] Zählt wie oft ein String in einem String vorkommt.
[C#] String kürzen ohne ein Wort abzuschneiden
[C#] String auf erlaubte Zeichen prüfen
[C#] Austauch von kritischen Zeichen in einem String...
[VB.NET] String in Byte Array und zurück wandeln
[C#] Gross- Kleinbuchstaben in String schnell zählen
[VB.NET] Listen, Arrays, Strings konvertieren
[C#] CRC32-Hash eines Strings
[VB.NET] CRC32-Hash eines Strings
[C#] Größe eines Strings berechnen
[VB.NET] String Splitten
[C#] Capitalize the first letter of every word
[VB.NET] Textdatei lesen und schreiben (String, StringArray, etc...)
[C#] Text2Bitmap (String in Bild umwandeln)
[C#] Double in String umwandeln (mit InvariantCulture)
[C#] String in Double umwandeln (mit InvariantCulture)
[C#] Convert MAC string to byte array
[C#] Reverse String
[C#] Stellt fest ob ein String ein Palindrom ist
[VB.NET] String umkehren
[C#] Letztes Wort aus einem String ermitteln
[C#] Erstes Wort aus einem String ermitteln
[VB.NET] List all controls by using the name of the controls
[C#] Alle E-Mail Adressen aus einem String bzw. Text filtern
[C#] StringSplitter
[C#] Fundstelle eines Suchbegriffs markieren
[C#] Initialisiert alle String-Properties
[C#] MD5 Verschlüsselung
[C#] HTML Tags aus String entfernen
[C#] Geschachtelte Methode zur String-Bearbeitung
[C#] Byte Größenangaben als String formatieren (KB, MB, GB, ...)
[VB.NET] Permutation nachweisen
[C#] String zu MD5
[C#] Tabulatorzeichen durch Leerzeichen ersetzen
[C#] String in einzelne Wörter aufteilen und Wörter zählen
[VB.NET] Passwortgenerator
[C#] Render MVC Action as string
[C#] Namen von Klassenmember als String ermitteln
[C#] IncreaseString
[VB.NET] String uebers Netzwerk oder Internet and einen PC senden
[C#] String to char Tarnung
[C#] C# XOR Crypt
[C#] String-Formatierung für Faule: Erweiterungsmethode
[C#] Darstellung eines ASP.NET Steuerelementes als HTML-String
[C#] Wie ToString() welche mit null-Strings umgehen kann
[C#] simple generic pipeline
[C#] Controls gleichen Typs von einem Container in Winform holen
[C#] Duplikate aus einer IEnumerable entfernen
[C#] Enumerator as a parameter of a method
[C#] Stream, der mit foreach() durchlaufen werden kann
[C#] Eine allgemeine Liste (IEnumerable) in ein Array umwandeln
[C#] Zufälliger Eintrag aus einer Liste (Extension Method)
[C#] IsNull and IsNullOrEmpty Extension-Methods become Lazy

schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.