Павел.DO
17.08.2013, 20:12
Вопрос первый:
Привожу цитату:
Для кого я статьи писал... [Ссылки могут видеть только зарегистрированные и активированные пользователи]
function Pars(s: string): string;
begin
result := Copy(s, Pos('"header_credits"', s) + 38,
Pos('"header_uri"', s) - Pos('"header_credits"', s) - 52);
end;
Я в дельфи недавно. Меня научили парсить другим способом:
private
{ Private declarations }
function Pars(T_, ForS, _T: string): string; //тут зажимаем Ctrl+Shift+C
public
Далее пишем:
function TForm1.Pars(T_, ForS, _T: string): string;
var
a, b: integer;
begin
Result := '';
if (T_ = '') or (ForS = '') or (_T = '') then
Exit;
a := Pos(T_, ForS);
if a = 0 then
Exit
else
a := a + Length(T_);
ForS := Copy(ForS, a, Length(ForS) - a + 1);
b := Pos(_T, ForS);
if b > 0 then
Result := Copy(ForS, 1, b - 1);
end;
Код нажатия на кнопку:
procedure TForm1.Button1Click(Sender: TObject);
var
Source, Source_forum:TstringList;
begin
memo1.Lines.Clear;
Source:=TStringList.Create;
Source.Text:=id[Ссылки могут видеть только зарегистрированные и активированные пользователи]('ссылка');
memo1.lines.add('Онлайн: (тут можно написать что угодно или же поставить '')'+Pars('HTML код до нужного текста',Source.Text,'HTML код после нужного текста'));
Мне казалось что приведенным мною кодом проще это делать (это моё мнение, могу ошибаться)..Что посоветуете? Есть ли какие-то преимущества или недостатки? И сразу вопрос, для тех кто использует второй (мой) способ: как спарсить например такой код:
<br>первое значение<br>
<br>второе значение<br>
<br>третье значение<br>
<br>четвертое значение<br>
у меня получает только первое (верхнее) значение.
Второй вопрос:
Подкиньте идейку, что написать. Знания не большие, но буду пытаться и стараться. А то вообще нету идей :) тапками не кидайте /nyan
Привожу цитату:
Для кого я статьи писал... [Ссылки могут видеть только зарегистрированные и активированные пользователи]
function Pars(s: string): string;
begin
result := Copy(s, Pos('"header_credits"', s) + 38,
Pos('"header_uri"', s) - Pos('"header_credits"', s) - 52);
end;
Я в дельфи недавно. Меня научили парсить другим способом:
private
{ Private declarations }
function Pars(T_, ForS, _T: string): string; //тут зажимаем Ctrl+Shift+C
public
Далее пишем:
function TForm1.Pars(T_, ForS, _T: string): string;
var
a, b: integer;
begin
Result := '';
if (T_ = '') or (ForS = '') or (_T = '') then
Exit;
a := Pos(T_, ForS);
if a = 0 then
Exit
else
a := a + Length(T_);
ForS := Copy(ForS, a, Length(ForS) - a + 1);
b := Pos(_T, ForS);
if b > 0 then
Result := Copy(ForS, 1, b - 1);
end;
Код нажатия на кнопку:
procedure TForm1.Button1Click(Sender: TObject);
var
Source, Source_forum:TstringList;
begin
memo1.Lines.Clear;
Source:=TStringList.Create;
Source.Text:=id[Ссылки могут видеть только зарегистрированные и активированные пользователи]('ссылка');
memo1.lines.add('Онлайн: (тут можно написать что угодно или же поставить '')'+Pars('HTML код до нужного текста',Source.Text,'HTML код после нужного текста'));
Мне казалось что приведенным мною кодом проще это делать (это моё мнение, могу ошибаться)..Что посоветуете? Есть ли какие-то преимущества или недостатки? И сразу вопрос, для тех кто использует второй (мой) способ: как спарсить например такой код:
<br>первое значение<br>
<br>второе значение<br>
<br>третье значение<br>
<br>четвертое значение<br>
у меня получает только первое (верхнее) значение.
Второй вопрос:
Подкиньте идейку, что написать. Знания не большие, но буду пытаться и стараться. А то вообще нету идей :) тапками не кидайте /nyan