1. 程式人生 > >敏感詞庫快速新增到mysql資料庫,並在頁面使用方法過濾敏感詞

敏感詞庫快速新增到mysql資料庫,並在頁面使用方法過濾敏感詞

我們都知道,有些網站在對於一些敏感詞會進行處理,從而保證一些黃,賭,毒問題不會直觀的呈現在大家面前,可是有時候資料量大,難免會出現漏洞,所以建立一些敏感詞庫,讓電腦在檢索之後呈現的時候就過濾,從而保證網路的安全,綠色。

如果對你有用,記得贊一下,手敲不易,由於無法新增附件,如果想要敏感詞庫的,可以留言,到時候發給你。

在這裡我將我使用的敏感詞庫新增方式以及如何在頁面使用方法來過濾這些敏感詞。

1.首先我們需要找到一些類似於excel,txt型別的敏感詞庫。我的這個庫是從網上下載的那種常用的敏感詞庫(txt格式)。

2.首先開啟自己的mysql資料庫,然後在自己想要建立敏感詞表的資料庫裡找到----‘匯入嚮導’,選擇-----‘文字檔案(*.txt)’,然後點選下一步。


3.然後匯入之前下載的敏感詞庫表,編碼裡選擇chinese gbk型別的,點選下一步


4.然後這個頁面不用管,直接點選下一步。


5.這裡的也不用改,直接點選下一步


6.選擇對應的資料庫裡的表,如果沒有可以在這裡輸入新表名稱,並且新建表打√---點選下一步


7.將id設定為主鍵,其他地方不動,點選下一步


8.這裡其實說的已經很清楚,不過還是解釋一下(這裡我們選擇(1)。)

(1)如果之前沒有該表,該項是新建表

(2)如果之前資料庫裡的表修改過,這裡可以恢復到和敏感詞庫一樣。

(3)這裡是如果資料庫裡有對應的表,那麼存在的會更新,沒有的會新增新的

(4)刪除資料庫裡的一些內容和源表裡的一致的

(5)刪除原表裡的內容,然後從新新增新的資料


9.這裡不需要更改,直接點選下一步


10.完成後--點選關閉


11.會在資料庫裡新增敏感詞表,我這裡的名稱是senser


這裡敏感詞庫表就建立成功了,如果有新的詞要新增,可以同樣的步驟只是在步驟8裡選擇第三個新增或更新。

然後如何在頁面裡使用呢?

首先可以寫一個公用的類方法

比如

    public static string check_words(MySqlTransaction trans, string ncontent)
    {
      DataTable check_dt = new DataTable();
      string sql = string.Format("select * from sensitivewords");
                if (trans == null)
                {
                    check_dt = SqlHelper.Table(sql);
                }
                else
                {
                    check_dt = SqlHelper.Table(trans, sql);
                }
                if (check_dt.Rows.Count > 0)
                {
                    for (int i=0;i<check_dt.Rows.Count ;i++ )
                    {
                        ncontent = ncontent.Replace(check_dt.Rows[i]["swords"].ToString(), "**");
                    }
                }


                return ncontent;
    }

在類檔案裡寫好之後,可以在想要用的頁面呼叫此方法,如果有事務,則呼叫時候寫check_words(trans, string ncontent),如果沒有事務則check_words(null , string ncontent)

然後就會按照方法裡的設計,將敏感詞變為**。