基本上我想用这样的东西:
textheretextheretexthere
<table>
<tr><td>heres some stuff</td><td>and some morestuff</td></tr>
</table>
moretextheremoretexthere
删除所有的textthere和moretext只留下表格
您需要使用strpos
找到<table>
位置,然后使用substr
将文本删除到该点。</table>
$string = 'textheretextheretexthere<table><tr><td>heres some stuff</td><td>and some morestuff</td></tr></table>moretextheremoretexthere';
$table_pos = strpos($string,'<table>');
$string = substr($string,$table_pos);
//Your string now is <table><tr><td>heres some stuff</td><td>and some morestuff</td></tr></table>moretextheremoretexthere
$endtable_pos = strpos($string,'</table>')+8;//added 8 so i wont exclude </table>
$clean_string = substr($string,0,$endtable_pos);
//Your string now is <table><tr><td>heres some stuff</td><td>and some morestuff</td></tr></table>
当然,这不是完美的,我知道,但你得到了提示,你可以努力改进它,也许最终与一个功能,帮助你解决你的问题。
- 大小写敏感
- substr
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "n";
// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>
这是最简单的方法。
http://yelotofu.com/2008/08/jquery-outerhtml/