Запросы
Подсистема поиска МойнМойн позволяет использовать в запросах регулярные выражения и различные операторы.
Кроме того, поисковые запросы могут являться аргументы в различных макрокомандах, в качестве параметра которым передаётся список страниц, таких как FullSearch, TitleSearch, FullSearchCached, и PageList.
Оператор |
Описание |
(пробел между ключевыми словами) |
Элементы поискового запроса разделяются между собой пробелами. По умолчанию, элементы запроса объединяются конъюнкцией — только страницы, удовлетворяющие всем элементам запроса, попадают в поисковую выдачу. |
`-ЭЛЕМЕНТ` |
Дефис перед элементом поискового запроса исключает из поисковой выдачи странице, удовлетворяющие ему. |
`regex:ЭЛЕМЕНТ` |
Элемент поискового запроса обрабатывается как регулярное выражение. МойнМойн использует диалект регулярных выражений, реализованный в языке Python (см. https://docs.python.org/2/library/re.html#regular-expression-syntax для дополнительной информации). |
`title:ЭЛЕМЕНТ` |
Поиск страниц, заголовок которых удовлетворяет элементу поискового запроса. |
`case:ЭЛЕМЕНТ` |
Поиск выполняется регистрозависимым. |
`linkto:ЭЛЕМЕНТ` |
Поиск ссылок на `ЭЛЕМЕНТ`. |
`language:КОД-ISO-639-1` |
Поиск страниц, написанных на языке, ISO 639-1 код которого укзаан в параметре, например, `en`, `ru` |
`category:КатегорияЧтоНибудь` |
Поиск страниц, входящих в категорию КатегорияЧтоНибудь. |
`mimetype:ТИП` |
Поиск страниц и прикреплённых файлов с указанным типом MIME, например, `image/png` |
`domain:ЭЛЕМЕНТ` |
Указание домена страниц: `domain:underlay` — страницы помощи, `domain:system` — системные страницы. |
`no_highlight:ЭЛЕМЕНТ` |
Не генерировать регулярное выражение для подсветки `ЭЛЕМЕНТ` на страницах по ссылкам из поисковой выдачи. |
`title:`, `regex:`, `linkto:` и `case:` |
Могут использоваться в одном элементе поискового запроса. |
`OR` |
Данный оператор (дизъюнкция) имеет меньший приоритет, чем неявный `AND` (конъюнкция); например, `машина дизель or бензин` найдёт страницы, где содержатся слова «машина» и «дизель», а также страницы, где содержится слово «бензин», вне зависимости от наличия слова «машина» на странице. |
`(` и `)` |
Круглые скобки, используются для группировки элементов и изменения приоритета обработки. |
Примеры
Пример |
Описание |
`title:regex:"^Помощь|Как|Справочник" макрокоманда` |
Поиск страниц помощи, содержащих слово «макрокоманда». |
`apple (компьютер or "операционная система")` |
Поиск страниц, содержащих слово «apple» и одно из «компьютер» или «операционная система». |
`windows winamp or linux xmms` |
Поиск страниц, содержащих слова «windows» и «winamp», а такде страниц, содержащих слова «linux» и «xmms». |
`"то текст"` |
В выдачу попадут страницы, содержащие «это текст» и «то тексты». Кавычки используются только для включения пробельных символов. |
`linkto:СтраницаWindows title:Linux` |
Поиск страниц, содержащих в «Linux» в названии и ссылающихся на СтраницаWindows. |
`r:\bсобак\b` |
Найдёт страницы, содержащие слово «собак», но не найдёт страницы, содержащие слово «собака». |
`помощь -domain:system` |
Поиск страниц, содержащих слово «помощь», но не являющихся системными страницами. |
`category:КатегорияДомашняяСтраница title:Александр` |
Поиск страниц, входящих в категорию КатегорияДомашняяСтраница и имеющих слово «Александр» в названии (персональные страницы людей с именем Александр). |
Xapian
Xapian — опционально поддерживаемая поисковая библиотека, генерирующая индекс вики-сайта для уменьшения времени поиска.
См. ПомощьПоXapian для информации о Xapian и его настройке.
Макрокоманды TitleSearch и PageList
Макрокоманды `TitleSearch` и `PageList` принимают в качестве выражения поисковые запросы, при этом к каждому элементу запроса неявно добавляется модификатор title:.