コンテンツにスキップ

サブアカウントについて

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

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

提供: MARV Wiki
2026年4月22日 (水) 05:36時点におけるKorobka (トーク | 投稿記録)による版 (ページの作成:「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…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

このモジュールについての説明文ページを モジュール:法人番号検査/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