Difference between revisions of "Module:String"
		
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
		
		
		
		
		
		
	
imported>Tim Starling  (have sub return more than one character (broken by ID 538979768))  | 
				imported>Anomie   (+ substr variant that takes a length instead of an ending position)  | 
				||
| Line 7: | Line 7: | ||
function str.sub( frame )  | function str.sub( frame )  | ||
     return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )  |      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 1  | ||
| + |     local len = tonumber( frame.args.len )  | ||
| + |     return mw.ustring.sub( frame.args.s, i, len and ( i + len - 1 ) )  | ||
end  | end  | ||
Revision as of 02:49, 21 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 1
    local len = tonumber( frame.args.len )
    return mw.ustring.sub( frame.args.s, i, len and ( i + len - 1 ) )
end
function str.match( frame )
    return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
return str