Ver la Versión Completa : Problema con function Pos()
Anel Hernandez
12-11-2012, 18:44:24
Hola,
quisiera encontrar la posicion del primer caracter encontrado en una cadena. Yo necesito encontrar el ultimo caracter en una cadena con caracteres repetidos; el primero contando de derecha a izquierda.
Hay alguna forma sencilla de lograrlo que no sea, cortar cadenas y usar substrings, es decir, una sola function y ya?
gracias
roman
12-11-2012, 19:22:19
No sé si exista alguna función predefinida pero en todo caso es muy sencillo hacerse de una:
function LastPos(S: String; Ch: Char): Integer;
var
I: Integer;
begin
Result := 0;
if S = '' then
exit;
for I := Length(S) downto 0 do
if S[I] = Ch then
begin
Result := I;
break;
end;
end;
// Saludos
ecfisa
12-11-2012, 19:30:27
Hola,
quisiera encontrar la posicion del primer caracter encontrado en una cadena. Yo necesito encontrar el ultimo caracter en una cadena con caracteres repetidos; el primero contando de derecha a izquierda.
Hay alguna forma sencilla de lograrlo que no sea, cortar cadenas y usar substrings, es decir, una sola function y ya?
gracias
Hola.
No hay ninguna función predefinida que lo realice, pero podés implementar una:
uses StrUtils;
function RightPos(Buscado,Cadena: string): Integer;
begin
Result:= Pos(ReverseString(Buscado), ReverseString(Cadena));
if Result > 0 then
Result := Length(Cadena)-Result-Length(Buscado)+2
end;
Saludos.
Edito: Ups!, no ví el mensaje de roman, mientras escribía y hacía una o dos comprobaciones :o, pero veo que coincidimos en que hay que hacerce una función :)
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.