大家好! 我遇到了一个正则表达式问题
Regex rx = new Regex(@"(<\/?(?!td|tr|u|table|img|div|span|br|object|select|/select|OPTION|/OPTION|param| |sup|/sup|sub|/sub|p|/p)[^>\/]*)\/?>|<![^>]+>", RegexOptions.IgnoreCase);
string result = rx.Replace(str, "");
我的目的是 滤掉 html标记(除tr|u|table|img|div|span.....特殊标记)遇到问题是str="<font>111<IMG ondblclick=Modify(this); title=\"wertewt< < < 123.GIF\"></font>"; 应得到结果:111<IMG ondblclick=Modify(this); title="wertewt< < < 123.GIF" >
但实际 我得到的是 111<IMG ondblclick=Modify(this); title="wertewt
Regex rx = new Regex(@"(<\/?(?!td|tr|u|table|img|div|span|br|object|select|/select|OPTION|/OPTION|param| |sup|/sup|sub|/sub|p|/p)[^>\/]*)\/?>|<![^>]+>", RegexOptions.IgnoreCase);
string result = rx.Replace(str, "");
我的目的是 滤掉 html标记(除tr|u|table|img|div|span.....特殊标记)遇到问题是str="<font>111<IMG ondblclick=Modify(this); title=\"wertewt< < < 123.GIF\"></font>"; 应得到结果:111<IMG ondblclick=Modify(this); title="wertewt< < < 123.GIF" >
但实际 我得到的是 111<IMG ondblclick=Modify(this); title="wertewt
解决方案 »
- 关于C#winform窗体数据库表里的某一条序号数据转移到同一个数据库另一张表里面问题
- 关于子窗体和主窗体的TCP调用的问题
- Page.RegisterStartupScript方法 添加链接问题?
- 【请教】关于同步两个数据库的数据问题?
- C#如何通过PictureBox继承产生一个新的控件,PictureBox下方包含Label
- 哪有C# Primer Plus电子书下载啊?
- 求eVC4.0 product id
- 关于UDP通信
- 重.net framework1.0 升级到1。1 需要装什么东西
- 怎么调用其他的窗口
- 如何获得显卡支持的分辨率信息
- treeview拖放子节点问题(类似QQ那样只拖放子节点到父节点)
< < < 123.GIF">
与你的模式匹配,被替换掉了,
<IMG ondblclick=Modify(this); title=\"wertewt< < < 123.GIF\">
如果考虑并解决了,那么一个正则就全部解决了,根本用不着多个正则,如果上面这个问题没有解决,那么再多的正则也没用另外就是正则效率本来就低,如果再写多个正则,每个正则去循环替换一次,那效率就不用想了因为可能在""或''内锯含“<”和“>”这两个字符,所以无法使用平衡组来做,只能用多重匹配,但写了一个,在测试工具里通过,程序里会导致程序崩溃,正则解决这类问题还是比较吃力的在另一个帖子里我用有限状态机实现了,可以做下参考
http://community.csdn.net/Expert/topic/5744/5744945.xml?temp=.806698