![]() |
Nach enthaltenem Text in einer HTML-Datei suchen
Liste der Anhänge anzeigen (Anzahl: 1)
Jo.
Ihr kennt ja alle die Suchoption im Windows. Da hat mann zwei möglichkeiten nach einer Datei zu suchen. Mann kan direkt nach dem Dateinamen suchen oder nach einem bestimmten Text in einer Datei. Ich programmier gerade ein Tool das sowas können soll. Das mit dem Dateinamen suchen hab ich schon hinbekommen, aber das zweite noch nicht. Das Programm soll bestimmte wörter in der HTML-Datei suchen und wenn er sie gefunden hat soll er sie in einer ListBox anzeigen. In meinem Fall alle Wörter die mit cd_ und ld_ anfangen. Ich hab noch Bild im Anhang damit alle wissen was ich meine. Ich will nach "Enthaltener Text" suchen, wie im Bild. Hat jemand ne Idee, oder schon ein fertigen Code dafür? Wäre sehr dankbar. |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
naja das ist doch eigentlich ganz leicht.
als erstes musst du alle html-dateien in einem verzeichnis bzw. eventuell incl. unterverzeichnisse auflisten. danach öffnest du eine datei nach der anderen und suchst in der datei nach dem gewünschten text. fang doch einfach mal damit an und sag, wo du nicht mehr weiterkommst. dann schmeisst du hier ein bisschen code rein und wir alle werden dir helfen ;-) |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
Danke für die schnelle Antwort!
Soweit hab ich das programmiert das ich die Dateien einzeln öffnen und durchsuch kann. Ich will aber das das Tool mir die Strings sofort anzeigt wenn ich auf ein Button "Verzeichnis durchsuchen" klicke, weil das ein paar hudert HTML-Datein sind. Die alle einzeln zu öffnen wäre mühsam. Das geht doch bestimmt irgendwie. |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
poste mal plz ein bisschen code, dann kann ich dir besser helfen...
naja das machst du doch in ner for schleife die alle öffen, ich würde alle dateien in ne stringlist laden und dann folgendes machen
Delphi-Quellcode:
var htmldateien: tstringlist;
htmldateien := tstringlist.create; //hier mit htmldateien.add('datei.html')... alle hinzufügen for i:=0 to htmldateien.count-1 do begin //1.datei öffnen //2.nach string suchen //3.in ausgabe speichern end; |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
OK.
Hier ist der Code der fürs suchen verantworltlich ist wenn die HTML-Datei geöffnet ist.
Delphi-Quellcode:
procedure TForm1.Panel2Click(Sender: TObject);
var i,p: integer; s: string; begin for i := 0 to RichEdit1.Lines.Count - 1 do begin if Pos('cd_', RichEdit1.Lines.Strings[i]) + Pos('ld_', RichEdit1.Lines.Strings[i]) > 0 then begin s :=''; {Die aktuelle Zeile wird nach der Zeichenfolge "cd_" und "ld_" durchsucht und bei Erfolg ab der gefundenen Position ausgelesen, bis ein Leerzeichen auftritt...} for p := Pos('cd_', RichEdit1.Lines.Strings[i]) + Pos('ld_', RichEdit1.Lines.Strings[i]) to Length(RichEdit1.Lines.Strings[i]) do if RichEdit1.Lines.Strings[i][p] <> ' ' then s := s + RichEdit1.Lines.Strings[i][p] else break; {Falls das gefundene Attribut nicht mit einem Leerzeichen abschließt, werden hier noch anhängende Textzeichen entfernt...} while Pos(s[Length(s)], '..;!")]}''>') > 0 do Delete(s, Length(s), 1); ListBox1.Items.Add(s); end; end; // Die Zahl der gefundenen Attribute in Label1 anzeigen... if ListBox1.Items.Count > 0 then label1.Caption := IntToStr(ListBox1.Items.Count) +' Attribut(e) gefunden.' else label1.Caption := 'Kein(e) Attribut(e) gefunden.'; Label1.Show; Panel2.Hide; end; |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
hat wirklich keiner einen Vorschlag? :?:
|
Re: Nach enthaltenem Text in einer HTML-Datei suchen
Beschreib doch erstmal, was genau passiert.
Gibts ne Fehlermeldung, wenn ja, was steht drin, oder passiert gar nix. Ein paar Infos brauchen wir schon ;-) |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
Hi sniffy,
lade den Inhalt einer HTML-Datei in ein Memo. Dann kannst du mit
Delphi-Quellcode:
automatisch das gesamte Memo durchsuchen.
Pos('cd_', Memo1.Text)
Beispiel:
Delphi-Quellcode:
Wichtig: Die Funktion ist nicht geschwindigkeitsoptimiert. Das andauernde Erstellen und Freigeben des Memos kostet Zeit und Speicher. Du solltest alles vereinen, d.h. Memo erstellen, Datei laden, durchsuchen, Memo löschen (MeinMemo.Lines.Clear), Datei laden, ..., Memo freigeben.
function DurchsucheHTMLDatei(DateiName: String): Boolean;
var MeinMemo: TMemo; begin MeinMemo := TMemo.Create(nil); try MeinMemo.Lines.LoadFromFile(DateiName); Result := (Pos('cd_', MeinMemo.Text) + Pos('ld_', MeinMemo.Text)) > 0; finally MeinMemo.Free; end; end; Greetz alcaeus |
Re: Nach enthaltenem Text in einer HTML-Datei suchen
Liste der Anhänge anzeigen (Anzahl: 1)
@alcaeus
Danke für deine Mühe, aber ich will die HTML-Datei(en) nicht in ein Memo oder RichEdit oder irgendwo öffnen. @All Ich glaub ihr wisst immer noch nicht was ich meine. Ich hab jetzt das Tool was ich gerad am programmieren bin hochgeladen. Bitte klickt auf den Button "Info", da steht ausführlich erklärt was ich genau meine. Ist als RAR-Datei gepackt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz