Форум: "Основная";
Поиск по всему сайту: 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.022 c
1-2534            PaRL                  2002-04-18 18:06  2002.05.02  
The Question. Simply Question.


7-2699            Gurban                2002-02-07 17:10  2002.05.02  
Как переименовать


1-2621            Surprising            2002-04-20 07:56  2002.05.02  
Excel


1-2528            Демон                 2002-04-21 14:36  2002.05.02  
Проблема с 6-ой ДЕЛФЁЙ


1-2627            Satirus               2002-04-19 17:14  2002.05.02  
Tree Walker: Create