Jump to content

EPG Suche etwas auschliessen


huhu22

Recommended Posts

Posted

Gibt das dafür keinen Pattern Tester? Damit man die Suchen im Vorfeld überprüfen kann?

Posted

(?i)Der letzte Bulle(?!.*?2013)

Klappt bei mir zu finden in der PDF letzte Seite.

 

Wünschenswert wäre eine farbliche Markierung auf was gefiltert wurde.

Exit - Lauf um dein Leben

Hab ich im Timer und weiß nicht warum.

Posted

Und wieder einmal hast du`s geschafft mir ein Grinsen ins Gesicht zu zaubern! :D:thumbsup:

 

Aber wie kommt es, dass das Format jetzt so komplett anders aussieht, als wenn man etwas in die Suche einschliessen will?

Posted

Das ist eben der RegEx Syntax, oft gibt es auch mehrere Möglichkeiten.

Man muss das viel üben und immer wieder dabei in die Doku schauen.

 

So in 1-2 Sätzen ist die Logik dahinter leider nicht erklärt.

Äußerst mächtig, aber äußerst kompliziert.

Posted

Danke für die Erlärung, nuts! Vielleicht steig ich ja irgendwann mal dahinter. ;)

  • 3 weeks later...
Posted

Hallo zusammen,

 

ich versuche mich alle paar Jahre mal wieder an reglären Ausdrücken, um meine Suchen mittels Ausschlüssen genauer und flexibler zu machen. Jedesmal schaue ich mir die verlinkten Seiten mit der Perl-Doku etc an, probiere dies und das und lege letztendlich das Problem wieder auf Eis, weil der Lernaufwand einfach zu groß ist. ich würde gerne in aller Bescheidenheit und Demut anfragen, ob es nicht u.U. Sinn machen würde, die Suche mit Ausschlüssen etwas anwenderfreundlicher zu machen, d.h. eine Syntax für Ausschlüsse in die einfache Suche ohne reguläre Ausdrücke zu integrieren.

 

Genial wäre, wenn eine simple Suche wie "skandinavi (Schweden|Finnland) -(Rentiere|Wikinger)" alle Sendungen ergeben würde, bei denen in den durchsuchbaren Feldern auf jeden Fall z.B. skandinavisch oder Skandinavien vorkommt, dazu Schweden oder Finnland und weder Rentiere noch Wikinger. Und das, ohne vorher zu wissen, ob "Rentiere" hinter "Schweden" steht oder davor.

 

Viele Grüße

Low

 

PS: Ja ich weiß, dass Finnland nicht unbedingt zu Skandinavien gehört. :glare:

Posted (edited)

Da braucht du dich nicht einlernen. Deine Anforderungen kann eine regex kaum erfuellen. Das waere postiver und negativer lookahead und positiver und negativer lookback gleichzeitig. Das kann du in einem Einzeiler nicht ausdruecken.

 

Mehr Funktion waere sicher moeglich, aber es hat im Moment niemand Zeit fuer sowas.

Ich z.B. wuede einen Zeilentrenner wie // einfuehren. Dann kann man pro Zeilentrenner die Liste einmal loopen.

Waere dann was wie

 

[ss][kc]andinav // ?![WwVv]iking

 

 

Bis dahin findet folgendes Skandinavien, Schweden oder Finnland. Die Rentiere und Wikinger musst du dann halt von Hand wieder rausnehmen.

 

[ss]kandinavien|[Ff]innland|[ss]chweden

 

Das ist Skandinavien, Finnland und Schweden aber nicht Norwegen

 

[ss]kandinavien|[Ff]innland|[ss]chweden|?![Nn]orwegen

 

Allerdings findet es Norwegen wenn auch einer der drei anderen Begriffe vorkommt. Wie gesagt, das mit dem lookahead und lookback ist sehr komplex.

Edited by mague
Posted

Vielen Dank für die ausführliche Antwort! So lange die RegEx-basierte Suchengine auch hinter der "endanwenderkompatiblen" Suche steht, ist es wohl wirklich schwierig, diese programmseitig etwas flexibler zu machen und so etwas wie die von mir oben zitierte Eb@y-ähnliche Syntax zu ermöglichen.

 

Dass da keiner für Zeit hat, sehe ich voll ein.

 

Deine Besipiele probiere ich heute gleich mal aus, vielen Dank!

  • 5 months later...
Posted

Hallo,

 

ich möchte .z.B. von Eurosport alles aufnehmen, was Weltcup oder Weltmeisterschaft heißt, jedoch nicht Darts und Biathlon.

 

Dazu habe ich folgendes Probiert:

(?i)Weltcup|Weltmeisterschaft(?!.*?Biathlon|Darts)

(?i)Weltcup|Weltmeisterschaft(?!.*?Biathlon)(?!.*?Darts)

(?i)Weltcup|Weltmeisterschaft(?<!Biathlon|Darts)

(?i)Weltcup|Weltmeisterschaft(?<!Biathlon)(?<!Darts)

 

Nichts von all dem funktioniert, die Ausschlüsse werden einfach ignoriert wenn Biathlon oder Darts am Anfang stehen. Wenn allerdings die Beschreibung mit durchsucht wird und dort stehen die Ausschlüsse noch einmal, dann funktioniert zumindest Teilweise (?i)(?=Weltmeisterschaft|Weltcup).(?!.*Biathlon)(?!.*Darts).

 

Hat jemand eine Idee?

Posted

Hallo,

 

ich möchte .z.B. von Eurosport alles aufnehmen, was Weltcup oder Weltmeisterschaft heißt, jedoch nicht Darts und Biathlon.

 

Dazu habe ich folgendes Probiert:

(?i)Weltcup|Weltmeisterschaft(?!.*?Biathlon|Darts)

(?i)Weltcup|Weltmeisterschaft(?!.*?Biathlon)(?!.*?Darts)

(?i)Weltcup|Weltmeisterschaft(?<!Biathlon|Darts)

(?i)Weltcup|Weltmeisterschaft(?<!Biathlon)(?<!Darts)

 

Nichts von all dem funktioniert, die Ausschlüsse werden einfach ignoriert wenn Biathlon oder Darts am Anfang stehen. Wenn allerdings die Beschreibung mit durchsucht wird und dort stehen die Ausschlüsse noch einmal, dann funktioniert zumindest Teilweise (?i)(?=Weltmeisterschaft|Weltcup).(?!.*Biathlon)(?!.*Darts).

 

Hat jemand eine Idee?

 

Hallo,

 

ein look behind der hinter dem Suchbegriff steht, funktioniert nicht - der muss davor stehen

(?i)Weltcup|Weltmeisterschaft(?<!Biathlon|Darts)

(?i)(?<!Biathlon|Darts)Weltcup|Weltmeisterschaft

 

Bei Eurosport sehen die Sendungen (derzeit) immer wie folgt aus:

 

Biathlon: IBU Weltcup 2014/15 in Oberhof (Thüringen) - 4 x 7,5km Staffel der Männer (4. von 9 Saisonstationen)

Skilanglauf: FIS Weltcup - Tour de Ski 2014/15 in Toblach-Cortina (ITA) - 15km Freistil-Verfolgung der Frauen (3. von 4 Tourstationen)

 

Um Biatholon oder Darts auszuschließen muss man einen LOOK BEHIND machen, dieser hat aber den nachteil, dass man keine beliebige Anzahl von Zeichen zwischen Fundstelle und dem Look Behind angeben kann. (*+? funktionieren hier nicht - das ist sprachlich bei PCRE so festgelegt)

 

Der Trick ist nun:

* Man sucht nach einem Doppelpunkt(!) (in diesem Sonderfall geht das zufällig)

* davor (und zwar direkt davor) darf kein "Biathlon" oder "Darts" vorkommen (negativer Look Behind)

* dahinter muss ein "Weltcup" oder "Weltmeisterschaft" vorkommen (positiver Look Ahead)

 

(?i)(?<!Biathlon|Darts):.*(?=Weltcup|Weltmeisterschaft)

 

Leider funktioniert auch das noch nicht ganz perfekt, weil (bei den Standardeinstellungen) auch folgender Treffer gefunden wird.

 

Titel:

Darts: 38. BDO Profi-Weltmeisterschaft 2015 in Frimley Green (ENG)

Subtitle:

6. Turniertag: Viertelfinale der Männer und Frauen / Übertragung aus dem Lake...

Description:

[...]

British Darts Organisation an: die alljährliche BDO World Championship. Die älteste Weltmeisterschaft im Dartssport

[...]

 

In diesem Fall liegt es aber am Beschreibungsfeld und nicht am Titelfeld.

(Treffer werden scheinbar für jedes Datenfeld mit "oder" verknüpft)

 

 

Lösung:

Links oben auf [Mehr...]

dann Suche in die folgenden Einträge wählen:

[X] Titel

[X] Untertitel

[ ] Beschreibung (deaktiviert)

 

[ ] Groß-/Kleinschreibung ignorieren

[X] Reguläre Ausdrücke nutzen

 

 

Wenn noch jemand eine weitere Lösung gefunden hat, dann gerne posten - man kann ja nur lernen... ;-)

 

//Chris

×
×
  • Create New...