HTML源码保留特定标签的过滤解决方案,欢迎交流
在对HTML源码过滤中比较困难的是保留指定的标签,比如要保留<table ...><img ...>而要删除<font ...><span ...>,近日在何信,夏侯文网友的帮助提示下实现了这个功能,与大家共享。
如果要问这样做有什么意义,我认为这对HTML转化成XML非常重要。
示例如下,保留<img ...>标签。此方法可方便应用在其它场合。
<!--使用正则表达式,借用两个特殊符号"♂""♀"-->
<script language="javascript">
var html="<html><head><title>新建网页</title></head><body><p><img border='0' src='file://Fileserver/Edu/kqnkx/asdf.gif' width='160' height='100'></p><table border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse' bordercolor='#111111' width='100%'><tr><td width='100%'><a href='http://expert.csdn.net/Expert/TopicView1.asp?id=1987654' target='_blank'>[高分求教]急需HTML转TEXT的源代码,除了IMG标记外,去掉其他所有的HTML标记(项目时间太紧,周5必须做完,请大家尽量帮忙!!!)</a>AXQ</td></tr></table><p><img border='0' src='file://Fileserver/Edu/kqnkx/asdf.gif' width='160' height='100'></p><p><a href='http://expert.csdn.net/Expert/TopicView1.asp?id=1987654' target='_blank'>[高分求教]急需HTML转TEXT的源代码,除了IMG标记外,去掉其他所有的HTML标记(项目时间太紧,周5必须做完,请大家尽量帮忙!!!)</a>AXQ</p><p><img border='0' src='file://Fileserver/Edu/kqnkx/asdfasdf.gif' width='160' height='100'></p><table border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse' bordercolor='#111111' width='100%'><tr><td width='33%'></td><td width='33%'></td><td width='34%'></td></tr><tr><td width='33%'></td><td width='33%'></td><td width='34%'></td></tr></table></body></html>";
alert(html); ///这是个示例字符串
html = html.replace(/\<img/g,"♂"); ///替换"<img"
html = html.replace(/(♂[^>]*)>/g,"$1♀"); ///替换">"
alert(html);
html = html.replace(/\<[^>]*>/g,""); ///过滤其它所有"<...>"标签
alert(html);
html = html.replace(/♂/g,"<img"); ///还原"<img"
html = html.replace(/♀/g,">"); ///还原">"
alert(html);
</script>