我運行一個包含數百萬用戶生成的帖子,包含HTML的大型網站。其中一些帖子包含我廣告客戶不想在旁邊做廣告的敏感詞。我不想刪除這些帖子,而是審查「壞」字。我還需要保留標記,因爲讓用戶標記他們的帖子是該網站的主要功能。檢查可能包含標記的不適當單詞的最佳方法是什麼?
我目前正在使用搜索並用str_ireplace()
替換,但我們的作者已經變得聰明並且正在做一些事情(下文),這些事情都會通過我的原始過濾器。我可以去掉標籤,檢測到這個不恰當的單詞,但我正在尋找一種替換單詞的方式,同時保持標記不變。
例子:
成功審查:
input: "<p>Mary is a bitch.</p>"
output: "<p>Mary is a *****.</p>"
未成功審查:
input: "<p>Mary is a <strong>b</strong>itch.</p>"
failed output: "<p>Mary is a <strong>b</strong>itch.</p>"
desired output: "<p>Mary is a <strong>*</strong>****.</p>"
我不認爲這會有所幫助。如何b-itch,b * i * t * c * h,beetch,be-yatch等,令人生厭。這是一個連續的戰鬥,你添加規則,他們找到解決方法。 – SWeko
@SWeko - 我有我的單詞列表 - 問題是,有些作者正在做的事情像b ee tch其中有無限的可能性。 – Vidbot
首先,擺脫消息中的html。如果有的話,確實沒有辦法可靠地審查你的文本。然後,去掉所有非字母字符,然後將您的結果與所有可能發誓的大量圖書館進行比較。祝你好運。 – Cerbrus