Seite 3 von 3

Re: HTML Dateien durchsuchen mit PB

Verfasst: 22.11.2014 10:47
von Micha122
RegularExpression ist in der PB-Hilfe wirklich ganz gut dokumentiert, lediglich die Auflistung der möglichen Suchmuster finde ich nicht. :oops:

In der PB-Hilfe zu "RegularExpression" steht folgendes:
Um eine komplette Liste der unterstützten Suchmuster (englisch "pattern") und Argumente zu erhalten, besuchen Sie bitte die PCRE Seite: http://www.pcre.org/pcre.txt
Wo in diesem recht großen Textfile finde ich die Liste der unterstützten Suchmuster?

Gruß

Verfasst: 22.11.2014 12:18
von CodeCommander
~ DELETE ~

Re: HTML Dateien durchsuchen mit PB

Verfasst: 22.11.2014 13:23
von Micha122
@CodeCommander:
Danke, ich hab da irgendwie verkrampft nach einer Liste gesucht (Tunnelblick).
Das ganze ist zwar wirklich "harter Stoff", birgt aber viel Potenzial. :allright:
Es lässt sich eben nicht alles in 5 Minuten lernen. :D

Gruß

Re: HTML Dateien durchsuchen mit PB

Verfasst: 22.11.2014 16:39
von RehW
Hier ein Link zu einem Tutorial, wo ich finde das es gut beschrieben ist.

Re: HTML Dateien durchsuchen mit PB

Verfasst: 22.11.2014 16:58
von Micha122
RehW hat geschrieben:Hier ein Link zu einem Tutorial, wo ich finde das es gut beschrieben ist.
Ist wirklich gut beschrieben. :allright:

Nachtrag: Das Beispiel "Extraktion von eMail-Adressen" ist sehr gut. Mit den String-Funktionen von PB wäre das nicht so einfach zu realisieren gewesen.


Ich habe zwischenzeitlich auch eine sehr gute Einführung in RegEx gefunden, die sich auf den von PB verwendeten Dialekt PCRE bezieht.
http://www.regenechsen.de/phpwcms/index.php?regex_allg

Nach ein wenig lesen, finde ich RegEx überhaupt nicht mehr so schwierig. :D

Dem Ersteller dieses Threads würde ich definitiv anraten sich RegEx einmal anzuschauen. Ohne Fleiß kein Preis! :wink:

Gruß

Re: HTML Dateien durchsuchen mit PB

Verfasst: 24.11.2014 12:30
von Micha122
Hallo @N_Gnom,
da ich momentan auch grade dabei bin eine Textsuche für HTML-Seiten zu programmieren mal einige Denkanstöße von mir.
Das ganze html zeugs soll dabei aber nicht durchsucht werden, sondern eben nur der anzeigbare Text.
Teile des "html zeugs" enthalten aber auch informatives. Ich beziehe in meinem Programm z.B. die meta tags sowie die Links mit in die Suche ein, denn teilweise sind dort recht aussagekräftige Wörter enthalten. Außerdem sind im Head manchmal auch Infos zum Author enthalten.:wink:

Ich entferne vor der Suche nur folgende Tags:
<!DOCTYPE... >, <html... >, <script.....</script>, <!--....-->, <option....</option>, <img....>

Was dann noch übrigbleibt führt kaum zu falschen Suchergebnissen.

Meine Meinung ist halt, das der Aufwand immer im Verhältnis zum Nutzen stehen sollte.

Gruß

Re: HTML Dateien durchsuchen mit PB

Verfasst: 24.11.2014 14:27
von N_Gnom
Es ist ein Ordner für eine help.html und da brauch ich tatsächlich nur den plain text.
Derzeit komm ich grad nicht dazu mich weiter damit zu beschäftigen, aber läuft ja nicht weg.

Re: HTML Dateien durchsuchen mit PB

Verfasst: 24.11.2014 18:50
von Micha122
Es ist ein Ordner für eine help.html
Am Anfang waren es noch "viele" HTML-Files. Nun ist es auf einmal nur noch ein help.htm? :roll:
Ich habe einen Ordner mit unterordnern in denen sich viele HTML Dateien befinden.
Nun gut, wenn es nun doch nicht so viele sind, habe ich hier einen Code der vielleicht für Deine Zwecke reicht.
- Einfach nur auf die Schnelle getippt
- Keine Fehlerabfragen
- Kein Check von Ausnahmen
- Kein Unicode
Für meine Zwecke ist der Code zu langsam, deshalb habe ich diesen Weg auch nicht weiterverfolgt.

Code: Alles auswählen

File.s= OpenFileRequester("Datei auswählen...","","html (.htm)|*.htm|All files (*.*)|*.*",0)
If File.s
  If ReadFile(0, File.s) 
    While Eof(0) = 0 
      string.s+ ReadString(0) 
    Wend
    CloseFile(0)        
  Else
    MessageRequester("Fehler","Datei konnte nicht geöffnet werden")
  EndIf
EndIf



If CreateRegularExpression(0, "<body.*?<\/body>")  
  Dim result.s(0)
  ExtractRegularExpression(0, string, result.s())
EndIf


string=result.s(0)

laenge.i=StringByteLength(string,#PB_UTF8)
string_neu.s=Space(laenge)

For k=1 To laenge
  If PeekS(@string+k,1,#PB_UTF8) =">"
    ww.s="ok"
    k+1
  EndIf
  If PeekS(@string+k,1,#PB_UTF8) ="<"
    ww.s=""
  EndIf
  If ww.s="ok"
    PokeB(@string_neu+g, PeekB(@string+k))
    g+1 
  EndIf
Next k
Debug string_neu
Gruß

Re: HTML Dateien durchsuchen mit PB

Verfasst: 25.11.2014 19:01
von N_Gnom
Ob nun eine oder mehrere ist ja nicht so relevant.
Es sind schon noch mehrere.
Wenn ich wieder an meinem PC mit PB sitze, werd ich das mal testen.

Re: HTML Dateien durchsuchen mit PB

Verfasst: 28.11.2014 07:18
von Deluxe0321