Si tratta di codice di prova, senza nessuna garanzia di utilità, correttezza e stabilità. Potrebbe avere side effect non previsti di varia natura, tra i quali uccidere il tuo cane o rianimare i morti dalle loro tombe. Potrebbe contenere tracce di arachidi o altra frutta a guscio. Maneggiare con cautela e riutilizzare a proprio rischio e pericolo.
localp={}functionp.parse(frame)localstr=frame.args.strlocalstr2=frame.args.str2if(str2~=nilandstr2~='')-- two parameters, classical behaviourthenreturnframe:expandTemplate{title='Non firmato',args={str2,str}}end-- one parameter, parse the inputlocali,jlocallen=mw.ustring.len(str)-- string lengthlocalpattern="%s*%d+:%d+, %d+ %a+ %d+\226\128\142*%s*"-- pattern for date in wiki format-- \226\128\142 is unicode representation for U+200E, an invisible char present in chronology after the datei,j=mw.ustring.find(str,pattern)localdate=mw.ustring.sub(str,i,j)-- the datelocalname=mw.ustring.sub(str,j+1,len)-- the rest of the stringreturnframe:expandTemplate{title='Non firmato',args={name,date}}endreturnp