HTML源码保留特定标签的过滤解决方案,欢迎交流

shuangren 2003-07-04 02:48:30
在对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>
...全文
19 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
imafool 2003-07-24
繁?
回复
lgj1012 2003-07-23
我mark
回复
[大楚] 2003-07-11
我顶!有用
回复
shuangren 2003-07-11
败托顶一下,结不了贴呀
回复
相关推荐
发帖
JavaScript
创建于2007-09-28

8.5w+

社区成员

Web 开发 JavaScript
申请成为版主
帖子事件
创建了帖子
2003-07-04 02:48
社区公告
暂无公告