desde hace tiempo he querido realizar un clon de este sitio: http://www.sp34k1337.com/ que en el momento que estoy escribiendo esto no funciona, pero básicamente es un traductor l33t de sitios web.
lo que hace es hacer reemplazos de, por ejemplo, la letra a por un 4, la e por un 3 y letras que se parezcan a números pero sin afectar las etiquetas.
es decir, el siguiente texto plano
Código :
hola, como estan?
lo reemplazaria por:
Código :
h014, c0m0 3574n?
pero si se encuentra tags, las deja intactas:
Código :
<a href="http://www.cristalab.com/">este es cristalab</a>
reemplazado:
Código :
<a href="http://www.cristalab.com/">3573 35 cr157414b</a>
maikel me ha proporcionado un pedazo de código que funciona bastante bien, pero no es recursivo, si un <b> está dentro de un <p> todo se jode. este es el código:
Código :
<?php //a href="test">este es texto leet</a> //<a href="test">3573 35 73x70 1337</a> $text = '<a href="test">este es texto leet</a'; function leetFunction( $match) { $chars = array("s","e","l","t", "o"); $leetChars = array("5","3","1","7", "0"); return $match[1] . str_replace($chars, $leetChars, $match[2]) .$match[3]; } echo "<b>Texto original:</b> <br /> $text"; echo "<br /><b>Texto leet:</b> <br />"; echo preg_replace_callback("/(<.*>)?(.*?)(<\/.*>?)/", "leetFunction", $text); ?>
alguien me podría echar una mano con esto, o alguna referencia a algún tutorial de regexp avanzado?
gracias