"Module:Plain text" के अवतरणों में अंतर

मुक्त ज्ञानकोश विकिपीडिया से
नेविगेशन पर जाएँ खोज पर जाएँ
imported>Jayprakash12345
(नया पृष्ठ: --converts text with wikilinks to plain text, e.g "gah is bar" to "gah is bar" --removes anything enclosed in tags that isn't nested, mediawiki strip marker...)
 
छो (१ अवतरण आयात किया गया)
 
(एक अन्य सदस्य द्वारा किया गया बीच का एक अवतरण नहीं दर्शाया गया)
पंक्ति ५: पंक्ति ५:
function p.main(frame)
function p.main(frame)
local text = frame.args[1]
local text = frame.args[1]
return p._main(text)
local encode = require('Module:yesno')(frame.args.encode)
return p._main(text, encode)
end
end


function p._main(text)
function p._main(text, encode)
if not text then return end
if not text then return end
text = mw.text.killMarkers(text)
text = mw.text.killMarkers(text)
:gsub('<span class="nowrap">(.+)</span>', '%1') --remove nowrap while keeping text inside
:gsub('&nbsp;', ' ') --replace nbsp spaces with regular spaces
:gsub('<br ?/?>', ', ') --replace br with commas
:gsub('<br ?/?>', ', ') --replace br with commas
:gsub('<.->.-<.->', '') --strip out tags
:gsub('<span.->(.-)</span>', '%1') --remove spans while keeping text inside
:gsub('%[%[%s*[Ff]ile%s*:.-%]%]', '') --strip out files
:gsub('<i.->(.-)</i>', '%1') --remove italics while keeping text inside
:gsub('%[%[%s*[Ii]mage%s*:.-%]%]', '') --strip out use of image:
:gsub('<b.->(.-)</b>', '%1') --remove bold while keeping text inside
:gsub('%[%[%s*[Cc]ategory%s*:.-%]%]', '') --strip out categories
:gsub('<em.->(.-)</em>', '%1') --remove emphasis while keeping text inside
:gsub('<strong.->(.-)</strong>', '%1') --remove strong while keeping text inside
:gsub('<.->.-<.->', '') --strip out remaining tags and the text inside
:gsub('<.->', '') --remove any other tag markup
:gsub('%[%[%s*[Ff][Ii][Ll][Ee]%s*:.-%]%]', '') --strip out files
:gsub('%[%[%s*[Ii][Mm][Aa][Gg][Ee]%s*:.-%]%]', '') --strip out use of image:
:gsub('%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:.-%]%]', '') --strip out categories
:gsub('%[%[[^%]]-|', '') --strip out piped link text
:gsub('%[%[[^%]]-|', '') --strip out piped link text
:gsub('([^%[])%[[^%[%]][^%]]-%s', '%1') --strip out external link text
:gsub('^%[[^%[%]][^%]]-%s', '') --strip out external link text
:gsub('[%[%]]', '') --then strip out remaining [ and ]
:gsub('[%[%]]', '') --then strip out remaining [ and ]
:gsub("'''''", "") --strip out bold italic markup
:gsub("'''''", "") --strip out bold italic markup
:gsub("'''?", "") --not stripping out '''' gives correct output for bolded text in quotes
:gsub("'''?", "") --not stripping out '''' gives correct output for bolded text in quotes
return text
:gsub('----+', '') --remove ---- lines
:gsub("^%s+", "") --strip leading
:gsub("%s+$", "") --and trailing spaces
:gsub("%s+", " ") --strip redundant spaces
if encode then
return mw.text.encode(text)
else
return text
end
end
end


return p
return p

०६:०९, २० जून २०२२ के समय का अवतरण

"इस मॉड्यूल हेतु प्रलेख Module:Plain text/doc पर बनाया जा सकता है"

--converts text with wikilinks to plain text, e.g "[[foo|gah]] is [[bar]]" to "gah is bar"
--removes anything enclosed in tags that isn't nested, mediawiki strip markers (references etc), files, italic and bold markup
local p = {}

function p.main(frame)
	local text = frame.args[1]
	local encode = require('Module:yesno')(frame.args.encode)
	return p._main(text, encode)
end

function p._main(text, encode)
	if not text then return end
	text = mw.text.killMarkers(text)
		:gsub('&nbsp;', ' ') --replace nbsp spaces with regular spaces
		:gsub('<br ?/?>', ', ') --replace br with commas
		:gsub('<span.->(.-)</span>', '%1') --remove spans while keeping text inside
		:gsub('<i.->(.-)</i>', '%1') --remove italics while keeping text inside
		:gsub('<b.->(.-)</b>', '%1') --remove bold while keeping text inside
		:gsub('<em.->(.-)</em>', '%1') --remove emphasis while keeping text inside
		:gsub('<strong.->(.-)</strong>', '%1') --remove strong while keeping text inside
		:gsub('<.->.-<.->', '') --strip out remaining tags and the text inside
		:gsub('<.->', '') --remove any other tag markup
		:gsub('%[%[%s*[Ff][Ii][Ll][Ee]%s*:.-%]%]', '') --strip out files
		:gsub('%[%[%s*[Ii][Mm][Aa][Gg][Ee]%s*:.-%]%]', '') --strip out use of image:
		:gsub('%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:.-%]%]', '') --strip out categories
		:gsub('%[%[[^%]]-|', '') --strip out piped link text
		:gsub('([^%[])%[[^%[%]][^%]]-%s', '%1') --strip out external link text
		:gsub('^%[[^%[%]][^%]]-%s', '') --strip out external link text
		:gsub('[%[%]]', '') --then strip out remaining [ and ]
		:gsub("'''''", "") --strip out bold italic markup
		:gsub("'''?", "") --not stripping out '''' gives correct output for bolded text in quotes
		:gsub('----+', '') --remove ---- lines
		:gsub("^%s+", "") --strip leading
		:gsub("%s+$", "") --and trailing spaces
		:gsub("%s+", " ") --strip redundant spaces
	if encode then
		return mw.text.encode(text)
	else
		return text
	end
end

return p