Html タグのパラメータの値を取り出す、よく使うサブルーチンライブラリ
エクセルでサイト管理を行おうとすると、案外避けて通れないのがHTMLタグの解析。
C言語、Perl,PHPでは、解析ライブラリを作ってあるんですがVBAはさすがに面倒で完全な分解サブルーチンは、まだ書いていなかったんですが、やっぱり最低限 html タグのパラメータの値は取り出さないといけない場面が多くなり、その部分だけは書きました。
HTMLタグのパラメータの値を取り出す
書式 Function Get_TagPara(iBuff, TagPara)
‘iBuff:Html タグの入った文字列
‘TagPara:取り出したいパラメータ
‘TagPara:取り出したいパラメータ
使用例、
Dim Buff
Buff = "<img src=""http://abc.com/img.gif"">"
Dim Valu
Valu = HtmlSub.Get_TagPara(buff,"src")
結果、
http://abc.com/img.gif
HTMLタグの指定したタグのパラメータの値を取り出す
書式 Function Get_sTagPara(iBuff, TarTag, TagPara)
‘iBuff:Html タグの入った文字列
‘TarTag:取り出したいタグ
‘TagPara:取り出したいパラメータ
‘TarTag:取り出したいタグ
‘TagPara:取り出したいパラメータ
使用例、
Dim Buff
Buff = "<a href="http://abc.com/"><img src=""http://abc.com/img.gif""><img src=""http://abc.com/image.gif""></a>"
Dim Valu
Valu = HtmlSub.Get_TagPara(buff,"<img","src")
Msgbox(Valu)
Valu = HtmlSub.Get_TagPara(buff,"<a","href")
Msgbox(Valu)
結果、
http://abc.com/img.gif
http://abc.com/
ダブル/シングルクォート内の文字列は無視した文字列検索
書式 Function eTag(iBuff, eTrg)
‘iBuff:文字列
‘eTag:検索文字列
‘eTag:検索文字列
使用例、
Dim Buff
Buff = "<a href="http://abc.com/"> / <img src=""http://abc.com/img.gif""> / </a>"
Dim p
p = HtmlSub.eTag(buff,"/")
MsgBox(Mid(buff,p))
結果、
/ <img src=””http://abc.com/img.gif””> / </a>