Nur in ein Problem laufen. Ich versuche eine Volltextsuche für lokalisierten Inhalt (insbesondere Russisch) einzurichten. Das Problem ist, dass die Standardkonfiguration (wie auch meine Benutzerdefiniert) sich nicht mit Briefen befasst. Beispiel:Postgresql Volltextsuche Tokenizer
SELECT * from to_tsvector('test_russian', 'На рынке появились новые рублевые облигации');
> 'На':1 'новые':4 'облигации':6 'появились':3 'рублевые':5 'рынке':2
'На' ist ein Stoppwort und sollte entfernt werden, aber es wird nicht im Ergebnisvektor gespeichert. Wenn ich Zeichenfolge kleingeschrieben passieren, funktioniert alles richtig
SELECT * from to_tsvector('test_russian', 'на рынке появились новые рублевые облигации');
> 'новые':4 'облигации':6 'появились':3 'рублевые':5 'рынке':2
Sure I Strings vorgekleingeschrieben passieren kann, aber Handbuch sagt
Die einfache Wörterbuch Vorlage arbeitet durch die Eingabe-Token Umwandlung Fall zu senken und die Überprüfung es gegen eine Datei von Stoppwörtern.
Config russian_test
sieht wie folgt aus:
create text search CONFIGURATION test_russian (COPY = 'russian');
CREATE TEXT SEARCH DICTIONARY russian_simple (
TEMPLATE = pg_catalog.simple,
STOPWORDS = russian
);
CREATE TEXT SEARCH DICTIONARY russian_snowball (
TEMPLATE = snowball,
Language = russian,
StopWords = russian
);
alter text search configuration test_russian
alter mapping for word
with russian_simple,russian_snowball;
Aber ich habe eigentlich genau die gleichen Ergebnisse mit eingebautem in russian
Konfig.
Ich versuchte ts_debug und Token als word
behandelt, wie ich erwartet hatte.
Irgendwelche Ideen?