Fórum pesquisa sem acento #297274

27/09/2005

0

boa tarde
Tem com fazer uma pesquisa que possa identifica se o nome tem acento ou não por exemplo
seu eu digito na edit o nome joao me de com resultado
joao
joão
josé joão ou
josé joao
todos os joao com acento ou sem acento

uso banco de dados acess e componetes adoquery.

agradeço desda já pela ajuda de vc


Matrix0101

Matrix0101

Responder

Posts

27/09/2005

Bertocco

// use essa função

function RemoveAcento(Str:String): String;
Const
ComAcento = ´àâêôûãõáéíóúçüÀÂÊÔÛÃÕÁÉÍÓÚÇÜ´;
SemAcento = ´aaeouaoaeioucuAAEOUAOAEIOUCU´;
Var
x : Integer;
Begin
For x := 1 to Length(Str) do
if Pos(Str[x],ComAcento)<>0 Then
Str[x] := SemAcento[Pos(Str[x],ComAcento)];
Result := Str;
end;

Como usar
edit1.Text:=RemoveAcento(edit.Text);

Boa Sorte


Responder

Gostei + 0

27/09/2005

Matrix0101

descupe a minha falta de conhecimento mais essa função faria uma pesquisa no banco de dados mesmo que estejá gravado o nome com acento ou sem acento.


Responder

Gostei + 0

27/09/2005

Bertocco

Sim, usando até mesmo o dbedit1,
Exemlo

query.ParambyName.(´NOME´).Astring:=RemoveAcento(dbedit1.Text);


Responder

Gostei + 0

27/09/2005

Mkoch

Eu utiliso o Firebird 1.5, e criei uma UDF para remover os acentos no momento da pesquisa dentro do SQL que é o que você deve querer. Infelizmente não sei se isso é possível no access.


Responder

Gostei + 0

27/09/2005

Geomicro

amigo estou tendo usa esse comando que vc me deu no adoquery e não consigo

Sim, usando até mesmo o dbedit1,
Exemlo

query.ParambyName.(´NOME´).Astring:=RemoveAcento(dbedit1.Text);

teria oura forma so para fazer o teste


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar