SORU
7 Kasım 2008, Cuma


Ne kadar iyi bir küfür filtre uygulamak mı?

Birçoğumuz giriş metni potansiyel olarak istenmeyen veya küfürlü dil içeren kullanıcı girişi, arama sorguları ve durumlarla başa çıkmak için gerekli. Çoğu zaman filtre olmalı bu.

Nerede farklı dil ve lehçelerde yemin ederim sözleri iyi bir liste bulabilir mi?

İyi listelerini içeren kaynakları için kullanılabilir araçlar vardır? Ya da belki de basit bir API "evet ben temiz" veya "kirli" olan bazı parametreler?

Bazı millet sistemi, Bir gibi kandırmaya yakalamak için iyi yöntemleri nelerdir$$, azz, ya da a55?

Bonus eğer PHP için çözümler sunuyoruz, eğer işaret eder. :)

Edit: sadece önlemek ki bu cevaplara Yanıt programlı sorunu:

Örneğin, bir kullanıcı imaj arama hassas bir topluluk havuzuna eklenen resimler bulmak için kullanabilirsiniz zaman bu tür filtre için bir yer olduğunu düşünüyorum. Eğer "penis", o zaman muhtemelen birçok resim alacak, Evet. Ara ederlerse ... Eğer bu resimleri istemeyiz eğer doğru değilse, o zaman bir arama terimi olarak kelime önlenmesi kusursuz bir yöntem değil kuşkusuz ama iyi bir bekçi. İlk etapta kelimelerin listesi almak asıl soru şu.

Gerçekten kirli mi, değil tek bir belirteç dışında şekil ve sadece izin vermemek için bahsediyorum. Tamamen komik "uzun zürafa" referans. boyunlu gibi bir duygu önlenmesi rahatsız etmek istemiyorum Hiçbir şey yok. :)

CEVAP
7 Kasım 2008, Cuma


Obscenity Filters: Bad Idea, or Incredibly Intercoursing Bad Idea?

Ayrıca, dahi nerede The Untold History of Toontown's SpeedChat, unutamıyor bir "güvenli kelime beyaz" 14 yaşındaki hızlı bir şekilde ortaya engellemeyi ile: "Kabarık beyaz tavşan uzun boyunlu Zürafa benim olmanı istiyorum."

Sonuç olarak, seni, kesinlikle insan Gözden Geçirme (peer olsun veya başka) için yedek yoktur uygulayan Sonuçta, herhangi bir sistem için. Arabadan kurtulmak için basit bir araç uygulamak için çekinmeyin, ama azimli troll, kesinlikle sigara algoritma tabanlı bir yaklaşım olmalı.

Anonimlik kaldırır ve hesap verebilirlik (Taşma iyi yapar Yığın şey) getiren bir sistem yararlı da, özellikle John Gabriel's G.I.F.T. mücadeleye yardım etmek için sırada

Ayrıca Dansguardian -- açık kaynak bir proje kontrol etmeye başlamak için küfür listeleri varsayılan küfür kendi listeleri için kaynak kodunu kontrol alabilirsiniz nerede olduğunu sordu. Sizin için yararlı edinmekte bir nokta olabilir proxy için indirebilirsiniz bu da ek bir üçüncü şahıs Phrase List var.

Yanıt olarak düzenlemek soruyu düzenleyin:Yapmaya çalıştığın ne aydınlattığın için teşekkürler. Eğer sadece basit bir kelime filtresi yapmaya çalışıyorsan bu durumda, bunu yapmak için iki yol vardır. Ve sadece/ile değiştir bir düzenli sansür yapmak istediğiniz yasaklı ifadeler ile tek bir uzun regexp oluşturmak için. Bir düzenli ifade gibi:

$filterRegex = "(boogers|snot|poop|shucks|argh)"

ve bir hit için toptan testi için giriş dizesi preg_match() kullanarak çalıştırın

ya onları boş 8**.

Ayrıca bu fonksiyonları tek bir uzun düzenli yerine diziler ile yükleyebilirsiniz, ve Uzun kelime listeleri için daha yönetilebilir olabilir. Diziler esnek kullanılabilir için bazı iyi örnekler için preg_replace() bkz.

Ek PHP programlama örnekleri, bakın, bu sayfanın somewhat advanced generic class kelime filtreleme *'nın merkezi mektupları sansürlü kelime, ve bu previous Stack Overflow question da bir PHP örneği (asıl değerli kısmı var SQL tabanlı filtre kelimesi yaklaşım -- leet-konuş telafi etme olabilir reçete ile bulursan gereksiz).

Ayrıca ekledi: "İlk etapta kelimelerin listesi almak asıl soru şu."-- önceki Dansgaurdian bazı bağlantılar ek olarak, yardımcı olmaya 458 kelimeler this handy .zip bulabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Angry Paintballer

    Angry Paintb

    8 Ocak 2012
  • Brendan van Son

    Brendan van

    5 Aralık 2006
  • jkimisyellow

    jkimisyellow

    6 Mayıs 2009