1. 程式人生 > >匹配img標籤及img 的src的正則表示式

匹配img標籤及img 的src的正則表示式

text中img標籤:

<IMG height=375 alt="" src="http://www.mycreative.com.cn/upload/2010/4/tiancheng2.jpg" width=500>
<IMG alt="" src="http://www.mycreative.com.cn/upload/2010/4/s2.jpg">

匹配img標籤的正則表示式:string Pattern = @"<img/s+[^>]*/s*src/s*=/s*([']?)(?<url>/S+)'?[^>]*>";

 匹配img 的src的正則表示式:string Pattern = @"(?<=src/s*=/s*[/'/""]?)(?<url>[http/:////]?[^'""]+)";

                          匹配結果:http://www.mycreative.com.cn/upload/2010/4/tiancheng2.jpg

 

獲取text中img的src地址:

        string Pattern = @"(?<=src/s*=/s*[/'/""]?)(?<url>[http/:////]?[^'""]+)";

        Regex reg = new Regex(Pattern, RegexOptions.IgnoreCase);
        MatchCollection colMatch = reg.Matches(text文字);

        StringBuilder strImage = new StringBuilder();
        if (colMatch.Count > 0)
        {
            foreach (Match m in colMatch)
            {
                 strImage.Append(m.Value).Append(',');

            }
        }

 

匹配text的img,並給img標籤加上鍊接

            string Pattern = @"<img/s+[^>]*/s*src/s*=/s*([']?)(?<url>/S+)'?[^>]*>";

            Regex reg = new Regex(Pattern, RegexOptions.IgnoreCase);
            MatchEvaluator  myEvaluator=new MatchEvaluator(RepleaceReg);
            string content = reg.Replace(text文字), myEvaluator);

 

RepleaceReg函式:

       private string RepleaceReg(Match m)
        {
            string result=m.ToString();

     if (albumid != -1)
     {

           result="<a href=ImageShow.aspx?albumid=" + albumid + ">" + m + "</a>";
     }
      return resu