본문 바로가기

.NET/ASP.NET

ASP.NET FCK 에디터의 스크립트 함수 제거 하는로직 스크립트 제거 폼태그 제거 Fck Editor fck

반응형




    #region "스크립트제거"
    /// <summary>
    /// 스크립트제거 함수를 쓴 부분은 다시 가지고 올때 
    /// HttpUtility.HtmlDecode로 변경해줘야함
    /// </summary>
    /// <param name="strContents"></param>
    /// <returns></returns>
    public static string stripScript(string strContents)
    {
        string result = strContents;
        while (result.ToLower().IndexOf("<script") > -1)
        {
            result = result.ToLower().Replace("</script>", string.Empty);
            int startIdx = result.IndexOf("<script");
            int lastIdx = result.IndexOf(">", startIdx, result.Length - startIdx);
            result = result.Remove(startIdx, lastIdx - startIdx + 1);
        }

        return HttpUtility.HtmlEncode(result);
    }
    #endregion



#region "폼태그 제거"
/// <summary>
/// 스크립트제거 함수를 쓴 부분은 다시 가지고 올때 
/// HttpUtility.HtmlDecode로 변경해줘야함
/// </summary>
/// <param name="strContents"></param>
/// <returns></returns>
public static string delForm(string strContents)
{
string result = strContents;
while (result.ToLower().IndexOf("<form") > -1)
{
// result = result.ToLower().Replace("</script>", string.Empty);
int startIdx = result.IndexOf("<form");
//int lastIdx = result.IndexOf(">", startIdx, result.Length - startIdx);
int lastIdx = result.IndexOf("</form>", startIdx, result.Length - startIdx) + 7;
result = result.Remove(startIdx, lastIdx - startIdx + 1);
}

//return HttpUtility.HtmlEncode(result);
return result;
}
#endregion











    #region "홑따옴표 없애기 메서드"
    public static string stripApos(string strContents)
    {
        string result = strContents;
        result = result.Replace("'", "&apos;");

        return result;
    }
    #endregion

    #region "홑따옴표 되돌리기 메서드"
    public static string rewindApos(string strContents)
    {
        string result = strContents;
        result = result.Replace("&apos;", "'");

        return result;
    }
    #endregion