Resources

| FileMaker事情 | Tips | 記事 | 製品レビュー | 書評 | つれづれ日記 | Download |


[Tips] 2006/11/22

Tips対決Web版!
HTMLソースからタグを抜く方法

茂田 カツノリ
text by Katsunori Shigeta
FileMakerは複雑なテキスト処理が容易にできるので、HTMLの生成や変換に使っている人も多いだろう。その中で、HTMLのソースからタグを抜いてテキストを抽出する方法について、ご紹介しよう。

●無料のプラグインを使う方法

バージョン6までなら、Jazz-Utilsという無料のプラグインがあり、これの「Jazz-Strip HTML」という関数で実現ができた。

・Jazz-Utils
http://www.jazzmedia.com.au/jazzutils.html

このプラグインは7以降のFileMakerでも使えるが、Mac版では上記ページにもあるようにプラグインのファイル名を変更する必要があるので気をつけよう。また、過去の製品なのでUniversal Binary化はされていないから、8.5+intel macではRosettaモードで使う必要があり、現実的ではない。

●カスタム関数を使う方法

バージョン7以降なら、カスタム関数を使って実現可能だから、こちらを利用すべきだ。カスタム関数は下記で入手できる。

・Brian Dunningさんのページ
http://www.briandunning.com/filemaker-custom-functions/

ここで「HTML」と検索すると登場する「HTMLtoText ( text ; returns )」という関数で、テキスト抽出が実現する。このカスタム関数を動作させるには、

HTMLtoText_convertStyle ( text )
HTMLtoText_deleteTags ( text )

の2つのカスタム関数が必要なので、まずこれらを登録した後に、最後に「HTMLtoText ( text ; returns )」を登録しよう。

HTMLtoText ( text ; returns )」の使い方はとても簡単で、最初の引数「text」部にHTMLソースが入るフィールドを指定し、「returns」は改行1つなら"single"、2つ付けたいなら"double"とするだけだ。

結果のテキストは、HTMLコードの内容に応じたスタイルが付いてて便利。もしスタイルが不要なら、
TextFormatRemove(HTMLtoText ( HTML ; "single" )) ...Ver.8以降
Evaluate(Quote(HTMLtoText ( HTML ; "single" ))) ...Ver.7
という式にすればよい。

Copyright © 2004-2010sevensdoor.com. All rights reserved.