Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/06/2011, 04:37
zzarcon
 
Fecha de Ingreso: febrero-2011
Ubicación: Aldaia
Mensajes: 4
Antigüedad: 13 años, 2 meses
Puntos: 0
Pregunta expresión regular en PHP + TWITTER

Hola a todos miren tengo un problema a la hora de reemplazar palabras de Twitter (hastacks) las cuales lleban delante # o @. El caso es el siguiente: tengo texto que me viene de Twitter con palabras que lleban delante estos dos caracteres y mi problema llega cuando quiero convertirlas a un formato determinado solamente las que cumplan esa condición (como hace Twitter vamos :). Aqui os dejo la función

Código:
function reemplazarHastacks($c) {
    $regex = "/(@|#)\w+/";
    $encontrado = preg_match_all($regex, $c, $resultados, PREG_SET_ORDER);
    if ($encontrado) {
        foreach ($resultados as $resultado) {
            $c = str_replace($resultado[0], "<a class='hastack'>" . $resultado[0] . "</a>", $c);
        }
    }
    return $c;
}
Ejemplo de uso: Si le pasamos el texto "Hola a tod@s mi alias en Twitter es @zzarcon #forosdelweb #forosdelweb#mola".

Solo deberia meterme entre las etiquetas hastack los textos "@zzarcon" y "#forosdelweb" excluyendo los otros dos casos --> "tod@s,#forosdelweb#mola".
Actualmente la función que e puesto me cojeria los 4 casos :S asi que si alguien me pudiese ayudar se lo agradeceria! venga un saludo a todos!!! :)