如何用HTML :: Element中的新<p>test</p>
替换文本节点?
提前致谢。
答案 0 :(得分:1)
这是Mak Killbers自己的答案,从他的问题中扯到了它所属的地方:
===回答我自己的问题===
$ele->objectify_text();
my @childNodes = $ele->content_list();
for(my $j=0; $j < scalar(@childNodes); $j++) {
my $childNode = $childNodes[$j];
if (ref($childNode) && ($childNode->tag() eq '~text')) { #TEXTNODE
my $newElement = HTML::Element->new('p');
$newElement->push_content($childNode->attr('text'));
$childNode->replace_with($newElement)->delete();
}
}
$ele->deobjectify_text();