Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/03/2011, 14:49
Avatar de dyegox
dyegox
 
Fecha de Ingreso: enero-2008
Mensajes: 173
Antigüedad: 16 años, 3 meses
Puntos: 7
Dos consultas relacionadas con expresiones regulares

Hola a todos, tengo dos consultas

1) estoy intentando hacer un highlighter de css y estoy intentnado que apartir de esto
color:#fff;
Obtener esto:
<span>color</span><span>:</span><span>#fff</span>

estoy usando la siguiente expresion regular para lograrlo:
Código PHP:
Ver original
  1. /((?:[a-z][a-z0-9-]*))^(:).*?((?:[a-z0-9\-_<>#"]*))/
Funciona, pero el problema es que si ahi un espacio por ejemplo:
color: #fff; o color :#fff
Deja de funcionar, se puede mejorar esta expresion? que falta que provoca un error si tiene espacios??

2) La funcion preg_replace_callback no me reconoce una funcion estoy haciendo algo asi,
Código PHP:
Ver original
  1. $code = preg_replace_callback('/(\\\'.*?\\\')/', create_function(
  2.             '$match',
  3.             'return "<span class=\"encomillado\">" . strip_tags($match[1]) . "</span>";'
  4.         ), $code);
Todo funciona, pero es como que no reconoce la funcion strip_tags, cual sera el problema?

Desda ya gracias :)