Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Fula ord filter

Postades av 2007-05-31 17:11:29 - Johan Andersson, i forum visual basic - allmänt, Tråden har 3 Kommentarer och lästs av 1106 personer

Hejsan!!
Håller på med en Bot till IRC (Själva boten är klar men läger fortfarande till kommandon).
Nu undrar jag hur man på ett enkelt sätt kan göra ett filter som upptäcker fula ord.
Den ska inte ta t.ex. "assume" som en fult ord på grund av dem tre första bokstäverna.
Utan jag vill att den ska kolla hela ordet och inte bara en del av ordet. Så om jag skulle skriva, ursäkta franskan: "Hello, ass" så ska den ta den men inte om man skriver:"Assume that the sky is blue".

Någon som har en ide hur man kan göra det på ett enkelt sätt?
Jag har försökt med att först kolla om något av de bokstavs kombinationer finns i den text som skickas och sedan leta reda på eventuella mellanslag föra och efter träffen. Men har inte fått det att funka :(

Tacksam för eventual kod eller sida som beskriver hur man kan göra.

Johan A


Svara

Sv: Fula ord filter

Postades av 2007-05-31 19:57:17 - Andreas Hillqvist

Här är ett mycket enkelt exempel:

Function Censur(Text As String) As String
Dim RegExp As RegExp
Dim words
    words = Array("fan", "jävla", "jävlar", "helvete")
    
    Set RegExp = New RegExp
    RegExp.Global = True
    RegExp.MultiLine = True
    RegExp.IgnoreCase = True
    RegExp.Pattern = "\b" + "(" + Join(words, "|") + ")" + "\b"

    Censur = RegExp.Replace(Text, "$1*fult ord*$3")

End Function

Private Sub Command1_Click()
    Text2.Text = Censur(Text1.Text)
End Sub


Eller om du istället bara vill ersätta mittersta bokstäverna med "*", "fan" blir "f*n" och "helvete" blir "h*****e":
Function Censur(Text As String) As String
Dim words
Dim result As String
Dim RegExp As RegExp
Dim match As match
    result = Text
    words = Array("fan", "jävla", "jävlar", "helvete")
    
    Set RegExp = New RegExp
    RegExp.Global = True
    RegExp.MultiLine = True
    RegExp.IgnoreCase = True
    RegExp.Pattern = "\b" + "(" + Join(words, "|") + ")" + "\b"
    
    For Each match In RegExp.Execute(Text)
        Mid(result, match.FirstIndex + 2, match.Length - 2) = String(match.Length - 2, "*")
    Next
    
    Censur = result
End Function

Denna kod funkar bara i vb och inte i vbscript då du inte kan använda mid för att sätta tecken på en position i en sträng.


Svara

Sv:Fula ord filter

Postades av 2007-05-31 21:01:05 - Johan Andersson

K tackar ska prova :D
Återkommer med resultatet.


Svara

Sv: Fula ord filter

Postades av 2007-05-31 21:51:50 - Johan Andersson

Fick det att funka som jag ville, efter lite om och men :)
Modifierad koden en aning så att den ersätter eventualle fula ord med <:>. koden som kallar functionen om den finns i texten, om den gör det kickar boten användaren som skrev det.
Funkar fin fint även om man använder stora och små bokstäver :D

Tackar Tackar för koden :) :): ) :)

Johan A


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 725
27 958
271 751
440
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies