Есть HTML разметка:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<span class="btcBalance"><p>N BTC</p></span>
</body>
</html>
Мне нужно получить N, при учете, что N может быть числом с плавающей точкой с неогр. кол-вом знаков после точки, опираясь именно на <span class="btcBalance"
$str = '<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<span class="btcBalance"><p>N BTC</p></span>
</body>
</html>';
preg_match('~<span class="btcBalance"><p>(N|\d+\.?\d+).*</p></span>~i', $str , $a);
echo '<pre>'; var_dump($a[1]); echo '</pre>';
// N
Вариант с XPath :
$html = '<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<span class="btcBalance"><p>1.2222 BTC</p></span>
</body>
</html>';
$dom = new \DOMDocument;
$dom->loadHTML($html);
$finder = new \DomXPath($dom);
$node = $finder->query("//*[contains(@class, 'btcBalance')]");
var_dump((float) $node->item(0)->nodeValue);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок