Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 02-12-2010
McK McK is offline
Miembro
NULL
 
Registrado: oct 2010
Posts: 33
Poder: 0
McK Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola McK.

Estoy de acuerdo con Neftali, se necesitan dos ciclos.

Pero mas eficiente que usar dos for es:

Código Delphi [-]

function ExtractNum(Sub, Str: string): TStrings;
var
i, p: Integer;
begin
Result:= TStringList.Create;
p:= 1;
while p <> 0 do
begin
p:= Pos(Sub, Str);
if p > 0 then
begin
Inc(p, Length(Sub));
i:= 1;
while Str[p + i] in ['0'..'9'] do Inc(i);
Result.Add(Copy(Str, p, i));
Inc(p, i);
Str:= Copy(Str, p, MaxInt);
end;
end;
end;


Ejemplo de llamada:

Código Delphi [-]

procedure TForm1.Button1Click(Sender: TObject);
const
Cadena = 'HGL44DHS274HGL23JHGL41234HGL412YGHGL555XADSF1AHG12HGL999';
begin
Memo1.Lines:= ExtractNum('HGL', Cadena);
end;


Saludos.
No me está funcionando tu código amigo. Siempre me detecta el primer substring por lo que se queda en un bucle infinito..
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
sacar numeros al azar edlm Varios 20 31-05-2012 21:50:40
Odenar Cadenas con letras y números Kandorf OOP 3 20-05-2010 01:51:55
Case pero con cadenas en vez de con caracteres noob Varios 9 21-01-2009 18:56:07
Comparar cadenas y sacar su semejanza en % CamiloVI Varios 5 15-05-2008 08:27:30
Sacar los números del 1 al 9 con dos digitos David OOP 4 06-03-2008 23:08:09


La franja horaria es GMT +2. Ahora son las 23:19:20.


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
Copyright 1996-2007 Club Delphi