יחידה:סוגריים: הבדלים בין גרסאות בדף

מתוך צפונות ויקי
(מודול חדש - העתקה ממודול אחר)
 
מ (10 גרסאות של הדף wikipedia:he:יחידה:סוגריים יובאו)
 
(10 גרסאות ביניים של 3 משתמשים אינן מוצגות)
שורה 5: שורה 5:
function p.remove_parents( frame )
function p.remove_parents( frame )
     str = frame.args.string
     str = frame.args.string
     len= mw.ustring.len( str )
     gsub = mw.ustring.gsub
     sub = mw.ustring.sub
   
     if len == 1  
    str=gsub(str, " *[(].*[)]","")
        then return str .. "'"
    return str
     else
   
        return sub ( str,0, len-1).. "\"" .. sub ( str,len)
end
     end
 
function p.only_parents_contents( frame )
     str = frame.args.string
    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.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
end
   
   
return p
return p

גרסה אחרונה מ־12:00, 14 בדצמבר 2020

הקוד ביחידה זו משמש לתבניות הבאות:


local p = {}

require "mw.ustring"

function p.remove_parents( frame )
     str = frame.args.string
     gsub = mw.ustring.gsub
     
     str=gsub(str, " *[(].*[)]","")
     return str
     
end

function p.only_parents_contents( frame )
     str = frame.args.string
     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.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
 
return p