モジュール:Str endswith
ナビゲーションに移動
検索に移動
![]() | このLuaモジュールは10,000以上のページで使われています。 余計な混乱やサーバーへの負荷を避けるために、どんな変更でも最初はモジュールのサンドボックス・サブページ、テストケース・サブページで試すべきです。そうすれば、試した変更を1度の編集でこのモジュールに加えることができます。しかし、最初にあなたの提案した変更を、この項目のノートで議論するようにお願いします。 |
このモジュールは{{Str endswith}}を実装しています。詳しくはテンプレートの解説ページをご参照ください。
この解説は、モジュール:Str endswith/docから呼び出されています。 (編集 | 履歴) 編集者は、このモジュールをサンドボックス (作成 | 複製)とテストケース (作成)で試すことができます。(解説) このモジュールのサブページ一覧。 |
-- This module implements {{str endswith}}.
local TRUE_STRING = 'yes'
local FALSE_STRING = ''
local p = {}
local function trim(s)
return s:match('^%s*(.-)%s*$')
end
function p.main(frame)
local args = frame:getParent().args
local s = args[1]
local pattern = args[2]
if not s or not pattern then
-- TRUE_STRING is not the natural choice here, but is needed for
-- backwards compatibility.
return TRUE_STRING
end
s = trim(s)
pattern = trim(pattern)
if pattern == '' then
-- All strings end with the empty string.
return TRUE_STRING
end
if mw.ustring.sub(s, 0 - mw.ustring.len(pattern), -1) == pattern then
return TRUE_STRING
else
return FALSE_STRING
end
end
return p