在 PHP 中选择 HTML 元素中的数字


Selecting numbers inside HTML element in PHP

<root>
<td align="left"><a title="Testing" href="www.test.com/product/">$129.00</a></td><td valign="bottom">Testing</td></root>

如何在上面示例中选择129.00?我不想要$.

目前我preg_match('/'$.{6}/')选择这个。这通常没问题,但是每当它变成 4 位字符串时,它就会失败。例如。 $50.00

谢谢。

正如许多人会告诉你的那样,不要使用正则表达式来解析HTML/XML结构。但是,如果您真的想要或必须使用正则表达式,请尝试以下模式:

'$([0-9'.]+)

有关替代方案,请看这里:

http://php.net/manual/en/book.simplexml.php

http://www.php.net/manual/en/book.dom.php

试试这个正则表达式,从这里得到它:链接

 '$'d+'.'d{2}

使用 REGEX 替换两个 HTML 标签之间的所有 "foo"(PHP 代码)

<?php
$string ='<root>
<td align="left"><a title="Digitan Technology: Click to see item" href="www.digitan.com.au/home.php?cat=2655" target="retailer">$115.20</a></td><td valign="bottom">AMD PHENOM X4 Quad Core 9650 CPU, 2.3GHz (95W), 4MB Cache, Sockets AM2+/AM2</td></root>';
preg_match('/'$([0-9'.]+)(?=(?:.(?!<a))*<'/a>)/', $string, $match);
echo $match[1];
?>