3v4l.org

run code in 500+ PHP versions simultaneously
<?php $html = <<<HTML <span>0 Dollar</span> <span>0.01 Dollar</span> <span>0.00 Dollar</span> <span>50.00 Dollar</span> HTML; $dom = new DOMDocument; $dom->loadHTML($html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD); $xp = new DOMXPath($dom); $xp->registerNamespace("php", "http://php.net/xpath"); $xp->registerPHPFunctions('preg_match'); $pattern = '/\A(?=[0.]*[1-9])\d+(?:\.\d+)?+\h+Dollar\z/'; $spans = $xp->query("//span[php:functionString('preg_match', '$pattern', text())>0]"); foreach ($spans as $span) { echo $span->nodeValue . PHP_EOL; }
Output for 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
0.01 Dollar 50.00 Dollar

preferences:
71.89 ms | 983 KiB | 4 Q