function AnsiReverseString( const AText: AnsiString ): AnsiString;
Esta función devuelve la cadena AText con los caracteres invertidos (de derecha a izquierda). Por ejemplo:
AnsiReverseString( 'Al revés' ) devuelve:
séver lA
AnsiReverseString( 'INVIRTIENDO UNA CADENA DE TEXTO' ) devuelve:
OTXET ED ANEDAC ANU ODNEITRIVNI
function AnsiRightStr( const AText: AnsiString; const ACount: Integer ): AnsiString;
Esta función devuelve la parte derecha de la cadena AText según el número de caracteres que le indiquemos en ACount. Por ejemplo:
AnsiRightStr( 'PROGRAMANDO CON DELPHI', 6 ) devuelve DELPHI
AnsiRightStr( 'PROGRAMANDO CON DELPHI', 11 ) devuelve CON DELPHI
AnsiRightStr( 'PROGRAMANDO CON DELPHI', 18 ) devuelve RAMANDO CON DELPHI
function AnsiStartsStr( const ASubText, AText: string ): Boolean;
Devuelve True si la cadena ASubText está al comienzo de la cadena AText (distingue mayúsculas y minúsculas). Veamos como funciona:
AnsiStartsStr( 'C:\', 'C:\Mis documentos\' ) devuelve True
AnsiStartsStr( 'c:\', 'C:\Mis documentos\' ) devuelve False
function AnsiStartsText( const ASubText, AText: string ): Boolean;
Esta función es igual a AnsiStartsStr salvo que no distingue mayúsculas de minúsculas. En el caso anterior:
AnsiStartsText( 'C:\', 'C:\Mis documentos\' ) devuelve True
AnsiStartsText( 'c:\', 'C:\Mis documentos\' ) devuelve True
function AnsiUpperCase( const S: string ): string;
Devuelve la cadena S convertida toda en mayúsculas. Veamos un par de ejemplos:
AnsiUpperCase( 'Programando con Delphi' ) devuelve:
PROGRAMANDO CON DELPHI
AnsiUpperCase( 'manipulando cada carácter de la cadena' ) devuelve:
MANIPULANDO CADA CARÁCTER DE LA CADENA
procedure AppendStr( var Dest: string; const S: string ); deprecated;
Este procedimiento esta obsoleto. Añade a la cadena Dest el contenido dela cadena S. Utilizar en su lugar el operador + o la función Contat.
function CompareStr( const S1, S2: string ): Integer;
Compara las cadenas de texto S1 y S2 y devuelve cero si son iguales. Si son distintas devuelve un número positivo o negativo según la diferencia de caracteres. La operación de diferencia de caracteres se realiza a nivel de cada carácter utilizando su valor equivalente en ASCII. Por ejemplo:
CompareStr( 'HOLA', 'HOLA' ) devuelve 0
CompareStr( 'HOLA', 'HOLa' ) devuelve -32
CompareStr( 'HOLa', 'HOLA' ) devuelve 32
CompareStr( 'HOLA', 'HOYA' ) devuelve -13
Esta función esta obsoleta. Se recomienda utilizar AnsiCompareStr en su lugar.
function CompareText( const S1, S2: string ): Integer;
Similar a la función CompareStr pero sin tener en cuenta mayúsculas y minúsculas. Según el ejemplo anterior:
CompareText( 'HOLA', 'HOLA' ) devuelve 0
CompareText( 'HOLA', 'HOLa' ) devuelve 0
CompareText( 'HOLa', 'HOLA' ) devuelve 0
CompareText( 'HOLA', 'HOYA' ) devuelve -13
Esta función esta obsoleta. Se recomienda utilizar AnsiCompareText en su lugar.
function Concat( s1 [, s2,..., sn]: string ): string;
Esta función devuelve concatenadas un número indeterminado de cadenas de texto que le pasemos como parámetro, aunque se recomienda utilizar el operador + en su lugar. Veamos un ejemplo:
Concat( '12', '34', '56', '78' ) devuelve 12345678
Concat( 'COMO', ' ESTÁN', ' USTEDES' ) devuelve COMO ESTÁN USTEDES
function Copy( S; Index, Count: Integer ): string;
function Copy( S; Index, Count: Integer ): array;
Ambas funciones devuelven una subcadena de la cadena S en la posición Index (el primer elemento es 1) y con una longitud de Count. Por ejemplo:
Copy( '123456', 1, 3 ) devuelve 123
Copy( '123456', 4, 2 ) devuelve 45
Copy( 'CAPTURANDO UNA PALABRA', 16, 7 ) devuelve PALABRA
También puede utilizarse para copiar elementos entre arrays de cualquier tipo. Por ejemplo vamos a crear un array de enteros y vamos a copiar una parte del mismo a otro:
var Origen, Destino: array of Integer;
i: Integer;
begin
SetLength( Origen, 6 );
Origen[0] := 10;
Origen[1] := 20;
Origen[2] := 30;
Origen[3] := 40;
Origen[4] := 50;
Origen[5] := 60;
Destino := Copy( Origen, 2, 4 );
for i := 0 to Length( Destino ) - 1 do
Memo.Lines.Add( Format( 'Destino[%d]=%d', [i,Destino[i]] ) );
end;
El resultado lo hemos volcado a pantalla dentro de un campo Memo mostrando lo siguiente:
Destino[0]=30
Destino[1]=40
Destino[2]=50
Destino[3]=60
En el próximo artículo seguiremos con más funciones.
Pruebas realizadas en Delphi 7.
No hay comentarios:
Publicar un comentario