Module:String: Difference between revisions
Jump to navigation
Jump to search
en>Anomie (+ substr variant that takes a length instead of an ending position) |
en>Anomie (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 01:50, 21 February 2013
You might want to create a documentation page for this module.
Editors can experiment in this module's sandbox and testcases pages.
Please add categories to the /doc subpage. Subpages of this module.
Editors can experiment in this module's sandbox and testcases pages.
Please add categories to the /doc subpage. Subpages of this module.
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