Olá Rogerio
segue o seu exemplo usandoo uma function que retorna True se o caracter 
informado for especial

quanquer duvida entre em contato 

obs. nao deu tempo para testar.

Procedure TForm1.Button1Click(Sender: TObject);
var 
  i: Integer;
begin
  for i:=1 to Length(Edit1.Text) do
   begin
    if IsCharEspec( Copy(Edit1.Text, i, 1 )) then
      begin
        ShowMessage('É Um Caracter Especial !');
      end;
   end;
end;

function IsCharEspec( Str: String):Boolean;
Var
  aChar:PChar;
Const
  CharEspc: set of Char = [#0..#255] - ['a'..'z','A'..'Z','1'..'9','0'];
begin
  aChar := pChar( Str );
  Result := False;
  if ((aChar^ in CharEspc)) then
     Result := True;
end;


T+

Sandro Garcia
  ----- Original Message ----- 
  From: Rogério 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Thursday, August 25, 2005 1:43 PM
  Subject: [delphi-br] ACHAR CARACTER ESPECIAL em uma STRING


  Preciso montar uma Function que diz se, em uma string, existe um caracter
  especial (@, !, #, $ Etc...)
  Baseado em um evento que desenolví através do Método KeyPress do Form,
  Fiz a seguinte Verificação só que, através de um Botão:

  Procedure TForm1.Button1Click(Sender: TObject);
  var wKey : Char   ;    i    : Integer      ;
  begin
     for i:=1 to Length(Edit1.Text) do
     begin
        wKey := Char( Pchar ( Copy(Edit1.Text, i, 1 )));
        if (wKey in ['!'..'/']) or (wKey in [':'..'@']) or  (wKey in
  ['['..'_']) or (wKey in ['{'..'~']) then
        begin
          ShowMessage('É Um Caracter Especial !');
        end;
     end;
  end;

  Acontece que não funciona, pelo visto o problema está nos tipos de variáveis
  (Char X PcharX String)
  Alguém teria alguma dica para que funcione este algorítimo ??
  [ ]'s




        
        
              
  _______________________________________________________ 
  Yahoo! Acesso Grátis - Internet rápida e grátis. 
  Instale o discador agora! http://br.acesso.yahoo.com/ 


  -- 
  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

  Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

  Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]



        Yahoo! Grupos, um serviço oferecido por: 
          


------------------------------------------------------------------------------
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/
      
    b.. Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]
      
    c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço 
do Yahoo!. 



[As partes desta mensagem que não continham texto foram removidas]



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a