提取html中的src 路径

时间:2024-12-11 22:06:20
  /// <summary>
/// 替换body中的img src属性 附加上域名
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
protected virtual string ReplaceImg(string str)
{
// 定义正则表达式用来匹配 img 标签
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); // 搜索匹配的字符串
MatchCollection matches = regImg.Matches(str);
int i = ;
string[] sUrlList = new string[matches.Count]; // 取得匹配项列表
foreach (Match match in matches)
sUrlList[i++] = match.Groups["imgUrl"].Value;
//return sUrlList;
foreach (var item in sUrlList)
{
string newStr = _storeContext.CurrentStore.Url + item.Substring(item.IndexOf('/')+);
str = str.Replace(item, newStr);
}
return str;
}