Usted podría utilizar AnsiIndexText (const AnsiString AText, const gama de aValores de cuerda): número entero o MatchStr (const AText: string; aValores const: array de cadenas): Boolean;
Algo así como
Result := (AnsiIndexText('Hi',['Hello','Hi','Foo','Bar']) > -1);
o
Result := MatchStr('Hi', ['foo', 'Bar']);
AnsiIndexText devuelve el 0-offset índice de la primera cadena que encuentra en aValores que coincide AText mayúsculas y minúsculas. Si la cadena especificada por AText no tiene una coincidencia (que no distingue entre mayúsculas y minúsculas) en AValues, AnsiIndexText devuelve -1. Las comparaciones se basan en la configuración regional actual del sistema .
MatchStr determina si cualquiera de los cadenas en los aValores matriz coinciden con la cadena especificado por AText usando un caso comparación sensible. Devuelve verdadero si al menos una de las cadenas en la matriz coincide, o es falso si ninguna de las cadenas coincide.
Nota AnsiIndexText tiene mayúsculas y minúsculas y MatchStr entre mayúsculas y minúsculas, así que supongo que depende de su uso
EDIT: 03/09/2011: Acabo de encontrar esta respuesta y pensaba que iba a poner una nota que, en Delphi 2010 también hay una función MatchText
que es lo mismo que MatchStr
pero insensible.- Larry
En realidad, hay uno mejor, solo busqué un poco en StrUtils.pas y encontré el MatchStr que devuelve un booleano: Resultado: = MatchStr ('Hola' , ['foo', 'Bar']); Por favor, agréguela a su respuesta –
MatchStr y MatchText también están disponibles en Delphi 2007. –
cualquier equivalente para delphi 7? – CyprUS