我想从某个 html 文档中删除所有星号。但只有在 ul-tag 中的那些。其中一些 ul-tags 也有一个类。经过几个小时的尝试,我决定问。
谢谢你的帮助。
这是您需要的:
<?php
// a function to remove any asterisks from a string
function replace_asterisks($replace){
return str_replace('*', '', $replace[0]);
}
$html = '* blah blah * * <ul>blah<li>*</li>*</ul> sad sad <ul>**</ul>';
// if found any <ul> with asterisks, pas the part to that function to remove asterisks from it
$html = preg_replace_callback('/<ul.*?>.*?\*.*?.*?<\/ul>/', 'replace_asterisks', $html);
echo $html;
?>
你可以试试这个:
<ul[^>]*?>(.*?[*]+.*?)*</ul>