Foros del Web » Programando para Internet » Javascript »

Expresion regular sin # y con maximo 4 numeros

Estas en el tema de Expresion regular sin # y con maximo 4 numeros en el foro de Javascript en Foros del Web. Hola ForerosdelWeb.. tengo una expresion regular, que quiero que no me agarre el simbolo de # ya que me da conflictos en la ruta de ...
  #1 (permalink)  
Antiguo 07/01/2010, 15:35
 
Fecha de Ingreso: noviembre-2009
Mensajes: 110
Antigüedad: 14 años, 5 meses
Puntos: 1
Expresion regular sin # y con maximo 4 numeros

Hola ForerosdelWeb.. tengo una expresion regular, que quiero que no me agarre el simbolo de # ya que me da conflictos en la ruta de direcciones al enviar el formulario, esta es la expresion que tengo:

var Vali_Dom = /^([A-Z]|Ñ|á|é|í|ó|ú|ñ|ü|\s)|([0-9])+$/

que me faltara agregar y tambien quiero que no me acepte mas de 4 numeros: no quiero que metan algo asi por ejemplo:

200000000000039393

CALLE SOLITARIA #123

no quiero que metan # ya que para eso tengo otro campo para meter el numero de casa
.. De antemano muchas gracias
  #2 (permalink)  
Antiguo 08/01/2010, 03:01
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: Expresion regular sin # y con maximo 4 numeros

hola jisravila,

te dejo aquí la típica función para validar el campo de texto con patrón añadiendo un control de cuantos números se han introducido; si ya hay cuatro en el campo de texto no deja escribir más:

-----------------------------------------------------

function f_Solo4Num(e)
{
var tecla;
tecla = (document.all) ? e.keyCode : e.which;
if(tecla == 8)
{return true;}
var patron;
patron = /^([A-Z]|Ñ|á|é|í|ó|ú|ñ|ü|\s)|([0-9])+$/;
var te;
te = String.fromCharCode(tecla);

var texto = document.getElementById('campo_texto').value;
var nums = 0;
var caracterNumero = new Number(te);
var topeNumeros = false;
if(!isNaN(caracterNumero))
{
for(i=0;i<texto.length;i++)
{
var nCaracter = new Number(texto.substring(i,i+1));
if(!isNaN(nCaracter))
nums += 1;
if(nums>3)
{topeNumeros = true;break;}
}
}
if(topeNumeros)
return false;
else
return patron.test(te);
}
-------------------------------------------------

prueba y nos cuentas.

salu2.

Etiquetas: expresion, maximo, numeros, 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:05.