У меня есть несколько таких абзацев HTML (всегда одинаковая структура):
<p>
<!-- Gl. 1-4 -->
\( x(t) = x_0 · t^3 \)
[!equanchor? &id=`555`!]
</p>
Я удаляю 555
успешно:
$xpath = new DomXPath($dom);
$paragraphs = $xpath->query('//p');
foreach($paragraphs as $p)
{
$ptext = $p->nodeValue;
if(strpos($ptext, 'equanchor') !== false)
{
// get equation id from anchor
preg_match('/equanchor\?\s\&id=`(.*)\`/', $ptext, $matches);
$equationids[] = (int)$matches[1];
}
}
Теперь мне также понадобится текст из HTML-комментария , то есть <!-- Gl. 1-4 -->
, но я не смог выяснить, как использовать для этой цели парсер DOM (DomXPath). К сожалению, $p->nodeValue
и $p->textContent
не содержат текст комментария.
Этот ответ мне не помог. Я попытался "sub parser", но он не смог прочитать $ptext
или $p
.