Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Probleme mit eregi-replace() (Badword-Filter)





Frage

Also ich habe folgendes Problem und ich hoffe ihr könnt mir irgendwie helfen. Das Problem ist das Suchmuster, die Badwords kommen aus einer Textdatei. Das Suchmuster was ich im Moment benutze sieht so aus $pattern = "(".$badwords[$i].")"; Nur leider funktioniert das nicht richtig. Ein Beispiel: $pattern = „man“; $text = „Niemand“ Das Ergebnis ist dann Nie***d Beispiel 2: $pattern = „*Z*“; $text = „Marsch“; Das Ergebnis ist dann M*****, korrekter Weise sollte es aber Marsch bleiben. Habt ihr Tipps wo ich gute Informationen über Suchmuster finde, oder hat vielleicht jemand ne Idee für mein Suchmuster. Über eure Hilfe wäre ich euch sehr dankbar. Mit freundlichen Grüßen Chris

Antwort 1 von bräuler

wenn du ganze wörter zensieren möchtest, dann musst du den text auch erstmal in wörter unterteilen. kannst du nach leerzeichen exploden, aber eigentlich ist alleine das schon eine ki-aufgabe. du wirst aber nur eine dumme zensierung realisieren (können), die nicht richtig funktioniert, leicht zu umgehen ist und kollateralschäden anrichtet, so wie die dumme zensur hier im sn dir gerade den quelltext zerschossen hat^^.
fazit: computer sind dumm!

Antwort 2 von bräuler

Zitat:
kannst du nach leerzeichen exploden

sorry das ist quatsch! besser: du kannst die patterns mit regulären ausdrücken so gestalten, dass am anfang und ende ein leerzeichen stehen muss. das ist programmiertechnisch sinnvoller, ändert aber nichts an der generellen misere.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: