2017-08-22 66 views
1

我有在它的文字審查的領域,我想發現那裏的人已經使用特殊字符來獲得進攻的話等以往的過濾器,所以不是打字badword他們輸入b.a.d.w.o.r.db*a*d*w*o*r*dSQL文本功能

有沒有辦法在文字審查中查找單詞中的3個或更多特殊字符,也許某種特殊字符的計數功能?

+2

你有一個表/字段,你不允許的話嗎? – Matt

+1

一切皆有可能。 – sagi

回答

1

如果你有一個包含字段的表格,你不想讓你可以將它添加到WHERE子句中,就像使用REGEX_REPLACE那樣。

SELECT yourfield 
FROM yourtable 
WHERE REGEXP_REPLACE(yourfield,'[^a-zA-Z'']','') NOT IN (SELECT badwords 
                 FROM badwordstable) 
+0

感謝馬特,你不會相信有些人通過過濾器獲得的東西多麼有創意! – Gavin