<SiteTitle>初音ミクWiki</SiteTitle>
<SiteSearchURL>[TITLE] site:www5.atwiki.jp/hmiku/</SiteSearchURL>
<LuaScript>
function LyricsInfoGet(html)
--歌詞を取り出す
is1, ie1 = html:find("<h3 id=\"id_%w+\">.-歌詞.-</h3>",1)
--無いときは抜ける
if is1 == nil then
return
end
is2, ie2 = html:find("<h3", ie1+1, 1)
lyrics = html:sub(ie1+1, is2-1)
--転載注釈を外す
is1, ie1, kakko = lyrics:find("(%b())")
if is1 == nil then is1,ie1,kakko = lyrics:find("((.-))") end
if is1 ~= nil then
if kakko:find("転載") or kakko:find("動画") or kakko:find("ブログ") then
lyrics = lyrics:sub(1, is1-1) .. lyrics:sub(ie1+1, -1)
end
end
--HTMLテキストのdiv,改行,ルビを消す
--\n\n</div>は改行とする
lyrics = lyrics:gsub("\n\n</div>", "<br />")
lyrics = lyrics:gsub("<div>", "")
lyrics = lyrics:gsub("</div>", "")
lyrics = lyrics:gsub("\n", "")
lyrics = lyrics:gsub("<rt>.-</rt>", "")
lyrics = lyrics:gsub("<rp>.-</rp>", "")
lyrics = lyrics:gsub("<rb>", "")
lyrics = lyrics:gsub("</rb>", "")
lyrics = lyrics:gsub("<ruby>", "")
lyrics = lyrics:gsub("</ruby>", "")
--<br />を改行にする
lyrics = lyrics:gsub("<br />", "\r\n")
--行頭と行末の改行を削除
while lyrics:sub(1,2) == "\r\n" do lyrics = lyrics:sub(3) end
while lyrics:sub(-2) == "\r\n" do lyrics = lyrics:sub(1,-3) end
--タイトルを取り出す
title = html:match("<h2>.-<a .->(.-)</a>.-</h2>")
--アーティスト名を取り出す
artist = html:match("</h2>.-作曲.-<a.->(.-)</a>.-<h3")
return "LYRICS="..lyrics, "TITLE="..title, "ARTIST="..artist
end
</LuaScript>
最終更新:2011年08月28日 23:22