Array
(
)

Utilizando o Operador IN

Andrew
   - 07 jan 2006

pessoal, sei que posso utilizar o operador IN dessa forma:

#Código



procedure TForm1.Letras(Letra : char);
var
Alfabeto : set of ´A´..´Z´;

begin
Alfabeto := [´A´..´Z´];

if Letra In Alfabeto then

ShowMessage(Letra + ´ é uma letra do Alfabeto!´)

else

ShowMessage(Letra + ´ Não é uma letra do alfabeto´);

end;



Tudo bem aqui, agora, gostaria de saber se posso usar esse operador para trabalhar com Strings, tipo:

#Código

var
Nomes: Array[1..5] of String;
begin
Nomes[1] := ´João´;
Nomes[2] := ´Jones´;
Nomes[3] := ´Jonas´;
Nomes[4] := ´Tereza´;
Nomes[5] := ´Natália´;


depois fazer uma checagem mais ou menos dessa forma.

#Código

if Texto in Nomes then


Qualquer ajuda será bem vinda.


Orpolonio
   - 09 jan 2006

Veja o POS


Massuda
   - 09 jan 2006

O in só trabalha com conjuntos (set).

Você pode, por exemplo, usar um loop para fazer uma busca linear no array ou usar um TStringList para armazenar as strings e usar o método TStringList.IndexOf para fazer a busca.