置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:Sandbox/Func/化学方程式

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [创建] [刷新]
local p = {}

function trim(s)
	return (string.gsub(s,"^%s*(.-)%s*$","%1"));
end

-- 参考 模块:长标题
local function len(a)
	local rlt = 0;
	a=string.gsub(trim(a),"<.->","")
	a=string.gsub(trim(a),"\127'\"`UNIQ%-%-templatestyles%-%x+%-QINU`\"'\127","")
	for i = 1, mw.ustring.len(a) do
		local char = mw.ustring.sub(a, i, i);
		local charnum = mw.ustring.byte(char);
		if (charnum > 33 and charnum < 126) 
				or char == '{'
				or char == '}'
				or char == ' ' then
			rlt = rlt + 0.5;
		elseif char == '\n'
				or char == '\t' then
			-- do nothing
		else
			rlt = rlt + 1;
		end
	end
	return rlt;
end

p['len'] = function(frame)
    local str = frame.args[1]
    return len(str)
end

return p