אונטערשייד צווישן ווערסיעס פון "יחידה:קלאמערן"
קפיצה לניווט
קפיצה לחיפוש
(אפדעיט) |
(אפדעיט) |
||
שורה 2: | שורה 2: | ||
require "mw.ustring" | require "mw.ustring" | ||
function p.remove_parents_internal( str ) | |||
gsub = mw.ustring.gsub | |||
str=gsub(str, " *[(].*[)]","") | |||
return str | |||
end | |||
function p.remove_parents( frame ) | function p.remove_parents( frame ) | ||
str = frame.args.string | |||
return p.remove_parents_internal(str) | |||
end | |||
function p.only_parents_contents_internal( str ) | |||
match = mw.ustring.match | |||
gsub = mw.ustring.gsub | |||
str=p.remove_sq_parents_internal(str) | |||
str=match(str, "%b()$") -- a(b) ==> (b) or nil | |||
if (str == nil) then return "" end | |||
str=gsub(str,"^%((.*)%)$", "%1") -- (b) ==> b | |||
return str | |||
end | end | ||
function p.only_parents_contents( frame ) | function p.only_parents_contents( frame ) | ||
str = frame.args.string | |||
return p.only_parents_contents_internal(str) | |||
end | end | ||
function p.remove_sq_parents_internal( str ) | function p.remove_sq_parents_internal( str ) | ||
gsub = mw.ustring.gsub | |||
str=gsub(str, "^%[%[(.*)%|.*%]%]$","%1") -- [[x|y]] ==> x | |||
str=gsub(str, "^%[%[(.*)%]%]$","%1") -- [[x]] ==> x | |||
return str | |||
end | end | ||
function p.remove_sq_parents( frame ) | function p.remove_sq_parents( frame ) | ||
str = frame.args.string | |||
return p.remove_sq_parents_internal(str) | |||
end | end | ||
שורה 51: | שורה 50: | ||
local y = gsub(str, "^%[%[.*|(.*)%]%]$", "%1") -- [[x|y]] ==> y | local y = gsub(str, "^%[%[.*|(.*)%]%]$", "%1") -- [[x|y]] ==> y | ||
if y ~= str then | if y ~= str then | ||
return y | |||
end | end | ||
שורה 57: | שורה 56: | ||
return x | return x | ||
end | end | ||
function p.remove_linker( frame ) | |||
str = frame.args.string | |||
return p.remove_linker_internal(str) | |||
end | |||
return p | return p |
רעוויזיע פון 05:55, 28 אויגוסט 2023
הקוד ביחידה זו משמש לתבניות הבאות:
- {{אן קלאמערן}}
- {{בלי סוגריים מרובעים}}
- {{מה שבסוגריים}}
- {{בלי קישור פנימי}}
local p = {}
require "mw.ustring"
function p.remove_parents_internal( str )
gsub = mw.ustring.gsub
str=gsub(str, " *[(].*[)]","")
return str
end
function p.remove_parents( frame )
str = frame.args.string
return p.remove_parents_internal(str)
end
function p.only_parents_contents_internal( str )
match = mw.ustring.match
gsub = mw.ustring.gsub
str=p.remove_sq_parents_internal(str)
str=match(str, "%b()$") -- a(b) ==> (b) or nil
if (str == nil) then return "" end
str=gsub(str,"^%((.*)%)$", "%1") -- (b) ==> b
return str
end
function p.only_parents_contents( frame )
str = frame.args.string
return p.only_parents_contents_internal(str)
end
function p.remove_sq_parents_internal( str )
gsub = mw.ustring.gsub
str=gsub(str, "^%[%[(.*)%|.*%]%]$","%1") -- [[x|y]] ==> x
str=gsub(str, "^%[%[(.*)%]%]$","%1") -- [[x]] ==> x
return str
end
function p.remove_sq_parents( frame )
str = frame.args.string
return p.remove_sq_parents_internal(str)
end
function p.remove_linker_internal( str )
gsub = mw.ustring.gsub
local y = gsub(str, "^%[%[.*|(.*)%]%]$", "%1") -- [[x|y]] ==> y
if y ~= str then
return y
end
local x = gsub(str, "^%[%[(.*)%]%]$", "%1") -- [[x]] ==> x
return x
end
function p.remove_linker( frame )
str = frame.args.string
return p.remove_linker_internal(str)
end
return p