Gewusst wie: Analysieren von Zeichenfolgen mithilfe von String.Split (C#-Programmierhandbuch)How to: Parse Strings Using String.Split (C# Programming Guide)

Im folgenden Codebeispiel wird veranschaulicht, wie eine Zeichenfolge mithilfe der String.Split -Methode analysiert werden kann.The following code example demonstrates how a string can be parsed using the String.Split method. Als Eingabe akzeptiert Split ein Array von Zeichen, die angeben, durch welche Zeichen relevante Unterzeichenfolgen der Zielzeichenfolge getrennt werden.As input, Split takes an array of characters that indicate which characters separate interesting sub strings of the target string. Die Funktion gibt ein Array von Unterzeichenfolgen zurück.The function returns an array of the sub strings.

In diesem Beispiel werden Leerzeichen, Kommas, Punkte, Doppelpunkte und Tabstopps verwendet, die alle in einem Array, das diese Trennzeichen enthält, an Splitübergeben werden.This example uses spaces, commas, periods, colons, and tabs, all passed in an array containing these separating characters to Split. Jedes Wort im Satz der Zielzeichenfolge wird getrennt vom resultierenden Zeichenfolgenarray angezeigt.Each word in the target string's sentence displays separately from the resulting array of strings.

BeispielExample

class TestStringSplit
{
    static void Main()
    {
        char[] delimiterChars = { ' ', ',', '.', ':', '\t' };

        string text = "one\ttwo three:four,five six seven";
        System.Console.WriteLine("Original text: '{0}'", text);

        string[] words = text.Split(delimiterChars);
        System.Console.WriteLine("{0} words in text:", words.Length);

        foreach (string s in words)
        {
            System.Console.WriteLine(s);
        }

        // Keep the console window open in debug mode.
        System.Console.WriteLine("Press any key to exit.");
        System.Console.ReadKey();
    }
}
/* Output:
    Original text: 'one     two three:four,five six seven'
    7 words in text:
    one
    two
    three
    four
    five
    six
    seven
 */

BeispielExample

Standardmäßig gibt String.Split leere Zeichenfolgen zurück, wenn zwei Trennzeichen in der Zielzeichenfolge nacheinander angezeigt werden.By default, String.Split returns empty strings when two separating characters appear contiguously in the target string. Sie können einen optionalen StringSplitOptions.RemoveEmptyEntries-Parameter übergeben, um alle leeren Zeichenfolgen in der Ausgabe auszuschließen.You can pass an optional StringSplitOptions.RemoveEmptyEntries parameter to exclude any empty strings in the output.

String.Split kann ein Array von Zeichenfolgen aufnehmen (Zeichenfolgen, die als Trennzeichen für die Analyse der Zielzeichenfolge fungieren, statt einzelne Zeichen).String.Split can take an array of strings (character sequences that act as separators for parsing the target string, instead of single characters).

class TestStringSplit  
{  
    static void Main()  
    {  
        string[] separatingChars = { "<<", "..." };  

        string text = "one<<two......three<four";  
        System.Console.WriteLine("Original text: '{0}'", text);  

        string[] words = text.Split(separatingChars, System.StringSplitOptions.RemoveEmptyEntries );  
        System.Console.WriteLine("{0} substrings in text:", words.Length);  

        foreach (string s in words)  
        {  
            System.Console.WriteLine(s);  
        }  

        // Keep the console window open in debug mode.  
        System.Console.WriteLine("Press any key to exit.");  
        System.Console.ReadKey();  
    }  
}  
/* Output:  
    Original text: 'one<<two......three<four'  
    3 words in text:  
    one  
    two  
    three<four  
*/  

Siehe auchSee Also

C#-ProgrammierhandbuchC# Programming Guide
ZeichenfolgenStrings
Reguläre Ausdrücke von .NET Framework.NET Framework Regular Expressions