コンテンツにスキップ

サブアカウントについて

サブアカウントを使用する場合は双方の個人用ページにサブアカウントのIDを必ず記入してください

モジュール:法人番号検査

提供: MARV Wiki

このモジュールについての説明文ページを モジュール:法人番号検査/doc に作成できます

require('strict')
local p = {}

function p.check(id)
	--[[
	-- 法人番号の検査を行う
	-- 文字列idが法人番号として有効であればtrueを、
	-- そうでなければfalseを返す
	]]--
	id = id:match('^%s*([1-9]%d%d%d%d%d%d%d%d%d%d%d%d)%s*$')
	if not id then return false end

	local work = 0
	for i = 1, 13 do
		work = work + tonumber(id:sub(i, i)) * (2 - i % 2)
	end
	
	return work % 9 == 0
end

function p.main(frame)
	return p.check(frame.args[1] or '') and '' or 'error'
end

return p