当前位置: 代码迷 >> ASP.NET >> 正则提取img标签属性与值(C#)解决办法
  详细解决方案

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

热度:7736   发布时间:2013-02-25 00:00:00.0
正则提取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        *************    */}
  相关解决方案