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
Annonceindlæg fra Deloitte
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
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
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
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 );
07. januar 2003 - 12:19
#5
En nice funktion i preg_replace er, at $text (argument 'subject'/3) også kan håndtere et array.
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
Kurser inden for grundlæggende programmering