Module:Xdnum:修订间差异
无编辑摘要 |
无编辑摘要 |
||
第37行: | 第37行: | ||
local input = args[1] | local input = args[1] | ||
local keya = {"0","1","2","3","4","5","6","7","8","9","T","."} | local keya = {"0","1","2","3","4","5","6","7","8","9","T","."} | ||
local vala = {" | local vala = {"0","1","2","3","4","5","6","7","8","9","T","n"} | ||
local output = numtran(input) | local output = numtran(input) | ||
for ij = #keya,1,-1 do | for ij = #keya,1,-1 do |
2021年9月7日 (二) 17:51的版本
此模块的文档可以在Module:Xdnum/doc创建
local module = {}
local getArgs = require('Module:Arguments').getArgs
function numtran(input1)
local input = string.gsub(string.gsub(input1,"n","."),"T","0")
local output = ""
local bj = 0
local aa = {"0","1","2","3","4","5","6","7","8","9"}
local bb = {"1","2","3","4","5","6","7","8","9"}
local cc = {}
local dd = {}
for ii = #aa,1,-1 do
cc[aa[ii]]=1
end
for ii = #bb,1,-1 do
dd[bb[ii]]=1
end
for i = 1,string.len(input) do
if (cc[string.sub(input,i,i)]==nil) then
bj = 2
end
if (bj==0 and dd[string.sub(input,i,i)]==1) then
bj = 1
end
if (bj==1 and string.sub(input,i,i)=="0") then
output = output.."T"
else
output = output..string.sub(input,i,i)
end
end
mw.log(output)
return output
end
function module.tran(frame)
local args = getArgs(frame)
local input = args[1]
local keya = {"0","1","2","3","4","5","6","7","8","9","T","."}
local vala = {"0","1","2","3","4","5","6","7","8","9","T","n"}
local output = numtran(input)
for ij = #keya,1,-1 do
output = string.gsub(output, keya[ij], vala[ij])
end
return output
end
return module