Шаблон:Поиск страны
Шаблон извлекает из строки название страны в каком-угодно падеже и возвращает название в любом падеже, по умолчанию в именительном. Возвращает ничего, если нет совпадений.
Обратите внимание, что страна в строке должна быть правильно написана с большой буквы. «Индия» будет найдена, но «индия» или «ИНДИЯ» будут проигнорированы.
Список стран жестко закодирован в списке в Модуль:Find country/countries.json, основанном на списке государств. Официальные и общеизвестные написания заполнены и распознаются полностью, аббревиатуры и альтернативные написания распознаются выборочно, также находятся владения, некоторые субнациональные, владения, некоторые исторические страны.
Организация списка стран
Поиск стран в списке происходит сверху вниз. Поэтому важна очередность размещения стран в списке — длинные названия стран должны следовать перед короткими. Поэтому, и в том числе для удобства навигации, написания объединены в условные группы. Официальные названия стран (длинные) намеренно размещены первыми, а последней группой являются «Неоднозначности». Группировка позволяет поддерживать корректное обнаружение каждого из написаний, но в отдельных случаях внутри групп, ради корректного срабатывания поиска, длинные написания схожих стран размещены перед короткими, нарушая алфавитную сортировку.
Очерёдность групп:
- «Официальные названия стран»,
- «Аббревиатуры стран»,
- «Алиасы стран»,
- «Субнациональные территории»,
- «Владения»,
- «Алиасы владений»,
- «Надгосударственные регионы»,
- «Исторические страны»,
- «Обычные названия стран»,
- «Неоднозначности»
Использование
Обычное использование
{{Поиск страны|текст}}
Подобное использование возвращает из строки «текст» первое по очередности совпадение с правильным написанием страны из таблицы стран.
Если совпадения не найдено, возвращается пустая строка. Это позволяет просто использовать его в шаблонах, например
{{#if:{{Поиск страны}}|<!-- ничего не делать, если есть совпадение -->|Эта строка не содержит страну}}
Необязательные параметры
Один параметр является обязательным, три других параметра необязательны:
|case = падеж
- Возвращает название обнаруженной страны в запрашиваемом падеже. Падежи указываются русскоязычным строчным написанием. Дополнительный вариант «предлог» отображает написание страны в предложном падеже с предлогом «в/во/на»:
| Значение case | Пример заполнения | Результат |
|---|---|---|
{{Поиск страны|На Кипре был ясный день}}
|
Кипр | |
| именительный | {{Поиск страны|На Кипре был ясный день|case=именительный}}
|
Кипр |
| родительный | {{Поиск страны|На Кипре был ясный день|case=родительный}}
|
Кипра |
| дательный | {{Поиск страны|На Кипре был ясный день|case=дательный}}
|
Кипру |
| винительный | {{Поиск страны|На Кипре был ясный день|case=винительный}}
|
Кипр |
| творительный | {{Поиск страны|На Кипре был ясный день|case=творительный}}
|
Кипром |
| предложный | {{Поиск страны|На Кипр пришёл ясный день|case=предложный}}
|
Кипре |
| предлог | {{Поиск страны|На Кипр пришёл ясный день|case=предлог}}
|
на Кипре |
|string = значение
- Обработка заданной строки, вместо обработки названия текущей страницы (по-умолчанию)
|nomatch = значение
- Задаёт сообщение, которое будет выдаваться, если страна не найдена. Например
- С nomatch:
{{Поиск страны|Строка текста без упоминания стран|nomatch=Нет страны!}}→ Нет страны!
- С nomatch:
|match = число
- По умолчанию:
{{Поиск страны|Строка текста без упоминания стран}}→
- По умолчанию:
- Если в строке находятся несколько названий стран, то этот параметр регулирует какое по счёту совпадение возвращать. Первое совпадение слева возвращается через
match=1, второеmatch=2и т. д. Отсчёт совпадений справа указывается через отрицательное число. То естьmatch=-1означает выдачу последнего найденного в строке,match=-2— предпоследнего и т. д. По умолчанию значение равно 1.{{Поиск страны|События в Египте, Индии и Пакистане (и, возможно, Шри-Ланке) |match = 2}}→ Индия{{Поиск страны|События в Египте, Индии и Пакистане (и, возможно, Шри-Ланке) |match = -2}}→ Пакистан
TemplateData
Извлекает название страны из строки.
| Параметр | Описание | Тип | Статус | |
|---|---|---|---|---|
| Строка текста | string | Строка для поиска страны. Если оставить пустым, шаблон вернет пустое значение, тогда как сам модуль будет использовать название страницы | Строковый (без форматирования) | необязательный |
| Падеж результата | case | Указание падежа, в каком нужно получить название страны.
| Однострочный | необязательный |
| Номер совпадения | match | Если найдено несколько стран, это указывает, какое совпадение возвращать, где первое совпадение: match=1. Если указано отрицательное число, то возвращается совпадение, считая с последнего совпадения. Таким образом, match = -1 - это то же самое, что и запрос последнего совпадения. По умолчанию равно 1.
| Число | необязательный |
| Текст несовпадения | nomatch | Если не найдено ни одной страны, выводится значение «nomatch». По умолчанию пустое. | Строковый (без форматирования) | необязательный |
См. также
- {{Страна из заголовка}} — обёртка для этого шаблона с помощью PAGENAME
- {{Страна в родительном падеже}} — перевод написания страны из именительного падежа в родительный
- {{В стране}} — перевод написания страны из именительного падежа в предложный с предлогами