Entwickler-Ecke

Internet / Netzwerk - Bestimmten Link aus Memo raus suchen


RuSsAk - Do 19.11.09 12:53
Titel: Bestimmten Link aus Memo raus suchen
hi leute
ich stecke mal wieder fest :(

ich lade mir die Links einer seite in ein memo1:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  for i := 0 to Webbrowser1.OleObject.Document.links.Length - 1 do
    memo1.Lines.Add(Webbrowser1.OleObject.Document.Links.Item(i));
end;


so das funktioniert ja alles gut aber jetzt zu meiner frage
wie kann ich ein ein link suchen der zb das "wort" blubb drinne hat?

also zb so:
http://www.site.de/afghtr.php
http://www.site.de/ordner/dgs/haha.php
http://www.site.de/index.html
http://www.site.de/blubb/25657
http://www.site.de/agfg/sgfrga/564/

und nur diesen link will ich haben "http://www.site.de/blubb/25657" und die restlichen sollen gelöscht werden kann mir da jemand helfen?

ps. im memo sind eigl. nich so wenig links das sind so immer ca. 50-100

wäre für eure hilfe sehr dankbar :)

mfg,


JoelH - Do 19.11.09 13:22


Delphi-Quelltext
1:
2:
3:
4:
5:
  for i := 0 to memo1.lines.Count - 1 do
  begin
    if pos('blubb',memo1.lines.Strings[i]) > 0  then
      showmessage('blubb gefunden in Zeile '+InttoStr(i));
  end;


RuSsAk - Do 19.11.09 13:43

Moderiert von user profile iconNarses: Komplett-Zitat des letzten Beitrags entfernt.

hi JoelH Danke für deine antwort :)

dieser code findet zwar "blubb" aber die restlichen zeilen werden garnicht gelöscht :(


Nersgatt - Do 19.11.09 14:05

Warum lädst Du denn erst Zeilen ins Memo, die Du dann wieder löschen willst? Frage doch schon beim Laden ab, ob die Zeile 'blubb' enthält und falls nicht, füge die Zeile gar nicht erst ein.

Gruß,
Jens


RuSsAk - Do 19.11.09 14:10

Moderiert von user profile iconNarses: Komplett-Zitat des letzten Beitrags entfernt.

weil das die einzigste möglichkeit ist die ich durch googeln gefunden habe die den link "unverändert" lässt ;)....der ändert sich nähmlich bei jeden "Reload" und damit bleibt dieser so wie ich ihn brauche

mfg,


Nersgatt - Do 19.11.09 14:18

Versteh ich nicht. Beschreib mal genauer, was Du überhaupt vor hast.


RuSsAk - Do 19.11.09 14:26

user profile iconNersgatt hat folgendes geschrieben Zum zitierten Posting springen:
Versteh ich nicht. Beschreib mal genauer, was Du überhaupt vor hast.


also ich will ein link der sich immer verändert von einer hp in ein memo kopieren und wenn ich diesen nur ausm quellcode parse zb. so


Delphi-Quelltext
1:
2:
s := WebBrowser1.OleObject.Document.Body.InnerHtml;
    Memo2.lines.add(s);


wird dieser verändert und wird unbrauchbar für mich und deswegen mache ich das so


Delphi-Quelltext
1:
2:
  for i := 0 to Webbrowser1.OleObject.Document.links.Length - 1 do
    memo1.Lines.Add(Webbrowser1.OleObject.Document.Links.Item(i));


also ich hole mir alle links in ein memo und den richtigen will ich da rausholn weil mit den anderen kann ich nichts anfangen und dabei brauch ich hilfe


Nersgatt - Do 19.11.09 14:28

Und warum nicht so:


Delphi-Quelltext
1:
2:
3:
4:
5:
for i := 0 to Webbrowser1.OleObject.Document.links.Length - 1 do
begin
  if pos('blubb',Webbrowser1.OleObject.Document.Links.Item(i)) > 0 then
    memo1.Lines.Add(Webbrowser1.OleObject.Document.Links.Item(i));
end;


RuSsAk - Do 19.11.09 14:35

Moderiert von user profile iconNarses: Komplett-Zitat des letzten Beitrags entfernt.

oh geil es funktioniert :o

vielen vielen dank :) 8)

:dance:


JoelH - Do 19.11.09 17:18

user profile iconRuSsAk hat folgendes geschrieben Zum zitierten Posting springen:
dieser code findet zwar "blubb" aber die restlichen zeilen werden garnicht gelöscht :(


Irgendwas musst du ja auch noch selbst machen müssen, ansonsten hättest du auch gleich nach dem gesamten Quellcode fragen können, dann wäre aber gar kein Lerneffekt da, das wäre doch langweilig ;)