Pos, функция

Синтаксис


function Pos(counst SubStr,   Str:  string):  Integer;

Описание

Функция Pos возвращает индекс первого вхождения фрагмента SubStr в строке Str или ноль, если SubStr нигдев Str не встречается. Pos не является настоящей функцией.

Ошибки

Советы и приемы

  • Индексы символов в строке начинаются с 1.
  • Поиск выполняется с учетом регистра.
  • Pos не обрабатывает многобайтовые символы. Вместо Pos используйте AnsiPos из модуля SysUtils.

Пример


// В переменных окружения, например PATH, содержатся списки
// каталогов, разделенных точками с запятой. Функция SplitPath
// принимает такую строку в качестве аргумента и разделяет
// строку на отдельные имена файлов. Имена файлов записываются
// в аргумент FileList.
// Заметьте, что имена файлов могут содержать многобайтовые
// символы, поэтому SplitPath должна вызывать функцию AnsiPos
// вместо Pos. Тем не менее, она является примером использования
// обеях функций.
procedure SplitPath(const Path: string; FileList: TStrings);
var
  Semicolon: Integer;
  FileName: string;       // Первое имя файла в оставшейся части строки
  Remaining: string;     // Остаток строки после извлечения первого
                         // имени файла
begin
  Remaining  := Path;
  FileList.BeginUpdate;
  try
    FileList.Clear;
    while Remaining<>'' do
    begin
      Semicolon := Pos(';',  Remaining);
      if Semicolon = 0 then
        Semicolon  := MaxInt;
      FileName := Copy(Remaining,  1,  Semicolon-1);
      Delete(Remaining,  1, Semicolon);
      FileList.Add(FileName);
    end;
  finally
    FileList.EndUpdate;
  end;
end;

Смотрите также

Функция Copy, процедуры Delete, Insert.
    Учебник по языку Pascal          Лабораторные работы по программированию          Справочник




Нет комментариев.



Оставить комментарий:
Ваше Имя:
Email:
Антибот: *  
Ваш комментарий: