Foros del Web » Programando para Internet » PHP »

problema expresion regular

Estas en el tema de problema expresion regular en el foro de PHP en Foros del Web. Lectores del foro , tengo el siguiente problema con una expresion regular necesito que tenga el siguiente formato 123A pueden ser numeros del 0 al ...
  #1 (permalink)  
Antiguo 17/08/2011, 08:53
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
problema expresion regular

Lectores del foro ,

tengo el siguiente problema con una expresion regular necesito que tenga el siguiente formato 123A pueden ser numeros del 0 al 9 acompañados de una letra de la A a la Z , la verdad me e leido la documentacion pero no logre entender

tengo algo como esto

Código PHP:
Ver original
  1. /^.{4,}$/^[0-9][a-zA-Z]$/

espero puedan echarme una mano .

saludos y gracias
  #2 (permalink)  
Antiguo 17/08/2011, 09:16
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: problema expresion regular

Cualquier dígito: [0-9]
Cualquier letra, mayúscula o minúscula: [a-zA-Z]
Tienen que ser siempre 3 números?: {3}

/^[0-9]{3}[a-zA-Z]$/

Esto sería, 3 y sólo 3 dígitos seguidos de una única letra.

Si la letra puede estar o no estar, tienes que añadir ? al final.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #3 (permalink)  
Antiguo 17/08/2011, 09:21
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problema expresion regular

muchas gracias , funciono a la perfeccion , seguire leyendo hasta aprender a usarlas bien .

Saludos
  #4 (permalink)  
Antiguo 17/08/2011, 09:32
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: problema expresion regular

Échale un ojo aquí, con esto y un poco de imaginación se monta la que quieras.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #5 (permalink)  
Antiguo 17/08/2011, 10:10
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problema expresion regular

mi amigo una ultima consulta , en el caso de ser numeros entre 100 y 9999 mas una letra como cambiaria la funcion .

Saludos
  #6 (permalink)  
Antiguo 17/08/2011, 11:29
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 8 meses
Puntos: 793
Respuesta: problema expresion regular

Código PHP:
Ver original
  1. /^[100-9999]{3,4}[a-zA-Z]$/
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 17/08/2011, 12:44
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problema expresion regular

gracias mi amigo , pero ya habia encontrado la solución se agradece la buena voluntad

Código PHP:
Ver original
  1. /^[1-9][0-9]{2,3}[A]$/

hice la modificación ya que solo me piden la letra A

saludos
  #8 (permalink)  
Antiguo 17/08/2011, 12:49
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 8 meses
Puntos: 793
Respuesta: problema expresion regular

Bueno si lo vas a hacer así te sobran esos corchetes

Código PHP:
Ver original
  1. /^[1-9][0-9]{2,3}A$/

Código PHP:
Ver original
  1. /^[100-9999]{3,4}A$/
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #9 (permalink)  
Antiguo 17/08/2011, 12:53
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: problema expresion regular

Yo lo pondría así, no sé si el de @andreszphp funciona o no, no puedo probarlo (que estoy en casa):
- Tienes el rango 0100 a 9999 más la letra (que la añadimos al final).
- Si la primera cifra es 0 o no aparece (0?), la segunda tiene que ser 1 o más ([1-9]{1}), para no permitir el rango 0000-0099. Las demás pueden variar de 0 a 9 ([0-9]{2}: (0?[1-9]{1}[0-9]{2})
- Si la primera cifra es 1 o más ([1-9]{1}), las demás pueden variar de 0 a 9 ([0-9]{3}): ([1-9]{1}[0-9]{3})
- Tenemos una opción o la otra (|) y añadimos la letra al final: (A|B)[a-zA-Z]

Luego obtenemos:
Código PHP:
Ver original
  1. /^((0?[1-9]{1}[0-9]{2})|([1-9]{1}[0-9]{3}))[a-zA-Z]$/

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #10 (permalink)  
Antiguo 17/08/2011, 13:12
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: problema expresion regular

vgonza , el requerimiento es este formato numeros del 100 al 9999 mas la letra A

ej 100A o 1234A

pd: el codigo que puse lo probe y funciono ok , lo estoy usando en un prefabricado limesurvey

saludos

Última edición por matt_1985; 17/08/2011 a las 13:18

Etiquetas: expresion, regular
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 07:19.