读书人

正则提取img标签属性与值(C#)解决办法

发布时间: 2012-04-23 13:17:38 作者: rapoo

正则提取img标签属性与值(C#)
如题,比如下面的字符串里有两个img标签:
<img src="aa.jpg" id="img1" />
<img src="bb.jpg" class="image" shuxing="shux" />
两个标签里的属性个数未知,顺序未知,有可能还存在自己添加的属性:比如shuxing="shux"
我现在想把这字符串里所有的img标签的属性提取出来结果放在:List<Dictionary<string,string>>(List<Dictionary<属性名称,属性值>>) 里面.请大家帮帮忙,


[解决办法]
属性(?is)(?<=\s*?)[a-z\d]*?(?==")
值(?is)(?<==")[a-z\d\.]*?(?=")
[解决办法]

C# code
void Main(){    string html=@"<img src=""aa.jpg"" id=""img1"" />            <img src=""bb.jpg"" class=""image"" shuxing=""shux"" />";    foreach(Match m in Regex.Matches(html,@"(?i)<img\s*((?<key>[^=]+)=""(?<value>[^""]+)"")+?\s*/>"))    {       foreach(Capture c in m.Groups["key"].Captures)       {         Console.WriteLine(c.Value);       }         Console.WriteLine("*************");         foreach(Capture c in m.Groups["value"].Captures)       {         Console.WriteLine(c.Value);       }        Console.WriteLine("*************");    }        /*            src        id        *************        aa.jpg        img1        *************        src        class        shuxing        *************        bb.jpg        image        shux        *************    */} 

读书人网 >asp.net

热点推荐