Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/12/2010, 08:33
jmrgjuan
 
Fecha de Ingreso: diciembre-2010
Mensajes: 1
Antigüedad: 13 años, 4 meses
Puntos: 0
Expresión regular para detectar el símbolo $


Hola, estoy interesado en filtrar las ocurrencias del símbolo $ que aparezcan "sueltas" en un texto, es decir, precedidas y seguidas de al menos un espacio o tabulador o salto de línea.
He probado con esta rutina:

$text2 = 'a $ a $ d
$ f $ d $ $ d';
//El filtrado consistirá en cambiar dichas ocurrencias de forma que "$" se convierta en "\$",
//por eso capturo el índice
$count = preg_match_all ( '/\s+\$\s+/', $text, $matches, PREG_OFFSET_CAPTURE );
echo "count: " . $count;

==> count: 5

Lo que sucede aquí es que no detecta el carácter $ si está precedido de otro $ (aunque haya antes espacios o tabuladores).

Entiendo que el caracter $ es un poco puñetero por tener un significado especial dentro de las expresiones regulares, pero aun así no consigo solucionar este problema. ¿Alguien puede echarme una mano?