抓取关键词javascript之间的信息

时间:2011-07-09 00:37:50

标签: javascript string substring

我有一个应用程序正在将HTML提供给变量。我需要在HTML中找到第一个图像文件的URL(如果有链接的话)。这就是我现在所拥有的:

var media = row.content.substring(row.content.indexOf('<img src="') + 1, row.content.indexOf('"'));

然而,这并没有抓住正确的信息。谁能看到我做错了什么?

谢谢!

2 个答案:

答案 0 :(得分:0)

row.content.indexOf('“')返回src =

之后的第一个双引号的位置

答案 1 :(得分:0)

您的第二个indexOf将至少返回" <img src=",可能是之前的var ix, media = row.content.substring( ix = row.content.indexOf('<img src="') + 1, row.content.indexOf('"', ix+10) ); 。尝试:

var media = (row.content.match(/<img[^>]+src\s*=\s*"([^"]+)/) || 0)[1];

这将确保它在img src中找到之后的第一个引号

更好的方法是使用正则表达式:

{{1}}