Суть проблемы, есть таблица в которой в разных полях лежит разная информация
Пример:
id1 товар красный размер 12x12x1.5мм
id2 товар красный размер 14x19x50мм
id3 товар красный размер 5мм
и при поиске фразы: товар 5мм поиск находит первым товар с id1 видимо по тому что видит в конце строки 5мм.
Пробовал делать regexp_filter = (\d*.?\d+)[x\x{0445}*] => \1 x - но он похоже не работает.
Может кто подскажет как настроить чтобы цифры искало целиком в не дробные части ?
можно настроить blend_chars = x
и попробовать разные blend_mode - но тогда все слова с символом x тоже будут дополнительно бится на несколько токенов по этому символу
С blend char не вариант, этот x может быть разными буквами латиницей или кириллицей. Надо как-то отделить цифры от этого разделители.
Вот пример того что происходит:
drop table if exists t; create table t(f text) regexp_filter = '(\d+)[x\x{0445}\*] => \1_'; call keywords('размер: 145x43x1.5мм', 't');