le proposte qui sopra non vanno bene per diversi motivi, ho screitto adesso questa che dovrebbe fare al caso tuo:
codice:
function delete_word($text, $ar_words, $cs = true) {
// andr3a
$ar_words = is_Array($ar_words) ? $ar_words : Array($ar_words);
if($cs != true) {
for($a=0; $a<count($ar_words); $a++) {
$ar_words[$a] = strtoupper($ar_words[$a]);
}
}
$text = explode(" ", $text);
for($a=0; $a<count($text); $a++) {
$cleared = eregi_replace("([^[:alpha:]])", "", $text[$a]);
$cleared = $cs == true ? $cleared : strtoupper($cleared);
if(in_Array($cleared, $ar_words)) {
$text[$a] = eregi_replace("([a-z0-9])", "", $text[$a]);
}
}
return implode(" ", $text);
}
Esempi:
Codice PHP:
// data una stringa nella variabile $stringa
$stringa = "Noi voi essi loro prova noisoso altro, boh non sa()pr[ei";
// ... ed un array con le parole da eliminare
$ar_words = Array("io", "tu", "egli", "noi", "voi", "essi", "altro");
// ecco la frase pulita
echo delete_word($stringa, $ar_words);
// ... oppure ...
echo "<hr />";
// ecco la frase pulita in modo case insensitive
echo delete_word($stringa, $ar_words, false);