Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];




Вниз

Поиск, подсчёт, вывод на экр переменных в перловском файле ($var) 


Yuraz   (2002-04-18 11:08) [0]

Сделал такой алгоритм, не проходит, может кто подскажет как реализовать?

procedure TForm1.SpeedButton3Click(Sender: TObject);
Const ValidSet = ["a".."z", "A".."Z","_","0".."9"];
Var S,s1, rez: String;
K, len, zn: Integer;
begin
S := Memo1.Text; // здесь искодный, загруженный перл скрипт
len := Length(S);
K := 1;
zn:=0;
While K <= len Do
Begin
s1:=copy(s,k,1); // копируем по символу
inc(k);
if s1="$" then //нашли переменную
begin
rez:=""; // сюда бы записать её название
while (K <= 10) And ((S1[K] In ValidSet)) Do
begin
rez:=rez+S1[K]; // записываем по символу
Memo3.Lines.Add(rez); // выводим весь список
inc(K);
zn:=zn+1; // а это подсчёт всего сколько переменных
end;
end;
End;
showmessage(inttostr(zn)); // напоследок сказать сколько же их встречается (в том числе повторяющихся)
end;



Yuraz   (2002-04-18 11:16) [1]

while (K <= 10) And ((S1[K] In ValidSet)) Do

10 это я взял просто перечислить 10 след. букв, по идее бы взять оставшиеся символы в файле, вдруг назв. перловской переменной больше 10 символов.



Перловка   (2002-04-18 19:40) [2]

Так перлом и воспользуйся, это сделать там гораздо проще.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.024 c
1-2546            anod                  2002-04-18 21:22  2002.05.02  
В чем ошибка?


1-2559            _igorok               2002-04-19 10:22  2002.05.02  
помогите !


4-2714            isaveliev             2002-02-27 13:16  2002.05.02  
Как отловить факт окончания печати документа


1-2547            Gayrus                2002-04-18 03:06  2002.05.02  
TreeView и Array


7-2697            Mr.Death              2001-11-22 08:31  2002.05.02  
Как из под Win получить данные из BIOS a?