Php 使用简单的html dom解析器删除html实体
标记太糟糕了,我怎样才能去掉灰色部分?没有班级,没有身份证 我使用了简单的HTMLDOM解析器和这行代码来访问'dd'Php 使用简单的html dom解析器删除html实体,php,html,web-scraping,Php,Html,Web Scraping,标记太糟糕了,我怎样才能去掉灰色部分?没有班级,没有身份证 我使用了简单的HTMLDOM解析器和这行代码来访问'dd' $lyric = $lyricDOM->find('#fsZ dl', 0)->find('dd',0); // lyric block 您可以在回调中使用innertext和outertext函数在解析时提取和替换标记。简短示例: $html = str_get_html("<dd><font style='font-size:14px;'&g
$lyric = $lyricDOM->find('#fsZ dl', 0)->find('dd',0); // lyric block
您可以在回调中使用innertext和outertext函数在解析时提取和替换标记。简短示例:
$html = str_get_html("<dd><font style='font-size:14px;'>red<br>green<br>blue</font></dd>");
// Write a function with parameter "$element"
function my_callback($element) {
// This will be called every time the 'font' element is encountered
if ($element->tag=='font')
$element->outertext = $element->innertext;
}
// Register the callback function
$html->set_callback('my_callback');
// Callback function will be invoked while dumping
echo $html . "\n";
结果:
<dd>red<br>green<br>blue</dd>
有关innertext、outertext和回调的完整说明,请参阅。您可以展开回调以包含在解析过程中要忽略的其他元素。您只是想删除字体标记吗?如果是这样的话,一个简单的正则表达式可能是最好的选择。如果你去-你可以把这个内容放在数据输入中,并使用站点上的正则表达式输入来生成正则表达式。该网站将突出显示您选择的内容,以便您可以通过尝试学习。@girlwithglass例如?@Onovar:我不确定这是个好主意。使用正则表达式处理HTML可能会很快变得有点混乱。为此,@halfer感谢您的回答,每天学习: