<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];
?>