从字符串中提取字符串1.jpg; 1.jpg:2.jpg:3.jpg

时间:2013-09-02 06:31:23

标签: c# string replace extract

我有一个字符串

;1234.jpg;1356.jpg;7890.jpg

我想要1234.jpg和1356.jpg以及7890.jpg,每个都有不同的字符串。

任何想法! 是的,我正在使用VS 2010和C#,我只需要一些想法......让我们做

   string allimage = ";1234.jpg;1356.jpg;7890.jpg";

我想要

string a;    // here i want 1234.jpg
string b;    //  here i want 1356.jpg
string c;    // here i want 7890.jpg

3 个答案:

答案 0 :(得分:4)

您可以使用String.Split(Char[], StringSplitOptions)方法;

string str = ";1234.jpg;1356.jpg;7890.jpg";
string[] array = str.Split(new char[] {';'}, StringSplitOptions.RemoveEmptyEntries);

string a = array[0];
string b = array[1];
string c = array[2];

Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(c);

输出将是;

1234.jpg
1356.jpg
7890.jpg

这是DEMO

答案 1 :(得分:2)

试试这个:

string allimage = dt.rows[0]["listing_media"].tostring();
var images = allimage.Split(new char[]{';'},StringSplitOptions.RemoveEmptyEntries);

string a = images[0];
string b = images[1];
string c = images[2];    

它会将您的字符串拆分为字符串列表并删除空的第一个条目。

答案 2 :(得分:2)

您可以使用C#String-Split: http://msdn.microsoft.com/de-de/library/b873y76a(v=vs.85).aspx

并使用RemoveEmptyEntries,因此您无法获取任何空条目;)

    string[] cSplitted = ";1234.jpg;1356.jpg;7890.jpg".Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
    foreach(string cString in cSplitted)
    {
        Console.WriteLine(cString);
    }
    Console.ReadLine();