Полнотекстовой поиск по задачам и документам

«Полнотекстовый поиск» позволяет быстро искать карточки / документы по названию и содержимому:

  • по названию карточки / документа;

  • по текстам описаний,

  • по содержимому чек-листов;

  • по содержимому комментариев.

Пользователи могут самостоятельно регулировать формат обработки поискового запроса — искать только по названиям или по названиям и содержимому. 

Поиск по карточкам по умолчанию осуществляется по названию карточек.

При выключении опции «Искать только в названии карточек» поиск будет осуществляться по наименованию и описанию карточек, а так же по тексту их чек-листов и комментариев.

Поиск по карточкам отличается от общих принципов поиска тем, что отдельно обрабатывается поисковый запрос из отдельного термина, состоящего только из цифр. В таком случае будет осуществлен точный поиск по id карточки и поиск данного термина в подстроке. В результатах поиска первым будет представлена карточка с совпадающим id карточки, а затем уже карточки по убыванию даты изменения.

Поиск по карточкам в архиве осуществляется только по наименованию архивных карточек. Поисковый запрос аналогичен обычному поиску по карточкам.

Поиск по документам по умолчанию осуществляется по наименованию документа.

При выключении опции «Искать только в названии документов» поиск будет осуществляться по наименованию и содержимому тексту документа.

Общие принципы полнотекстового поиска

  1. Поисковый запрос состоит из поисковых слов - терминов (terms)

  2. Поисковый запрос может состоять из единичных терминов, а может являться фразой, т.е. состоять из нескольких терминов, разделенных между собой пробелами.

  3. Каждый термин может состоять из букв, цифр и специальных символов, таких как @/-+.%:()[]{}*?№#&^$* (кроме " и ~, которые являются служебными символами).

  4. При поиске по фразе все термины объединяются операторами "И", т.е. результатом поиска будет текст, содержащий все совпадения по терминам запроса в любой последовательности.

  5. По умолчанию, поиск производится в подстроке, т.е. совпадение термина происходит в случае, когда термин совпадает с искомым словом или является его частью (например, при поиске слова текст в результаты попадут текст, текстовый, текстом, подтекст и т.п.)

  6. В конец поискового запроса можно дописать знак ~ (текст~ или всем привет~), тогда при поиске допускается отличие каждого термина запроса и искомого слова на один символ, т.е. один символ может отличаться или отсутствовать (например, при поиске слова текст~ в результаты попадут тексты, тексту, тест и т.п.)

  7. Поисковый запрос может быть заключен в двойные кавычки, тогда будет осуществлен точный поиск по запросу. (TODO - сделать возможность брать в кавычки только часть поискового запроса и осуществлять только по нему точный поиск)

  8. Сортировка результатов поиска осуществляется от последних изменений к более ранним.

Примеры поисковых запросов:

123 - будет найдена карточка с ИД 123 и карточки, содержащие текст 123 как единая комбинация цифр

123* - будут найдены карточки содержащие 123 в подстроке: 123456, 123кг

текст - будут найдены карточки содержащие текст, тексты, текстом, подтекст и др

текст 123 - будут найдены карточки содержащие, подстроки текст и 123. Порядок слов в тексте не имеет значения.

текст 123~ - будут найдены карточки содержащие, подстроки текст и 123, а также один символ каждого слова может отличаться или отсутствовать. Порядок слов в тексте не имеет значения.

"текст 123" - будут найдены карточки содержащие точный запрос текст 123