Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   validar el nombre de una tabla (https://www.clubdelphi.com/foros/showthread.php?t=62606)

Luis_264 04-01-2009 17:43:16

validar el nombre de una tabla
 
ola disculpen no me podrian dar un ejemplo de como validar el nombre de una tabla grax de antemano

Kipow 04-01-2009 17:55:22

Talvez si te explicas un poco mejor con gusto :)

Luis_264 04-01-2009 19:21:12

ps voy a crear una tabla con un ttable pero el nombre que pida para la tabla lo ocupo validar que no tenga caracteres invalidos y esas cosas

Lepe 04-01-2009 23:10:22

Código Delphi [-]
function filtraNombre(base:string):string;
const permitidos= ['A'-'Z','a'-'z','0'-'9','_'];
const letras = ['A'-'Z','a'-'z'];
var i:integer;
begin 
result := EmptyStr;
   if base[1] in letras then
    for i:= 1 to length(base) do
      if base[i] in permitidos then
        result := result + base[i]
  end;
end;

Que yo sepa, la primera letra debe la tabla debe estar entre la A y Z, después pueden usarse letras y números, así como el guión bajo. Sólo se permiten letras estandard del ascii (más que nada por compatibilidad).

Se permiten espacios, pero eso ensucia mucho el código después, por tanto, no lo he permitido.

Saludos

Luis_264 05-01-2009 00:55:27

mmm pero me dice en las constantes en la coma ',' --> const permitidos= ['A'-'Z','a'-'z','0'-'9','_'];
me marca error que el operador no es valido ? :S

Lepe 05-01-2009 03:00:22

Eso me pasa por escribir el código directamente en el foro, perdona.

Código Delphi [-]
function filtraNombre(base:string):string;
const permitidos = ['A'..'Z','a'..'z','0'..'9','_'];
const letras = ['A'..'Z','a'..'z'];

var i:integer;
begin
  result := EmptyStr;
    if base[1] in letras then
      for i:= 1 to length(base) do
        if base[i] in permitidos then
          result := result + base[i]
end;

Los rangos es con ".." en lugar de con guión.

Saludos

Luis_264 05-01-2009 05:29:55

ok graxx ia sirvioo =D :):):):eek:


La franja horaria es GMT +2. Ahora son las 16:45:45.

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