Выполнение поиска текста

На этой странице представлена информация о том, как выполнять пользователю JIRA поиск текста. Он применяется как к базовому поиску, так и к расширенному поиску (при использовании с оператором CONTAINS). Эта страница также применяется для быстрого поиска при выполнении текстового поиска в полях, поддерживаемых этой функцией.

Подтверждения (благодарности):

JIRA использует Apache Lucene для индексации текста, которая обеспечивает сложный язык задач. Большая часть информации на этой странице выводится на странице Синтаксис задач Parser документации Lucene.

Условия запроса (Query)

«Запрос (query)» разбивается на термины  (terms)  и операторы (operators). Существует два типа терминов: отдельные термины (Single Terms) и фразы (Phrases). Один термин - это одно слово, такое как «тест» или «привет». Фраза - это группа слов, окруженная двойными кавычками, такими как «hello dolly».

Несколько терминов могут быть объединены вместе с булевыми операторами для формирования более сложного «запроса (query» (см. ниже). Если вы объедините несколько терминов без указания каких-либо булевых операторов, они будут объединены с помощью операторов AND.

 

Модификаторы срока

JIRA поддерживает изменение условий задачи для предоставления широкого спектра вариантов поиска.

Wildcard searches: ? and * | Fuzzy searches: ~ | Proximity searches

Wildcard searches: ? and *

В настоящее время JIRA НЕ поддерживает ведущие подстановочные знаки или Подстановочные знаки во фразах.

JIRA поддерживает одно- и многосимвольные групповые поиски.

Для выполнения поиска с одним символьным символом используйте символ? .Для выполнения поиска по шаблону с несколькими символами используйте символ «*».

 

Односимвольный поиск по шаблону ищет термины, которые совпадают с заменой одного символа. Например, для поиска «текста» или «теста» вы можете использовать поиск:


te?t

Множественные символьные поиски подстановочного знака ищут 0 или больше символов. Например, для поиска Windows, Win95 или WindowsNT вы можете использовать поиск:


win*

Вы также можете использовать поиск подстановочных знаков в середине срока. Например, для поиска Win95 или Windows95 вы можете использовать поиск:


wi*95

Нечеткие поисковые задачи: ~

JIRA поддерживает нечеткие поиски. Чтобы сделать нечеткий поиск, используйте тильду «~», символ в конце одного слова. Например, для поиска термина, похожего на орфографию, на «бродят» используйте нечеткий поиск:


roam~

В этом поиске найдутся такие термины, как пена и бродяга.

Примечание. Условия, найденные в результате нечеткого поиска, автоматически получат коэффициент усиления 0,2

Поиск близости

JIRA поддерживает поиск слов, находящихся на определенном расстоянии. Чтобы выполнить поиск по близости, используйте тильду «~», символ в конце фразы. Порядок слов должен быть таким же, как и в поле, которое вы ищете. Например, для поиска «atlassian» и «jira» в 10 словах друг друга в документе используйте поиск:


text ~ '"atlassian jira"~10'

Если вы используете более двух слов поиска, номер расстояния должен быть минимальным количеством несоответствующих слов между всеми поисковыми словами. Например, если вы ищете строку oink werewolf giraffe и coyote dotty, а не sloopthen, следующий правильный запрос:


Text ~ '"oink and sloop" ~ 5'

Увеличение срока: ^

JIRA обеспечивает уровень соответствия соответствующих документов на основе найденных терминов. Чтобы увеличить срок использования, используйте символ «^»,символ с коэффициентом увеличения (число) в конце срока, который вы ищете. Чем выше коэффициент форсирования, тем более актуальным будет этот термин.

.Повышение (Boosting) позволяет вам контролировать и повышать релевантность документа, Например, если вы ищете


Atlassian jira

и вы хотите, чтобы термин «atlassian» был более релевантным, увеличивая его с помощью символа ^ вместе с коэффициентом усиления рядом с термином. Вы бы набрали:


Atlassian ^ 4 jira

Это сделает документы с термином atlassian более релевантными. Вы также можете повысить релевантность фразы, как в примере:


"Atlassian jira" ^ 4  querying

По умолчанию коэффициент усиления релевантности равен 1. Коэффициент усиления релевантности должен быть положительным, и может быть меньше 1 (т. е. .2)

Булевы операторы

Булевы операторы позволяют комбинировать термины с помощью логических операторов. JIRA поддерживает AND, «+», OR, NOT и «-» в качестве булевых операторов.

 

 

OR | AND | Required term: + | NOT | Excluded term: -

 

OR

Оператор OR является оператором соединения по умолчанию. Это означает, что если булевский оператор между двумя членами не используется, используется оператор OR. Оператор OR связывает два термина и находит соответствующий документ, если любое из условий существует в документе. Это эквивалентно объединению с использованием множеств. Символ || может использоваться вместо слова OR.

Для поиска документов, содержащих «atlassian jira» или просто «слияние», используйте задачу:


"atlassian jira" || confluence
или
"atlassian jira" OR confluence

AND

Оператор AND соответствует документам, в которых оба термина существуют в любом месте текста одного документа. Это эквивалентно пересечению с использованием множеств. Символ && можно использовать вместо слова AND.

Для поиска документов, содержащих «atlassian jira» и «отслеживание проблем», используйте задачу:


"atlassian jira" AND "issue tracking"

Требуемое условие: +

Оператор «+» или требуемый оператор требует, чтобы термин «символ +» существовал где-то в поле одного документа.

Для поиска документов, которые должны содержать «jira» и могут содержать «atlassian», используйте задачу:


+jira atlassian

 

NOT

Оператор NOT исключает документы, содержащие термин после NOT. Это эквивалентно разнице с использованием множеств. Символ ! может использоваться вместо слова NOT.

Для поиска документов, содержащих «atlassian jira», но не «japan», используйте запрос:


"atlassian jira" NOT "japan"

Примечание. Оператор NOT не может использоваться только с одним условием. Например, следующий поиск не возвращает никаких результатов:


NOT "atlassian jira"

 

Исключенное условие: -

Оператор «-» или запрет исключает документы, содержащие термин после символа «-».

Для поиска документов, содержащих «atlassian jira», но не «japan», используйте задачу:


"atlassian jira" -japan

Группирование

JIRA поддерживает использование круглых скобок для групповых предложений для формирования «подзапросов». Это может быть очень полезно, если вы хотите управлять логической логикой для «запроса».

Чтобы найти ошибки, либо atlassian, либо jira, используйте «запрос»:

bugs AND (atlassian OR jira)

Это устраняет любую путаницу и гарантирует, что ошибки должны существовать, и может существовать термин atlassian или jira.

Удаление специальных символов: \ или \\

Для большинства полевых поисков специальные символы автоматически исключаются. Однако JIRA поддерживает возможность поиска некоторых полей для специальных символов путем «экранирования» их в синтаксисе задачи. Текущий список таких символов:


+ - & | ! () {} ^ ~ *? \:

Чтобы избежать этих символов, введите символ обратной косой черты «\» перед специальным символом (или, используя расширенный поиск, введите два обратных слэша «\\» перед специальным символом).

Например, для поиска (1 + 1) в простом или быстром поиске используйте задачу:


\ (1 \ + 1 \)

И для поиска (1 + 1) с использованием расширенного поиска (в JIRA Query Language или JQL) используйте запрос:


"\\ (1 + 1 \\ \\)"

Обратите внимание: если вы используете расширенный поиск - см. Зарезервированные символы для получения дополнительной информации о том, как эти символы и другие экраны скрываются на языке запросов JIRA.

Ограничение

JRASERVER-40790 - Поиск проблем JIRA, содержащих специальные символы (в текстовых полях) Решено:

Комментарий разработчика:

При анализе текста мы удаляем все знаки препинания. Это не зависит от языка и других параметров. Первый процесс, который мы используем, - это токенизация текста. Для этого мы используем классический символизатор (токенизатор) Lucene, который:

  • Разделяет слова в пунктуационных символах, удаляя знаки препинания. Однако точка, за которой не следует пробел, считается частью символа.
  • Разделяет слова в дефисах, если в символе нет номера, и в этом случае весь символ интерпретируется как номер продукта и не делится.
  • Распознает адреса электронной почты и имена хостов Интернета как один токен.

В результате «[» и «]» символы не добавляются в индекс или не сохраняются в запросе фразы.

Зарезервированные слова

Чтобы сохранить размер индекса поиска и эффективность поиска в JIRA, следующие английские зарезервированные слова (также называемые «стоп-слова») игнорируются из индекса поиска и, следовательно, функции текстового поиска JIRA:

"a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "no", "not", "of", "on", "or", "s", "such", "t", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"

Имейте в виду, что это иногда может привести к неожиданным результатам. Например, предположим, что одна задача содержит текстовую фразу «VSX сбой», а другая задача содержит фразу «VSX не сбой». Текстовый поиск «VSX сбой» вернет обе этих задачи. Это связано с тем, что слова будут и не будут частью зарезервированного списка слов.

 Ваш администратор JIRA может сделать JIRA индексировать эти зарезервированные слова (чтобы JIRA обнаружила задачи на основе присутствия этих слов), изменив язык индексирования на другой (в разделе «Администрирование»> «Система»> «Общая настройка»).

Словосочетание

Поскольку JIRA не может искать задачи, содержащие части слов (см. ниже), слово «stemming» позволяет вам извлекать задачи из поиска на основе «корневых» (или «стеблевых») форм слов вместо того, чтобы требовать точного соответствия с конкретными Формы этих слов. Количество задач, полученных из поиска на основе слова, имеющего исходное значение, обычно больше, поскольку любые другие проблемы, содержащие слова, которые возвращаются к одному и тому же корню, также будут извлекаться в результатах поиска.

Например, если вы ищете задачи, используя термин «настройка» в поле «Сводка», JIRA связывает это слово с его корневой формой «custom» и будет получать все задачи, поле Сводка которых также содержит любое слово, которое может быть восстановлено назад к 'custom'. Следовательно, следующий запрос:


summary ~ "customize"

"Будет извлекать задачи, чье поле Summary содержит следующие слова:

customized

customizing

customs

customer

etc.

 Пожалуйста, обратите внимание:

  • Администратор JIRA может отключить словосочетание (так что JIRA найдет проблемы на основе точных совпадений со словами), изменив язык индексирования на другой (в разделе «Администрирование»> «Система»> «Общая настройка»).
  • Словосочетание применяется ко всем полям JIRA (а также текстовым полям).
  • Когда JIRA индексирует свои поля, любые слова, которые «стекаются», сохраняются в индексе поиска JIRA только в корневой форме.

Ограничения

Обратите внимание, что для поиска JIRA применяются следующие ограничения:

Только целые слова

JIRA не может искать задачи, содержащие части слов, но только для целых слов. Исключением являются слова, которые возникают.

Это ограничение также можно преодолеть с помощью нечетких поисков.

По материалам Atlassian JIRA User's Guide: Performing Text Searches