Wildcard-Suche

Wildcard-Suche

Einleitung

Jadice bietet eine Suche über Dokumente mit textuellen Inhalten an. Diese Suche bietet mehrere Such-Optionen. Eine davon ist die Wildcard-Suche. Mit ihrer Hilfe lassen sich Suchen durchführen, bei denen die genaue Schreibweise des Suchbegriffes nicht bekannt ist oder Teile des Suchbegriffes variabel sind. Somit kann die Wildcard-Suche beispielsweise eingesetzt werden, wenn der Anwender ein Wort suchen möchte, welches verschiedene Schreibweisen hat. Mit Hilfe der Wildcard-Symbole kann somit mit einer Suche sowohl "bekanntgeben" als auch "bekannt geben" gefunden werden.

Verhalten der Wildcard-Suche

Die Wildcard-Suche bietet eigene Wildcard-Suchparameter an, das * und das ?. Sie erlauben folgendes Verhalten der Wildcard-Suche:

  1. Mit dem Wildcard-Suchparameter * können 0 bis beliebig viele Zeichen gesucht werden. Das ? sucht nach genau einem Zeichen. Als Zeichen werden Buchstaben, Zahlen, Sonderzeichen und Weißzeichen angesehen.

  2. Wenn nach den Zeichen * oder ? gesucht werden soll, müssen sie im Suchstring escaped werden. Dazu wird ein Backslash \ direkt vor das entsprechende Zeichen geschrieben.
    Beispiel: Mit dem Suchstring "te\*st" würde "te*st" gefunden werden, "test" dagegen nicht.

  3. Es können beliebig viele Wildcard-Symbole (auch in direkter Reihenfolge) in einer Suche eingesetzt werden. Jedes Einzelne verhält sich dabei wie oben beschrieben.

  4. Unter Einsatz der Wildcard-Suche ist es möglich Matches zu finden, die sich über mehrere Zeilen erstrecken. Matches über mehrere Seiten werden nicht gefunden.

  5. Bei der Suche wird der erste mögliche Match gefunden.
    Beispiel: Im Text "Ich teste hier" wird nach "t*e" gesucht und nur Wildcard ist ausgewählt.
    Das Erste nach dem t folgende e ist das e direkt nach dem t. Daher ist der Match hier "te", auch wenn am Ende von "teste" und in "hier" jeweils ein weiteres e vorkommt.

  6. Nach einem gefundenen Match wird der nächste Treffer ermittelt.

Corner-Cases

Bei der Wildcard-Suche ergeben sich mehrere Corner-Cases. Eine Übersicht bietet die folgende Tabelle:

Fall

notwendige Such-Optionen

Verhalten

Anmerkungen

Fall

notwendige Such-Optionen

Verhalten

Anmerkungen

*, ?, ?*, *?, **, ??, ?*?, *?*

Wildcard

Es wird keine Suche angeboten und der Suchbutton ist disabled.

Hier ist keine Suche sinnvoll, da andernfalls der komplette Text ein Treffer wäre.

 

 

 

 

*abc

Wildcard

Das * wird ignoriert und es wird nur nach abc gesucht.

Das * wird ignoriert, da ansonsten der komplette Text vom Anfang der Seite bis zum gefundenen Suchstring ein Treffer wäre. Bei mehreren Treffern auf einer Seite würde der nächste Treffer jeweils ab dem Vorherigen beginnen.

*abc

Wildcard

Nur ganze Wörter

Das * steht für 0 bis n Zeichen bis zum Wortanfang.

 

abc*

Wildcard

Das * wird ignoriert und es wird nur nach abc gesucht.

Das * wird ignoriert, da ansonsten der komplette Text ab dem gefundenen Suchstring bis zum Ende der Seite ein Treffer wäre.

abc*

Wildcard

Nur ganze Wörter

Das * steht für 0 bis n Zeichen bis zum Wortende.

 

 

 

 

 

?abc

Wildcard

Es wird abc inklusive dem Zeichen davor gefunden.

 

?abc

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit abc enden und nur ein Zeichen davor haben.

 

abc?

Wildcard

Es wird abc inklusive dem Zeichen danach gefunden.

 

abc?

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit abc beginnen und nur ein Zeichen danach haben.

 

 

 

 

 

*?abc

Wildcard

Es wird abc mit einem Zeichen davor gefunden.

*? wird hier wie nur ein ? behandelt, da ansonsten der komplette Text vom Anfang der Seite bis zum gefundenen Suchstring ein Treffer wäre. Bei mehreren Treffern auf einer Seite würde der nächste Treffer jeweils ab dem Vorherigen beginnen.

*?abc

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit abc enden und mindestens ein Zeichen davor haben.

 

abc?*

Wildcard

Es wird abc mit einem Zeichen danach gefunden.

?* wird hier wie nur ein ? behandelt, da ansonsten der komplette Text ab dem gefundenen Suchstring bis zum Ende der Seite ein Treffer wäre.

abc?*

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit abc beginnen und mindestens ein Zeichen danach haben.

 

?*abc

Wildcard

Es wird abc mit einem Zeichen davor gefunden.

?* wird hier wie nur ein ? behandelt, da ansonsten der komplette Text vom Anfang der Seite bis zum gefundenen Suchstring ein Treffer wäre. Bei mehreren Treffern auf einer Seite würde der nächste Treffer jeweils ab dem Vorherigen beginnen.

?*abc

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit abc enden und mindestens ein Zeichen davor haben.

 

abc*?

Wildcard

Es wird abc mit einem Zeichen danach gefunden.

*? wird hier wie nur ein ? behandelt, da ansonsten der komplette Text ab dem gefundenen Suchstring bis zum Ende der Seite ein Treffer wäre.

abc*?

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit abc beginnen und mindestens ein Zeichen danach haben.

 

 

 

 

 

ab?*cd

Wildcard

Das ?* steht für 1 bis beliebig viele Zeichen.

 

ab*?cd

Wildcard

Das *? steht für 1 bis beliebig viele Zeichen.

 

 

 

 

 

a*b

Wildcard

Der Match erstreckt sich vom a bis zum ersten danach auf der Seite gefundenen b.

 

a*b

Wildcard

Nur ganze Wörter

Es werden Wörter gefunden, die mit a beginnen und mit b enden.

 

Beispiele

Zur besseren Veranschaulichung der Wildcard-Suche sind im Folgenden Suchbeispiele aufgeführt. Zur leichteren Erkennbarkeit sind die Suchergebnisse jeweils farbig markiert:

Suchstring

Such-Optionen

Treffer

Suchtext

Suchstring

Such-Optionen

Treffer

Suchtext

 "lo*m"

Wildcard

"Lorem", "lor sit am", "lore m", "lores et ea rebum", "Lorem" und "lor sit am"

"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."

"lo*m"

Wildcard

Nur ganze Wörter

"Lorem" und "Lorem"

"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."

"*ea"

Wildcard

"ea" und "ea"

"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."

"?et"

Wildcard

"met", "set", " et", " et", " et", " et", "tet" und "met"

"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."

"?*"

Wildcard

keine Treffer

"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."

"s?*t"

Wildcard

"sum dolor sit", "set", "sadipscing elit", "sed diam nonumy eirmod t", "sed diam volupt", "s et", "sam et", "sto duo dolores et", "Stet", "sd gubergren, no sea t", "sanct", "s est" und "sum dolor sit"

"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."