How to find the first occurrence of a pattern in a string from some starting position in Pascal

1 Answer

0 votes
program FindSubstring;

var
  str, pattern: string;
  foundPosition, startPosition: Integer;
begin
  str := 'abcdefgaaahijklaaaamnopqaaaaarst';
  pattern := 'aaa';
  startPosition := 11; // Starting position to search from

  // Find the first occurrence of the pattern starting from the given position
  foundPosition := Pos(pattern, Copy(str, startPosition + 1, Length(str) - startPosition));

  if foundPosition <> 0 then
    WriteLn('Pattern found at position: ', foundPosition + startPosition - 1)
  else
    WriteLn('Pattern not found!');
end.




(*
run:

Pattern found at position: 15

*)

 



answered Jun 10, 2025 by avibootz
...