nPos Function in Pascal to Find the nth Position in a StringnPos Function in Pascal / Delphi which returns the nth position of character in a string, useful if you want the second or third occurrence.
Return the nth position of the search character within a string, a useful function for parsing out file paths or strings separated by constant delimiters.
Usage:
pascal
pos := nPos('/', 'c:/mypath/to/somefile/', 3);
pos = 13
function nPos(C: char; S: string; N: byte): byte;
var
I, P, K: Integer;
begin
Result := 0;
K := 0;
for I := 1 to N do
begin
P := Pos(C, S);
Inc(K, P);
if (I = N) and (P > 0) then
begin
Result := K;
Exit;
end;
if P > 0 then
Delete(S, 1, P)
else
Exit;
end;
end;