永发信息网

正则表达式匹配img中src的值

答案:5  悬赏:60  手机版
解决时间 2021-11-14 17:14
  • 提问者网友:杀手的诗
  • 2021-11-14 01:21
正则表达式匹配img中src的值
最佳答案
  • 五星知识达人网友:雾月
  • 2021-11-14 02:40
"]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>"
上面的引号中的内容就是正则表达式,用 C# 的正则表达式匹配 HTML 中的图片地址:
public static string[] GetHtmlImageUrlList(string sHtmlText)
{
// 定义正则表达式用来匹配 img 标签
Regex regImg = new Regex(@"]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase);

// 搜索匹配的字符串
MatchCollection matches = regImg.Matches(sHtmlText);

int i = 0;
string[] sUrlList = new string[matches.Count];

// 取得匹配项列表
foreach (Match match in matches)
sUrlList[i++] = match.Groups["imgUrl"].Value;

return sUrlList;
}

该方法返回一个字符串数组,存放的就是从 sHtmlText 字符串中取得的图片地址列表。
全部回答
  • 1楼网友:空山清雨
  • 2021-11-14 07:15
string regex="src=\"([\\W\\w]*?)\"/> ";
  • 2楼网友:荒野風
  • 2021-11-14 05:47
var data=''
var re=/]* src=(['"])(.*?)\1[^>]*>/i //正则表达式
if(re.test(data))alert(data.match(re)[2])
  • 3楼网友:低血压的长颈鹿
  • 2021-11-14 04:53
/
preg_match('', '', '');
  • 4楼网友:刀戟声无边
  • 2021-11-14 04:14
正则为:

Groups[1].Value的值就是需要的。
或者直接Match匹配的话可以这样写:
(?<=img.*?src=")[^"]+(?=")
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯