选择自己的路话题作文:谁能把eWebEditor显示内容(转换字符)那函数用C#写出来?

来源:百度文库 编辑:高考问答 时间:2024/05/11 05:45:07
具体应该是如下代码:
<%
' 输入参数:
' s_Content : 要转换的数据字符串
' s_Filters : 要过滤掉的格式集,用逗号分隔多个
Function eWebEditor_DeCode(s_Content, sFilters)
Dim a_Filter, i, s_Result, s_Filters
eWebEditor_Decode = s_Content
If IsNull(s_Content) Then Exit Function
If s_Content = "" Then Exit Function
s_Result = s_Content
s_Filters = sFilters

' 设置默认过滤
If sFilters = "" Then s_Filters = "script,object"

a_Filter = Split(s_Filters, ",")
For i = 0 To UBound(a_Filter)
s_Result = eWebEditor_DecodeFilter(s_Result, a_Filter(i))
Next
eWebEditor_DeCode = s_Result
End Function

%>

<Script Language=JavaScript RunAt=Server>
//===============================================
// 单个过滤
// 输入参数:
// s_Content : 要转换的数据字符串
// s_Filter : 要过滤掉的单个格式
//===============================================
function eWebEditor_DecodeFilter(html, filter){
switch(filter.toUpperCase()){
case "SCRIPT": // 去除所有客户端脚本javascipt,vbscript,jscript,js,vbs,event,...
html = eWebEditor_execRE("</?script[^>]*>", "", html);
html = eWebEditor_execRE("(javascript|jscript|vbscript|vbs):", "$1:", html);
html = eWebEditor_execRE("on(mouse|exit|error|click|key)", "<I>on$1</I>", html);
html = eWebEditor_execRE("&#", "<I>&#</I>", html);
break;
case "TABLE": // 去除表格<table><tr><td><th>
html = eWebEditor_execRE("</?table[^>]*>", "", html);
html = eWebEditor_execRE("</?tr[^>]*>", "", html);
html = eWebEditor_execRE("</?th[^>]*>", "", html);
html = eWebEditor_execRE("</?td[^>]*>", "", html);
break;
case "CLASS": // 去除样式类class=""
html = eWebEditor_execRE("(<[^>]+) class=[^ |^>]*([^>]*>)", "$1 $2", html) ;
break;
case "STYLE": // 去除样式style=""
html = eWebEditor_execRE("(<[^>]+) style=\"[^\"]*\"([^>]*>)", "$1 $2", html);
break;
case "XML": // 去除XML<?xml>
html = eWebEditor_execRE("<\\?xml[^>]*>", "", html);
break;
case "NAMESPACE": // 去除命名空间<o:p></o:p>
html = eWebEditor_execRE("<\/?[a-z]+:[^>]*>", "", html);
break;
case "FONT": // 去除字体<font></font>
html = eWebEditor_execRE("</?font[^>]*>", "", html);
break;
case "MARQUEE": // 去除字幕<marquee></marquee>
html = eWebEditor_execRE("</?marquee[^>]*>", "", html);
break;
case "OBJECT": // 去除对象<object><param><embed></object>
html = eWebEditor_execRE("</?object[^>]*>", "", html);
html = eWebEditor_execRE("</?param[^>]*>", "", html);
html = eWebEditor_execRE("</?embed[^>]*>", "", html);
break;
default:
}
return html;
}

// ============================================
// 执行正则表达式替换
// ============================================
function eWebEditor_execRE(re, rp, content) {
oReg = new RegExp(re, "ig");
r = content.replace(oReg, rp);
return r;
}
请帮我写出来一下,因为我.net后台用了eWebEditor但发现前台输出是HTML代码,帮帮忙,分不是问题

把你需要的直接用Replace方法转换即可~
注意用StringBuilder对象,效率很高

fan

/// <summary>
///转换html
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string HtmlEnCode(string str)
{
if(str==null)return "";
str.Replace("<","<");
str.Replace("&rt;",">");
str.Replace(""", ((char)34).ToString());
str.Replace("'", ((char)39).ToString());
str.Replace( "",((char)13).ToString());
str.Replace("<BR>",((char)10).ToString() );
return str;
}