serkan sendur 821 Postaholic Banned Featured Poster

In c# there is a built-in split method with which you can create a substring array seperated by one character from a string as follows :

// string seperated by colons ';'
    string info = "mark;smith;123 csharp drive;toronto;canada";

    string[] arInfo = new string[4];

    // define which character is seperating fields
    char[] splitter  = {';'};

    arInfo = info.Split(splitter);

    for(int x = 0; x < arInfo.Length; x++)
    {
        Response.Write(arInfo[x] + "<br>");
    }

but what if i want to create a substring array seperated by more than one characters like '#$' or '#$%' ?

The following method does exactly what i mean :

public string[] SplitText(string textToSplit,string splitter)
    {
        if (textToSplit.IndexOf(splitter) != -1 && splitter != string.Empty)
        {
            int count = 0;
            string temp = textToSplit;
            int count2 = splitter.Length;
            while (temp.IndexOf(splitter) != -1)
            {
                int seq = temp.IndexOf(splitter);
                int top = seq + count2;
                temp = temp.Remove(0, top);
                count++;

            }
            string[] splittedText = new string[count + 1];

            int i = 0;
            while (textToSplit.IndexOf(splitter) != -1)
            {
                int seq = textToSplit.IndexOf(splitter);
                splittedText[i] = textToSplit.Substring(0, seq);
                textToSplit = textToSplit.Remove(0, (seq + count2));
                i++;
            }
            splittedText[count] = textToSplit;
            return splittedText;
        }
        return new string[] {textToSplit};

    }