Php 简单HTMLDOM-跳过某些元素

Php 简单HTMLDOM-跳过某些元素,php,web-scraping,simple-html-dom,Php,Web Scraping,Simple Html Dom,我想忽略元素中的内容,只获取的文本 可以通过正则表达式来实现 preg_match_all('\<h3>([^\n]*\n+)+<a([^\n]*\n+)+<\/h3>\', $content, $output); echo $output[1]; preg\u match\u all('\([^\n]*\n++)删除标记可能有助于: $str = <<<str <h3> 144.000 TL <a class="emlak-e

我想忽略
元素中
的内容,只获取
的文本


可以通过正则表达式来实现

preg_match_all('\<h3>([^\n]*\n+)+<a([^\n]*\n+)+<\/h3>\', $content, $output);
echo $output[1];
preg\u match\u all('\([^\n]*\n++)

删除
标记可能有助于:

$str = <<<str
<h3>
144.000 TL
<a class="emlak-endeksi-link trackClick trackId_emlak-endeksi-link" id="emlakEndeksiLink">
Emlak Endeksi</a>
</h3>
str;

$html = str_get_html($str);

// Find first <h3>
$h3 = $html->find('h3', 0);

// Find first <a> inside the <h3>, or use $h3->find('a') to find all of them
$a = $h3->find('a', 0);

// Remove <a> tag
$a->outertext = '';

// Output: "144.000 TL"
print trim($h3->innertext);
$str=find('a',0);
//删除标签
$a->outertext='';
//产出:“144.000 TL”
打印修剪($h3->innertext);
不太熟悉简单的html dom,但是…通过选择文本节点应该有帮助吗

$ilanlar['price'] = $price->find('text', 0)->plaintext;

非常感谢你,@jakumi这对我很有效,而且是最短的方法
$str = <<<str
<h3>
144.000 TL
<a class="emlak-endeksi-link trackClick trackId_emlak-endeksi-link" id="emlakEndeksiLink">
Emlak Endeksi</a>
</h3>
str;

$html = str_get_html($str);

// Find first <h3>
$h3 = $html->find('h3', 0);

// Find first <a> inside the <h3>, or use $h3->find('a') to find all of them
$a = $h3->find('a', 0);

// Remove <a> tag
$a->outertext = '';

// Output: "144.000 TL"
print trim($h3->innertext);
$ilanlar['price'] = $price->find('text', 0)->plaintext;