#postgresql
#postgresql
Вопрос:
вот проблема. При выполнении этого:
select to_tsvector('simple', 'a.')
Мне нравится только один результат: ‘a’
потому что «.» — это «символ пробела»
Итак, мой вопрос заключается в том, каков наилучший способ удалить несколько символов из списка символов пробела для этого (простого) словаря или другого (недавно созданного). Я не могу найти системную базу данных или файл, в котором postgresql хранит эти символы.
Комментарии:
1. Может помочь указание проблемы.
2. Первый был неудачным, я пытался ответить на уже опубликованный вопрос. Теперь я создал новый.
Ответ №1:
Сначала вам нужно создать свою пользовательскую конфигурацию текстового поиска
CREATE TEXT SEARCH CONFIGURATION your_fts (
PARSER = pg_catalog."default" );
а затем добавьте сопоставление для пустых токенов
ALTER TEXT SEARCH CONFIGURATION name
ALTER MAPPING FOR blank WITH simple;
Таким образом, все пробелы и специальные символы будут переведены в tsvectors. Вероятно, это не то, что вы хотите. Вам нужно будет использовать пользовательский словарь или даже пользовательский анализатор, чтобы различать несколько ваших специальных символов.