NEWS
[Gelöst]Mit parser Text Abschnitt auslesen (Website)
-
@gatam ganz knapp, incl. Stand: geht es mit
(Stand: .+Uhr)
-
-
@gatam sagte in Mit parser Text (Datum und Uhrzeit) von Website auslesen:
Dann hört der parser bei Uhr aber nicht auf
RegEx:
(Stand: .+Uhr)Mist, auch nicht bei
(Stand: .+Uhr)<
? -
@homoran sagte in Mit parser Text (Datum und Uhrzeit) von Website auslesen:
Mist
Nein ...
NACHTRAG: Weil das Wort Uhr später, ganz am Ende noch bei den Öffnungszeiten des Rathauses erscheint(Stand: .+Uhr)< auch nicht
-
@gatam Sorry, hab jetzt keine Lust den Quelltext nochmal am Handy auszuschneiden um zu testen.
Verstehe ich nicht wirklich, warum der Parser-Adapter da nicht aufhört. -
Kein Problem ^^
Hab gefunden warum er zuviel ausschneidet und noch dazugeschrieben oben.Das was ich wollte habe ich ja.
-
@gatam sagte in Mit parser Text (Datum und Uhrzeit) von Website auslesen:
Wel das Wort Uhr später noch bei den Öffnungszeiten des Rathauses erscheint
aaaaah
und der Parser-Adapter mit single line arbeitet! -
Wenn du mit Single Line diesen Audruck meinst: Stand: ([\d.\s:Uhr]+)
Ja, dann nimmt er Datum und Uhrzeit bis zum Wort Uhr.
-
@gatam sagte in Mit parser Text (Datum und Uhrzeit) von Website auslesen:
Wenn du mit Single Line diesen Audruck meinst
nein, der Adapter sieht den ganzen Quelltext als eine Zeile. Daher kann man im Adapter auch nicht nach Zeilenumbrüchen suchen.
Ich ging davon aus, dass der RegEx nur bis zur nächsten Zeile erfüllt sein müsste
diesmal habe ich
.+
im RegEx gehabt, was beliebig viele beliebige Zeichen heisst, und eigentlich mitUhr
abgeschlossen sein müsste. Da der Quelltext aber als eine Zeile erkannt wird, wird das allerletzteUhr
genommen -
Aus https://regex101.com/
. matches any character (mit Ausnahme von Zeilenenden)
"+ matches the previous token between one and unlimitiert times, so viele Male wie möglich, Wiedergabe wie nötig (gierig)"die unlimited times sind dann das letzte Mal das Wort UHR auf der Website
-
@gatam sagte in Mit parser Text (Datum und Uhrzeit) von Website auslesen:
Aus https://regex101.com/
. matches any character (mit Ausnahme von Zeilenenden)und gena darin unterscheidet sich der Parser-Adapter. der macht trotzdem weiter
-
Ich habs
(Stand: .+? Uhr)
(Wie hast du deine RegEx Schnippsel im Beitrag weiss hinterlegt?^^)
Nochmals von der Website
Greed (Gier): Standardmäßig versuchen die Quantoren *, ?, +, und {min,max}, so viele Zeichen wie möglich einzubeziehen, um eine Übereinstimmung zu finden. Um dieses Verhalten auf so wenig Zeichen wie möglich zu begrenzen, fügen Sie nach den Quantoren ein Fragezeichen an. Zum Beispiel bedeutet das Suchmuster <.+> (das kein Fragezeichen enthält): "Suche nach einem <, gefolgt von 1 oder mehr Zeichen, gefolgt von einem >". Um zu verhindern, dass das Suchmuster die komplette Zeichenkette <em>text</em> findet, fügen Sie nach dem Pluszeichen ein Fragezeichen an: <.+?>. Dies führt dazu, dass die Übereinstimmung bereits beim ersten '>' endet und dementsprechend nur der erste HTML-Tag <em> gefunden wird.
-
@gatam sagte in Mit parser Text (Datum und Uhrzeit) von Website auslesen:
Wie hast du deine RegEx Schnippsel im Beitrag weiss hinterlegt?^^
als inline code markiert.
jeweils ein ` vor und hinter dem code