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

מתוך צפונות ויקי
מאין תקציר עריכה
מ (תיקונים)
שורה 15: שורה 15:
     str = frame.args.string
     str = frame.args.string
     match = mw.ustring.match
     match = mw.ustring.match
    gsub = mw.ustring.gsub
      
      
     o=match(str, "%((.-)%)$") -- a(b) ==> b or ""
     o=match(str, "%b()$") -- a(b) ==> (b) or nil
    if (o == nil) then return "" end
 
    o=gsub(o,"^%((.*)%)$", "%1") -- (b) ==> b
     return o
     return o
      
      

גרסה מ־13:10, 25 בספטמבר 2015

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


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
     
     o=match(str, "%b()$") -- a(b) ==> (b) or nil
     if (o == nil) then return "" end

     o=gsub(o,"^%((.*)%)$", "%1") -- (b) ==> b
     return o
     
end

function p.remove_sq_parents( frame )
     str = frame.args.string
     gsub = mw.ustring.gsub
     
     str=gsub(str, "^.*%[%[(.*)%|.*%]%].*$","%1") -- [[x|y]] ==> x
     str=gsub(str, "^.*%[%[(.*)%]%].*$","%1") -- [[x]] ==> x
     return str
     
end
 
return p