![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Коллеги, или я от жизни отстал (4 года в ASP) или что-то не так:
Строковая функция Delete отказывается работать в Rave 2009. Вроде в uses - StrUtils прописал, но на Код:
tmp:=Delete('skjdnvfskjvcnskdjfks',2,3);Спасибо! |
|
#2
|
||||
|
||||
|
Все верно. Дело в том, что параметром данной функции является строковая переменная. Поэтому правильно было бы
Код:
Var S:string; begin S:='skjdnvfskjvcnskdjfks'; tmp:=Delete(S,2,3); end; |
|
#3
|
|||
|
|||
|
Реально так и есть:
Код:
procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
var
Doc: Variant;
txt, tmp: string;
x: integer;
begin
Doc:= WebBrowser1.Document;
txt:=doc.documentElement.innerHTML;
tmp:=txt;
x:=0;
while Pos('href=', tmp)>0 do
begin
tmp:=Delete(tmp,2,3);
richedit1.Lines.Add(tmp);
end;
end;![]() |
|
#4
|
|||
|
|||
|
Тут ничего не нужно добавить?
Код:
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, XMLBrokr, ComCtrls, HTTPApp, HTTPProd, CompProd, PagItems, MidProd, OleCtrls, SHDocVw, IWVCLBaseControl, IWBaseControl, IWBaseHTMLControl, IWControl, IWCompObject, ActiveX, IWCompActiveX, Grids, ValEdit, StrUtils, DBTables, Buttons; |
|
#5
|
||||
|
||||
|
А ничего, что это процедура, а не функция?
|
|
#6
|
||||
|
||||
|
Цитата:
PHP код:
|
|
#7
|
||||
|
||||
|
И не будет работать, ибо:
Этой процедуре уже больше 10 лет, она еще из паскаля приблудилась. И синтаксис ее использования тоже не менялся столько-же. Первым параметром этой процедурки является переменная строкового типа, а не всякие там новомодные варианты. И потому переменная, что результат сия процедурка вернет в нее же. Последний раз редактировалось Страдалецъ, 22.09.2010 в 19:58. |