Module:Str2code
此模块的文档可以在Module:Str2code/doc创建
local p = {}
local getArgs = require('Module:Arguments').getArgs
function p.str2code(strin) --转换字符到unicode码位,仅支持第一平面字符
if(math.modf(string.byte(strin,1)/16)==14)then
return (string.byte(strin,1)-224)*4096+(string.byte(strin,2)-128)*64+(string.byte(strin,3)-128)
elseif(math.modf(string.byte(strin,1)/32)==6)then
return (string.byte(strin,1)-192)*64+(string.byte(strin,2)-128)
else
return string.byte(strin,1)
end
end
function p.string2code(frame) --输出为十进制,可用于后续计算
local args = getArgs(frame)
local text = args[1]
return string.format("%d",p.str2code(text))
end
function p.string2xcode(frame) --输出为十六进制
local args = getArgs(frame)
local text = args[1]
return string.format("%x",p.str2code(text))
end
return p