Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-03-2008
dicatek dicatek is offline
Miembro
 
Registrado: jun 2006
Posts: 46
Poder: 0
dicatek Va por buen camino
Comparar una cadena String con un directorio

Hola comunidad! Estoy interesado en crear un pequeño sistema que me permita comparar una cadena string que introduzca el usuario con archivos que ubicaré en una pagina web:

(http://www.miweb.es/directorio/audi_a8_2.1.doc)
(http://www.miweb.es/directorio/audi_a6_2.1.doc)
(http://www.miweb.es/directorio/audi_a2_2.1.doc)
(http://www.miweb.es/directorio/jeep_ch_3.1.doc)
(...)

Mi idea es que cuando el usuario escoja la palabra audi, se permita la descarga de los documentos que contenga la palabra audi

Sé que la pregunta es muy sencilla por la complejidad del asunto, como por su madurez, pero visto que no tengo conocimiento alguno, me gustaria que alguien pudiera recomendarme algunos pasos previos antes de meterme en el asunto. ¿Que componentes se puede usar para este proposito? ¿es muy dificil de hacer (no soy programador)

Muchas gracias de antemano!
Responder Con Cita
  #2  
Antiguo 22-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 18
MaMu Va por buen camino
Esta función permite realizar dichas comparaciones entre 2 cadenas.
Utiliza dos parámetros: el primero la cadena en donde buscar y el segundo lo que estamos buscando, incluyendo posibles comodines. ("*" o "?")

Devolverá True o False dependiendo del resultado de la busqueda.
NOTA: La cadena en donde buscar no debe contener comodines.


Probá con esto:

Código Delphi [-]
function MatchStrings(source, pattern: String): Boolean;
      var
        pSource: Array [0..255] of Char;
        pPattern: Array [0..255] of Char;

        function MatchPattern(element, pattern: PChar): Boolean;

          function IsPatternWild(pattern: PChar): Boolean;
          var
            t: Integer;
          begin
            Result := StrScan(pattern,'*') <> nil;
            if not Result then Result := StrScan(pattern,'?') <> nil;
          end;

        begin
          if 0 = StrComp(pattern,'*') then
            Result := True
          else if (element^ = Chr(0)) and (pattern^ <> Chr(0)) then
            Result := False
          else if element^ = Chr(0) then
            Result := True
          else begin
            case pattern^ of
            '*': if MatchPattern(element,@pattern[1]) then
                   Result := True
                 else
                   Result := MatchPattern(@element[1],pattern);
            '?': Result := MatchPattern(@element[1],@pattern[1]);
            else
              if element^ = pattern^ then
                Result := MatchPattern(@element[1],@pattern[1])
              else
                Result := False;
            end;
          end;
        end;

      begin
        StrPCopy(pSource,source);
        StrPCopy(pPattern,pattern);
        Result := MatchPattern(pSource,pPattern);
      end;

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #3  
Antiguo 22-03-2008
dicatek dicatek is offline
Miembro
 
Registrado: jun 2006
Posts: 46
Poder: 0
dicatek Va por buen camino
Hola mamu!

Gracias por la función que me has mandado. La he estado estudiando y aunque no acabo de entender todo el codigo creo que es un buen sistema. A mi entender este codigo es el motor basico para realizar las busquedas, la variable psource es lo que buscamos y la ppattern es el resultado. Me falla una cosa, quizás la más importante de todas y es que no sé como se puede implementar esta función en un programa sencillito que pueda realizar una busqueda en un directorio web.

Saludos!
Responder Con Cita
Respuesta


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
comparar una cadena y consultar UREÑA Conexión con bases de datos 1 19-06-2007 19:46:56
Comparar String con Constante brandolin Varios 1 08-06-2007 06:46:05
comparar cadena de dos textos coyule Varios 10 31-05-2007 19:32:37
Comparar caracteres tecleados con los de una cadena Calculador Varios 1 16-01-2005 19:36:35
Comparar String davidgaldo Varios 1 30-04-2004 11:29:53


La franja horaria es GMT +2. Ahora son las 14:37:00.


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