Come da titolo dovrei estrarre delle parole da una stringa di testo
Nello specifico in un testo come:
@Pinco e @Pallino sono andati da @Sempronio
dovrei riuscire a prendere:
Pinco
Pallino
Sempronio
e passarli in un ciclo per verificare che almeno uno di quei nomi corrisponda ad una variabile.
Ho provato con
Codice PHP:
preg_match_all("/([@][a-zA-Z-0-9]+)/", $testo, $nome);
foreach ($nome[1] as $n){
if ($n==$variabile) {
$testo = preg_replace('/\@(.+?)/', '<span class="evidenzia">$1</span> ', $test);
} else {
$testo = preg_replace('/\@(.+?)/', '$1', $testo);
}
}
Oltre al fatto che sicuramente ho sbagliato l'espressione con preg_macht_all (ne ho provate un po' questa è solo l'ultima), sicuramente è sbagliata la funzione preg_replace messa in questo modo perchè poi mi "sostituirebbe" tutte parole precedute da una @ (quindi Pinco, Pallino e Sempronio) invece di sostituire solo quella nella variabile.
Ma andando per per ordine come faccio innanzitutto a estrarre i nomi?
Grazie