Foros del Web » Programando para Internet » PHP »

Expresiones regulares con espacios

Estas en el tema de Expresiones regulares con espacios en el foro de PHP en Foros del Web. Tengo: eregi("^([0-1]):([0-9a-zA-Z_-]{2,30}):([0-9\.]{4,12})=([a-zA-Z_-\s]{2,30})\|",$linea,$regs); y quiero que [0-9a-zA-Z_-] pueda también incluir espacios, SOLO espacios, no quiero \n \r ni nada, solo espacios " "<- esto. Como puedo ...
  #1 (permalink)  
Antiguo 14/01/2008, 06:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 39
Antigüedad: 16 años, 5 meses
Puntos: 0
Expresiones regulares con espacios

Tengo:

eregi("^([0-1]):([0-9a-zA-Z_-]{2,30}):([0-9\.]{4,12})=([a-zA-Z_-\s]{2,30})\|",$linea,$regs);
y quiero que [0-9a-zA-Z_-] pueda también incluir espacios, SOLO espacios, no quiero \n \r ni nada, solo espacios " "<- esto.
Como puedo hacerlo? si dejo un espacio da error si hago \s da error...

Ideas? gracias
  #2 (permalink)  
Antiguo 14/01/2008, 07:16
 
Fecha de Ingreso: octubre-2007
Mensajes: 39
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: Expresiones regulares con espacios

¿es dificil? es que necesito ayuda =(
  #3 (permalink)  
Antiguo 14/01/2008, 07:24
 
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 32
Antigüedad: 16 años, 3 meses
Puntos: 1
Re: Expresiones regulares con espacios

Hmmm, primero te recomendaría que usaras: preg_match ( http://uk2.php.net/manual/en/function.preg-match.php ), hay gente que dice que son más rápidas y que consumen menos recursos del sistema.

Lo otro es simplemente añadir un espacio, ¿no?:
Que esto:
Código:
[0-9a-zA-Z_-]
Quedaría:
Código:
[ 0-9a-zA-Z_-]
Lo que te pudo haber pasado (y aquí empiezo a especular), es que colocaste el espacio después del signo de menos (-). Recuerda que el signo de menos también es usado para definir un rango, y la expresión regular se volvía loca cuando trataba de definir un rango desde "_" hasta espacio.

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:37.