Модуль:Is surname disambiguation

Поделись знанием:
Перейти к: навигация, поиск
 Документация

См. {{is surname disambiguation}}

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

local p = {}

function p.main(frame)
	local getArgs = require('Модуль:Arguments').getArgs
	local args = getArgs(frame)
	if not args[1] then return '' end -- Получить содержимое той страницы, на которой мы находимся, нельзя,
	                                  -- так что в отсутствие параметра использовать название текущей страницы мы не можем.
	local title = mw.title.new(args[1])
	local surnameDisambig = ''
	if title.exists then
		local fullContent = title:getContent()
		surnameDisambig =
			   mw.ustring.match(fullContent, '\{\{[сС]писок однофамильцев')
			or mw.ustring.match(fullContent, '\{\{[сС]писок т[ёе]зок')
			or mw.ustring.match(fullContent, '\{\{[сС]писок полных т[ёе]зок')
			or mw.ustring.match(fullContent, '\{\{[нН]еоднозначность[^}]*однофамильцы')
			or mw.ustring.match(fullContent, '\{\{[нН]еоднозначность[^}]*фамилии')
			or mw.ustring.match(fullContent, '\{\{[мМ]ногозначность[^}]*однофамильцы')
			or mw.ustring.match(fullContent, '\{\{[мМ]ногозначность[^}]*фамилии')
			or mw.ustring.match(fullContent, '\{\{[dD]isambig[^}]*однофамильцы')
			or mw.ustring.match(fullContent, '\{\{[dD]isambig[^}]*фамилии')
	end
	return surnameDisambig
end

return p