Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   .NET (https://www.clubdelphi.com/foros/forumdisplay.php?f=17)
-   -   ValidationExpression que acepte numeros y guiones (https://www.clubdelphi.com/foros/showthread.php?t=34246)

YaninaGenia 02-08-2006 16:33:33

ValidationExpression que acepte numeros y guiones
 
Buenassss
Tengo un box que carga numeros telefonicos. El usuario carga sin formato, es decir, puede o no ingresar codigo de pais, codigo de provincia, etc. Lo que yo quiero es permitir que SOLO ingrese numeros o guiones. Yo arme algo asi:
Código:

ValidationExpression="-?\d*"
Y deja o no poner el guion, que esta bien, pero solo lo permite adelante. Lo que necesito es que el usuario ponga el guion donde quiera, es decir, no tiene que seguir ningun formato, numeros y guiones infinitos.

Yanina Genia

YaninaGenia 08-08-2006 15:12:10

Respuesta
 
Ya encontre como hacerlo, es
Código:

ValidationExpression="([0-9]|-)*"

ManiacPC 02-09-2007 16:05:25

Validacion
 
Este codigo es de saiyine,
en la cadena CAD eliges lo que pondrás, (en el ejemplo es para un edit hexadecimal)
Me parece bastante util en tiempo real, pones el procedimiento en OnChange y evitas los pillos pegados y validaciones posteriores.


Código Delphi [-]
procedure TForm1.FiltroEdit(Sender: TObject);
var
i : integer;
aux,aux2,cad : string;
begin
        cad:='0123456789abcdefABCDEF';   // Solo se admiten estos caracteres
        aux2:='';
        with (Sender as TEdit) do
        begin
                aux:=text;
                for i:=1 to length(aux) do
                if pos(aux[i],cad)>0 then aux2:=aux2+aux[i];
                text:=aux2;
                SelStart:=length(aux2);
        end;
end;

Saludos

__hector 03-09-2007 19:21:27

El codigo lo veo bien. Pero habria que programar cada validacion a mano (en el sentido de asociar el metodo que maneja el evento de cada textbox al codigo), cosa que nos evitamos al utilizar expresiones regulares.

Vamos, que es preferible, antes de reinventar la rueda y escribir rutinas para verificar las entradas de usuario, utilizar expresiones regulares, que son mucho mas poderosas y flexibles, y hace un tiempo ya que existen.

ManiacPC 27-09-2007 01:22:26

Expresiones Regulares
 
Vaya, si que tienes razón,
Que arcaíco el pensar de mi parte que hay que realizar código para todo.

No conocía las expresiones regulares en delphi ^^
http://www.latiumsoftware.com/es/articles/00009.php
Ese boletín también será de ayuda.

Saludos


La franja horaria es GMT +2. Ahora son las 19:01:43.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi