Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
J-ИРБИС :  ИРБИС Irbis
 
Ничего не находит на запросы с цифрами
Пользователь: oyan (IP-адрес скрыт)
Дата: 07, April, 2023 11:32

Добрый день! При поиске в J-Ирбис столкнулись с такой проблемой: если в запросе есть цифры, поиск не выдает никаких результатов. В нашем старом каталоге в Web-Ирбис на тот же запрос записи находятся.

Вложения: поиск 25-й кадр в старом ЭК.jpg (214.5KB)   поиск 25-й кадр в J-Ирбис ЭК.jpg (173KB)  
Re: Ничего не находит на запросы с цифрами
Пользователь: oyan (IP-адрес скрыт)
Дата: 07, April, 2023 11:33

Если в запросе нет цифр, то в обоих каталогах одинаковое количество результатов находит.

Вложения: поиск кадр в J-Ирбис ЭК.jpg (274.5KB)   поиск кадр в старом ЭК.jpg (274.6KB)  
Re: Ничего не находит на запросы с цифрами
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 12, April, 2023 22:09

Вы сравниваете результат поиска по ключевым словам (в случае с J-ИРБИС 2.0) и результат полнотекстового поиска (в случае с WEB ИРБИС). Это неправомерно. Полнотекстовому поиску в J-ИРБИС 2.0 соответствует Cвободный поиск.

По умолчанию цифры не попадают в словарь ключевых слов, если не занесены в независимое повторение 610. Но это поведение системы можно изменить путём редакции ISISACW.TAB Однако вопрос лучше поднять в ветке АРМ Администратор.



Редактировано 2 раз. Последний раз 12.04.2023 22:16 пользователем Кирилл Соколинский (СЗТУ).

Re: Ничего не находит на запросы с цифрами
Пользователь: oyan (IP-адрес скрыт)
Дата: 31, October, 2023 15:58

Включила цифры и точку в ISISACW.TAB, теперь цифры и числа (в том числе шифры специальностей, ради которых нам в основном и нужны запросы с цифрами - преподаватели книжки для своих специальностей ищут) попадают в словарь К=.
Допустим, я хочу найти записи по термину К=42.03.04 в J-Ирбис, ввожу 42.03.04 в строку поиска.

Поиск по ключевым словам делает запрос такой:
(<.>K=03$<.>*<.>K=04$<.>*<.>K=42$<.>)
И ничего не находит, потому что порезал его по точкам на три отдельных термина (которые по отдельности в словарь не попали).

Свободный поиск делает запрос такой:
(<.>KT=FT!42.03.04<.>)
и тоже ничего не находит, потому что термин в словаре с префиксом K=, а не KT=.

Чтобы J-Ирбис нашел то, что я хочу, надо выбрать Экспертный поиск, в нем Ключевые слова, там ввести моё 42.03.04, и тогда получается запрос, какой я от него хочу:
(<.>K=42.03.04<.>)
и нужные книги находятся. Но для читателя это довольно неочевидный способ.
Чем определяется то, как J-Ирбис формирует запросы?



Редактировано 1 раз. Последний раз 31.10.2023 16:19 пользователем oyan.

Re: Ничего не находит на запросы с цифрами
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 04, November, 2023 16:25

oyan написал(а):
-------------------------------------------------------
> Допустим, я хочу найти записи по термину
> К=42.03.04 в J-Ирбис, ввожу 42.03.04 в строку
> поиска.
>
> Поиск по ключевым словам делает запрос такой:
> (<.>K=03$<.>*<.>K=04$<.>*<.>K=42$<.>)
> И ничего не находит, потому что порезал его по
> точкам на три отдельных термина (которые по
> отдельности в словарь не попали).

Да, функция разбиения строки на отдельные слова J-ИРБИС 2.0 рассматривает точку как разделитель и не учитывает ISISACW.TAB.

Вы можете:
1. Либо реализовать (или заказать реализацию) собственную функцию обработки ключевых слов. Я бы использовал для правильного выделения шифров специальности маску, сформулированную в виде регулярных выражений.

2. Попробовать использовать Свободный поиск по полному тексту. Для этого исключите из строки [имя базы].ifs, [имя базы].fst 691 поле и создайте словарь заново.

1112,0 5 MHL,'/KT=/',&uf('++08,10,101,102,215,300,907,951,955,621,675,691,692,693,910,941,900,920,903,919,908,964,985,999'),/&uf('6ZAGNJ')

Это с высокой вероятностью позволит решить данную задачу.



Редактировано 1 раз. Последний раз 04.11.2023 16:29 пользователем Кирилл Соколинский (СЗТУ).

Re: Ничего не находит на запросы с цифрами
Пользователь: oyan (IP-адрес скрыт)
Дата: 24, November, 2023 12:07

Кирилл Соколинский (СЗТУ) написал(а):

> 1. Либо реализовать (или заказать реализацию)
> собственную функцию обработки ключевых слов. Я бы
> использовал для правильного выделения шифров
> специальности маску, сформулированную в виде
> регулярных выражений.

Как это сделать?

Re: Ничего не находит на запросы с цифрами
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 02, December, 2023 03:12

oyan написал(а):
-------------------------------------------------------
> Кирилл Соколинский (СЗТУ) написал(а):
>
> > 1. Либо реализовать (или заказать реализацию)
> > собственную функцию обработки ключевых слов. Я
> бы
> > использовал для правильного выделения шифров
> > специальности маску, сформулированную в виде
> > регулярных выражений.
>
> Как это сделать?

1. Изучите примеры функций обработки в ji_field.php (например, keywords) 2. Напишите функцию по аналогии и добавьте её в ji_field_user.php
3. Добавьте функцию обработки в столбец Функция обработки таблицы Правила обработки форм, отключив прочие правила обработки.
4. Добавьте файл ji_field_user.php в no_update_list.txt

Излишне говорить, что такая доработка требует достаточно хорошего знания PHP.



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.