如何从给定的字符串中提取data-url?

Man*_*ore 0 php regex

  $string = '<img alt="Peachtree St Apartment 2" data-url="http://i.oodleimg.com/item/3472578127t_1m_condos,_townhouses_&amp;_apts_for_sale_in_johnson_city_tn/?1377909664" src="http://i.oodleimg.com/a/animate/spinner-small.gif" class="lazyload-image">';
Run Code Online (Sandbox Code Playgroud)

我想在PHP中提取data-url参数.

sub*_*ero 5

这对XPath来说非常棒!不知道XPath是什么?让维基百科回答:

XPath是XML Path Language,是一种用于从XML文档中选择节点的查询语言.另外,XPath可用于从XML文档的内容计算值(例如,字符串,数字或布尔值).XPath由万维网联盟(W3C)定义.

因此,对于您的特定用户案例,查询将是:

//img[@class='lazyload-image']/@data-url
Run Code Online (Sandbox Code Playgroud)

所以你可以使用它:

$query("//img[@class='lazyload-image']/@data-url");
$xpath->query($query);
Run Code Online (Sandbox Code Playgroud)

然后你可以自由地迭代它.我在这件事上考虑了你的img-tag附加的类,但随意删除:

//img/@data-url
Run Code Online (Sandbox Code Playgroud)

有关如何在手册中使用XPath with PHP(DOMXPath)的更多信息