Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/10/2009, 06:00
Nisrokh
 
Fecha de Ingreso: septiembre-2009
Ubicación: Neuquén
Mensajes: 142
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: ¿Usar ^ y $ para cada palabra de un texto? (Para expresiones regulares)

Expresiones regulares es algo complejo y complicado por ahi, aunque me encantan :P

Te explico... El ^ representa el principio de una cadena, el $ representa el final de una cadena...

Código php:
Ver original
  1. $pattern = '/^[0-9]{4,5}$/';
  2. $subject = '2009';
  3.  
  4. if (preg_match($pattern, $subject)) print 'true';
  5. else print 'false';

Pero no confundas el ^ con [^]

Probra el ejemplo anterior cambiando esta variable:
Código php:
Ver original
  1. $pattern = '/^[^0-9]/';

[^0-9] significa: Ningún caracter entre el 0-9

o sea que la regexp. anterior se fija que la cadena de text No empieze con ningun número del 0 al 9

Vedria a ser lo mismo que [0-9] pero NEGATIVO

Si necesitas buscar un caracter como el ^ o el $, acordate de escaparlos: ej. \$
ya que sino te lo toma como parte de la expression... Estos son los caracters que deben ser escapados:

^ $ ( ) < . * + ? [ { \ | >

Te recomiendo leer este post: forosdelweb.com/f18/aporte-expresiones-pcre-646110/

Última edición por Nisrokh; 07/10/2009 a las 06:10