急急!!如何过滤脏话??,听说是用可以记事本写,请问该怎么写。或者其他什么好办法??

解决方案 »

  1.   

    在网站后台设置过滤字符
    void Application_BeginRequest(object sender, EventArgs e)
    {
      for (int i=0; i < Request.Form.Count;i++)
      {
      if (Request.Form[i].ToString() == "__VIEWSTATE") continue;
      if (IsM(Request.Form[i].ToString()))
      {
      Response.Write("您提交的内容中含有非法字符.");
      Response.End();
      }  }  
    }
    protected bool IsM(string InText)
    {
      string word = @"";
      if (InText == null)
      return false;
      if (Regex.IsMatch(InText,word))
      return true;
      return false;
    }  
     http://topic.csdn.net/u/20081115/21/545fb4ee-8013-4c8f-87ac-9198eece8f2b.html?seed=443082488
      

  2.   

    protected string FilterBadWords(string msg)
        {
            //这里读取数据
            //string name1 = "web_config";
            //string sql = "select webnotext from web_config";
            //DataSet ds = mssql.GreatDs(sql, name1);
            ////这里就是过滤了
            //string badwords = ds.Tables[0].Rows[0]["webnotext"].ToString();
    //上边从数据库中读取要过滤的字符
            string badwords = "晕|倒";
            string[] tempstr = badwords.Split('|');
            string finalstr = msg;
            for (int i = 0; i < tempstr.Length; i++)
            {
                finalstr = finalstr.Replace(tempstr[i], new String('*', tempstr[i].Length));
            }
            return finalstr;
        }
      

  3.   

    记事本是用来存储关键字的,读取出关键字,foreach循环遍历关键字逐个比较然后用Replace()替换
      

  4.   

    过滤脏话的情况有很过种,如果你仅仅是想排除掉脏话,HttpRequest有个Filter属性,可以试试,哈~~