PDA

Ver la Versión Completa : quitar numeros en un string


davidgaldo
23-09-2004, 16:53:13
Hola a todos, tengo un string que contiene una palabra y a continuación un nº de muchas cifras, por ejemplo: delphi 03051651650
como puedo quitar los números para quedarme sólo con la palabra??

roman
23-09-2004, 17:00:33
El texto antes del número ¿tiene una longitud fija? De ser así basta que uses la función Copy para extraer esa cantidad de caracteres. En caso contrario se me ocurre que puedes primero invertir la cadena con ReverseString de manera que queda una cadena con números por delante. Con esto usas el procedimiento Val que te dirá a partir de qué caracter ya no es número. Teniendo esto borras los caracteres de la cadena invertida que correspondan a número y finalmente inviertes nuevamente la cadena para regresar al orden original.

// Saludos

vic_ia
23-09-2004, 18:17:18
hola...

seria algo mas o menos asi :
function SoloPalabra(Texto : String) : String;
var
palabra : String;
i, k : integer;
begin
k := Length(Texto);
for i := 1 to k do
if Texto[i] in ['0','1',....,'9'] {aqui pones todos los digitos...}
then Break
else palabra := palabra + Texto[i] ;
Result := palabra;
end;
espero te oriente... saludos.....

quetzal
24-09-2004, 00:10:56
o mejor dicho

function SoloPalabra(Texto : String) : String;
var
palabra : String;
i, k : integer;
begin
k := Length(Texto);
for i := 1 to k do
if Texto[i] in ['0'..'9']
then Break
else palabra := palabra + Texto[i] ;
Result := palabra;
end;