【问题标题】:Grabbing information between key words javascript在关键字javascript之间抓取信息
【发布时间】:2011-07-09 00:37:50
【问题描述】:

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

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

但是,这并没有获取正确的信息。谁能看到我做错了什么?

谢谢!

【问题讨论】:

  • 您应该提供一些输入示例。

标签: javascript string substring


【解决方案1】:

您的第二个indexOf 将至少返回来自&lt;img src="",可能是更早的一个。试试:

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

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

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

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

【讨论】:

    【解决方案2】:

    row.content.indexOf('"') 正在返回 src= 之后的第一个双引号的位置

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多