javascript 正则表达式 全部替换<***> 为“”

<li><a href025616163715.shtml TARGET=_blank>职称不再要求</a><FONT style="FONT-SIZE:12px"> (8月24日)</FONT>
<li><a href=025616163704.shtml TARGET=_blank>火公园今日将提前限客</a><FONT style="FONT-SIZE:12px"> (8月24日)</FONT>

说明: 我想用正则表达试来替换上面的成

职称不再要求(8月24日)
火公园今日将提前限客都市(8月24日)

说白了。就是想去掉HTML格式

还有。如果我要用正则表达式来替换
?????<FONT style="FONT-SIZE:12px">****</FONT>??????
注*号为可变为任意字符串

我要把“<FONT style="FONT-SIZE:12px">****</FONT>"这个替换了呢?怎么做?

问题总结:
1 清除全文的Html格式控制,只保留文本
2 清除全文有规则变化的指定字符串 如"<font ??>???</font>". 把它替换成空
XMUmeyu

第二点也是要清除Html 代码中的 <script>xxxx</scritp>的内容
还有就是想去掉有的不想要的比如上面的
<li><a href025616163715.shtml TARGET=_blank>职称不再要求</a><FONT style="FONT-SIZE:12px"> (8月24日)</FONT>
<li><a href=025616163704.shtml TARGET=_blank>火公园今日将提前限客</a><FONT style="FONT-SIZE:12px"> (8月24日)</FONT>

我想把上面(8月24日) 这外清除了! 因为它是变化的。不能用死字符串来替换只好用正则表达式。

主要想完成功能
清除不要的内容
清除HTML标记。达到只要光文本 但是图片要留下。

你好。可以帮我改改。正则吗?如果要什么什么例外

主要是我想留下<img scr="ss">
还有<a href="xx"><img src="sss"></a>

上面一清。什么都没得了!
最新回答
巅峰小学生

2024-10-22 19:34:16

因为js不支持类似 /<(?!(a|img))[^>]*(?<!(a|img))>/ 的零宽度正回顾后发断言的正则方式,这题用正则就比较麻烦了

假如需要保留的部分不会被其他标签包含,可以这样:

str.replace(/<font .*?<\/font>/ig,"").
replace(/<script .*?<\/script>/ig,"").
replace(/<(a|img)/ig, "@@@$1").
replace(/<[^>a]*>/ig, "").
replace(/@@@(a|img)/ig, "<$1");

简单测试通过....不知道实用性如何,没有考虑复杂情况

-----------------------
以下是原回答:

1.清除HTML格式:

假设原字符串是用\r\n分行,获取的结果以<br />分行,HTML字符串符合XHTML标准

则有: str.replace(/<[^>]*>/g, "").replace(/\r\n/g, "<br />");

试运行:
<script language="javascript" type="text/javascript">
var str = "<li><a href025616163715.shtml TARGET=_blank>职称不再要求</a><FONT style=\"FONT-SIZE:12px\"> (8月24日)</FONT>\r\n" +
"<li><a href=025616163704.shtml TARGET=_blank>火公园今日将提前限客</a><FONT style=\"FONT-SIZE:12px\"> (8月24日)</FONT>";
document.write(str.replace(/<[^>]*>/g, "").replace(/\r\n/g, "<br />"));
</script>

2.清除font
前提,字符串符合XHTML标准(即元素闭合正常)
str.replace(/<font .*?<\/font>/ig,"");
╭阳光刺穿心脏

2024-10-22 11:42:49

楼主,实在不好意思,给你写的答案发布了,才发现只能匹配一行,删了,等等高人吧,对不住了
初雪未央

2024-10-22 11:50:34

你这个要求有点麻烦,与其费尽心思去想正则怎么写,还不如写一段小小的脚本来处理。你想想为这个问题付出的时间与收到的成效成正比吗?