Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Oracle > create stoplist...


Автор: Anet 1.3.2006, 07:01
Здравствуйте,

я занимаюсь соданием системы поиска по русскому тексту в oracle. в русском языке есть предлоги, стостоящие больше чем из 1 слова (в качестве, в знак, в обход, во имя, в глубь, и т.д. ). как показать ораклу, чтоб он воспринимал их как слово в стоп листе? т.е. сейчас он их не видит потому что есть пробелы и получается, что это не одно слово, а несколько.
заключаю их в "в знак" тоже не помогает...


Автор: LSD 1.3.2006, 11:42
Цитата(Anet @ 1.3.2006, 07:01 Найти цитируемый пост)
я занимаюсь соданием системы поиска по русскому тексту в oracle

А с помощью чего ты осуществляешь поиск?

Автор: igon 4.3.2006, 00:09
Речь, видимо, идет об Oracle Text.
Так как индексы текста строятся на основе отдельных слов (группы символов, окруженных пробелом), в них нет места двойным и более словам. По отдельности добавить в stoplist компоненты сложного предлога - тоже не выход: они могут иметь самостоятельное значение.
Вариант: во всех текстах в сложных предлогах заменить пробел на, скажем, $$$ (или ъъъ) и уже такие конструкции (в$$$качестве) добавить в stoplist.
Разумеется, перед показами оригинального текста нужно делать обратное преобразование.
ИМХО, конечно smile

Автор: Anet 23.3.2006, 06:27
iqon, а это ведь вариант! тогда при вводе данных в строке поиска надо будет все пробелы заменять на определенный символ $$$ , например, чтоб найти стоп-комбинации...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)