salve,
vorrei creare uno script che controlla una stringa e sostituisce le parole precedute da # in un link.
Esempio:
Se hai problemi chiedi a #luca che ne sa.
Diventa:
Se hai problemi chiedi a #luca che ne sa.
salve,
vorrei creare uno script che controlla una stringa e sostituisce le parole precedute da # in un link.
Esempio:
Se hai problemi chiedi a #luca che ne sa.
Diventa:
Se hai problemi chiedi a #luca che ne sa.
Il Cavaliere dei Sogni
Soluzione grezza ma funzionante:
Se avvii questo script puoi vedere che i link vengono creati, quindi in questo caso i link sono tutti contenuti dentro l'array $links.Codice PHP:
<?php
$frase = "ciao #marco e ciao anche a #giovanni";
preg_match_all("/#[a-z]+/", $frase, $matches);
$links = array();
for ($i=0; $i<=count($matches); $i++) {
$str = str_replace("#","",$matches[0][$i]);
$links[$i] = "[url='user/" . $str . "']" . $matches[0][$i] . "[/url]";
}
var_dump($links);
Quindi poi ti basta andare a sostituire le occorrenze della frase con i link.
<style>
#attenzione{
color: red;
}
</style>
--------------------
Link con ancora
http://www.miniscript.it
Se ti sono stato di aiuto in qualche modo in questo forum iscriviti alla fan page di Miniscript - il mio blog di programmazione web.
Ho smanettato un po' partendo dal tuo esempio e questo sembra andare
Dite che va bene?
Ho messo anche un # isolato per vedere se dava problemi.Codice PHP:
$testo = "ciao #marco e ciao anche a #giovanni72, ma a # #luca niente.";
echo preg_replace('/#(\w+)/', '[url="utente/\\1"]\\1[/url]', $testo);
Ciau
Il Cavaliere dei Sogni