suit: Volltextsuche mit AND, OR, NOT, " in Strings

Beitrag lesen

Sorry, aber den Aufwand schätz ich deutlich höher ein.

Das kommt daher, dass du nicht definierst, was du eigentlich willst und plätzlich Dinge dazuerfindest, von denen zu Beginn keine Rede war.

Allein schon den passenden Regexp zu finden, um den String in Wörter zu zerlegen unter Berücksichtigung der Sonderzeichen, Umlaute, - etc., die teilweise zum Wort dazugehören, manchmal aber nicht.

Warum solltest du das tun wollen? Einerseits: warum ein regulärer Ausdruck? strpos() tuts auch um Zeichenketten in einer anderen zu finden. Das ganze in eine Schleife verpackt und gut ist.

Dann die Toleranz bei "", sodass "TV Sendung" auch bei "TV-Sendung" und "TVSendung", "TV/Sendung" u.ä. greift.

Das hattest du nicht erwähnt - zudem kenne ich keine SQL-Implementierung, die das könnte - die gängige Bedeutung von "foo bar" ist, dass der Inhalt als literal betrachtet wird, aber auch das ist vergleichsweise trivial - daraus einen regulären Ausdruck zu bauen ist easy, einfach alle Leerzeichen durch "kein Wort-Zeichen" ersetzen und fertig, 1 Zeile.

Dann noch Zusätze wie "Spiel" und "Spiele" oder Game/s, wobei mir hier gerade nicht der Fachbegriff für das Feature einfällt usw.

Zeig mir eine SQL-Implementierung die Kasus, Flexionen oder ähnliches (besonders in der deutschen Sprache) richtig beachtet.

Dieses Feature umzusetzen ist eine Lebensaufgabe.

Für Python find ich jede Menge fertige Bibliotheken,

Eine Bibliothek die bei der Eingabe von "Spiel" auch "Spiele" findet ist trivial, das macht strpos() bereits, eine die anstatt "dumm" auch "dümmer" ebenfalls - man muss nur ein bisschen arbeiten, aber eine die anstatt "dümmer" auch "dumm" oder anstatt "Spiele" auch "Spiel" findet ist eine Lebensaufgabe, da in sämtlichen Sprachen sämtliche Wortformen eines Wortstamms erfasst sein müssen, um das zu abstrahieren (zumindest jene, für irgendwelche Sonderfälle).