1 /// <summary> 2 /// 替換body中的img src屬性 附加上域名 3 /// </summary> 4 /// <param name="str"></param> 5 /// <returns></returns> 6 protected virtual string ReplaceImg(string str) 7 { 8 // 定義正則表達式用來匹配 img 標籤 9 Regex regImg = new Regex(@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase); 10 11 // 搜索匹配的字符串 12 MatchCollection matches = regImg.Matches(str); 13 int i = 0; 14 string[] sUrlList = new string[matches.Count]; 15 16 // 取得匹配項列表 17 foreach (Match match in matches) 18 sUrlList[i++] = match.Groups["imgUrl"].Value; 19 //return sUrlList; 20 foreach (var item in sUrlList) 21 { 22 string newStr = _storeContext.CurrentStore.Url + item.Substring(item.IndexOf('/')+1); 23 str = str.Replace(item, newStr); 24 } 25 return str; 26 }