Difference between revisions of "Module:String"
From Timelines
(+ substr variant that takes a length instead of an ending position) |
(Oh, the existing code is 0-based) |
||
Line 10: | Line 10: | ||
function str.sublength( frame ) | function str.sublength( frame ) | ||
− | local i = tonumber( frame.args.i ) or | + | local i = tonumber( frame.args.i ) or 0 |
local len = tonumber( frame.args.len ) | local len = tonumber( frame.args.len ) | ||
− | return mw.ustring.sub( frame.args.s, i, len and ( i + len | + | return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) ) |
end | end | ||
Revision as of 17:50, 20 February 2013
Documentation for this module may be created at Module:String/doc
local str = {} function str.len( frame ) return mw.ustring.len( frame.args.s ) end function str.sub( frame ) return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) ) end function str.sublength( frame ) local i = tonumber( frame.args.i ) or 0 local len = tonumber( frame.args.len ) return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) ) end function str.match( frame ) return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) ) end return str