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.32, 8.3.0 - 8.3.33, 8.4.1 - 8.4.24, 8.5.0 - 8.5.9
0.01 Dollar 50.00 Dollar

preferences:
65.06 ms | 1041 KiB | 4 Q