Avatar billede mrplov Nybegynder
06. november 2002 - 10:35 Der er 6 kommentarer og
1 løsning

match streng med forekomster i array

ehm, jeg skal lave et regex til php som kan tage en textstreng og matche et array's forekomster mod strengen
og udskifte dem med '*'
ex:

$filter=array('fuck','asshole','whore');

$text="get lost asshole";
efter regex
$text="get lost *******";

håber det er forståeligt..

på forhånd tak
Avatar billede mrplov Nybegynder
06. november 2002 - 11:19 #1
Det skal lige siges at, det er til en chat hvor det ikke skal väre lovligt at sige visse ord
Avatar billede jespernaur Nybegynder
06. november 2002 - 18:24 #2
Du kan prøve følgende:

  $filter = array('/fuck/','/asshole/','/whore/');
  $text = "get lost you fuck whore asshole";
  $text = preg_replace( $filter, "******", $text );

Bemærk, at preg_replace forlanger skråstreger i starten og enden af hver indgang i $filter.

Mvh
Jesper Naur
Avatar billede fynbo Nybegynder
26. november 2002 - 19:29 #3
$filter = array('/fuck/i','/asshole/i','/whore/i');
$text = "get lost you fuck WHORE asshole";
$text = preg_replace($filter, "******", $text );

og vi husker selvfølgelig lige vores /i efter hvert bandeord, så den er ligeglad om FOLK SKRIVER MED STORE BOGSTAVER
Avatar billede iqzero Nybegynder
07. januar 2003 - 12:18 #4
Eller udelad // og 'i' i $filter og set dem i linje tre i stedet.

$text = preg_replace("/".$filter."/i", "******", $text );
Avatar billede iqzero Nybegynder
07. januar 2003 - 12:19 #5
En nice funktion i preg_replace er, at $text (argument 'subject'/3) også kan håndtere et array.
Avatar billede loukas Mester
11. oktober 2003 - 14:29 #6
Bare en kommentar.
Det kunne være sjovt at erstatte forekomster således f.eks.
asshole - numsehul
shit - puha
Avatar billede mrplov Nybegynder
05. juli 2004 - 21:31 #7
!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester