Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Borrar caracteres de una cadena (https://www.clubdelphi.com/foros/showthread.php?t=15622)

jymy788 29-10-2004 10:49:05

Borrar caracteres de una cadena
 
Buenas a todo el foro.

Puede parecer una tontería, y seguro que lo es, pero a mi me tiene frito. A ver, tengo una cadena, de una longitud, y esa cadena se construye con una función. Siempre termina con los caracteres , '

y yo lo que necesito es borrar esa última coma (,) y volver a escribir la (')

ej.- cadena := 'select aaa, bbb, ccc, ';

y la que quiero obtener después de borrar es la siguiente

cadenafin := 'select aaa, bbb, ccc';

me podéis echar un cable? He probado con StrLCopy pero no le puedo pasar string, tiene que ser char y no quería que fuera así.

Gracias a todos de antemano

jymy788 29-10-2004 11:51:31

Olvidarlo, estoy medio tonto, vamos, que si aprendiera a escribir igual no me pasaban estas cosas, jejeje

Con MiCadenaFinal:=Copy(MiCadenaInicial, 2,3);

está arreglado. :o

Lepe 29-10-2004 12:36:11

Por lo que intuyo, usas un bucle para añadir la coma al final, la idea es realizar ese bucle una vez menos de las que necesites.

ejemplo :
Código Delphi [-]
campos[0] := 'uno';
campos[1] := 'dos';
campos[2] := 'tres';
campos[3] := 'cuatro';

for i:=0 to High(campos)-1 do
  StrSELECT := strSELECT + campos[i]+', '; // te queda ' uno, dos, tres, '

strSELECT :=   StrSELECT := strSELECT + campos[HIGH(CAMPOS)];
// te queda ' uno, dos, tres, cuatro'

Si campos tiene 1 solo string; el bucle for no se ejecuta, y el select te queda bien. (sin la coma al final)

Si no usas un Bucle, porque usas DelimiterChar de un Tstringlist, en lugar de copiarlo todo, simplemente puedes borrar el ultimo caracter:
Código Delphi [-]
   delete (strSELECT, length(STRSELECT)-1, 1);

Espero te sirva en un futuro.
Saludos


La franja horaria es GMT +2. Ahora son las 12:06:58.

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