Почему не работает функция Pos?

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Почему не работает функция Pos?

Сообщение Alek_Aaz » 13.05.2023 15:50:35

Странно, но не работает функция pos()
Выдает 0 и все тут!!! Че за фигня?
Код: Выделить всё
Const
  DirName:string='c:\test\1\1\1';

var
  Form1: TForm1;

implementation

{$R *.lfm}

function DirToFileName (Dir:string):string;
Var  S:string;
     t:integer;
Begin
   S:=Dir;
   t:=Pos(S,'\');
While Pos(S,DirSepar)>0 do  S[Pos(S,DirSepar)]:='-';
result:=s+'.dof';
end;
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
  //
  Memo1.Lines.Add(DirName);
  Memo1.Lines.Add(DirToFileName(DirName));
end;
Alek_Aaz
новенький
 
Сообщения: 39
Зарегистрирован: 26.11.2007 04:13:06

Re: Почему не работает функция Pos?

Сообщение xchgeaxeax » 13.05.2023 21:28:54

Наоборот надо задавать
Код: Выделить всё
Pos('Что ищем', 'Где ищем')
xchgeaxeax
новенький
 
Сообщения: 90
Зарегистрирован: 11.05.2023 03:51:40

Re: Почему не работает функция Pos?

Сообщение Alex2013 » 14.05.2023 12:17:14

xchgeaxeax писал(а):Наоборот надо задавать
Код: Выделить всё
Pos('Что ищем', 'Где ищем')

Еще есть PosEx ( 'Что ищем', 'Где ищем',С_какой_позиции_ищем )
PosEx(What, X : String[; Start : Integer]) : Integer
Поиск строки в строке
Функция PosEx ищет строку What в строке X начиная с символа с номером Start (нумерация начинается с 1). Если строка найдена, то функция возвращает позицию, иначе возвращает 0.
Alex2013
долгожитель
 
Сообщения: 2948
Зарегистрирован: 03.04.2013 11:59:44


Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11

Рейтинг@Mail.ru