LoginSignup
3
3

More than 5 years have passed since last update.

【FileMaker】テキスト内を検索して、マーキングする

Last updated at Posted at 2017-04-28

簡単にいうと、テキスト内を検索して、マッチする単語があったらマーキングします。

まずは、動きをどうぞ。
https://youtu.be/bxEZSKODLOE

音声はないので、念のため、画像でも。

テキストデータに"PatternCount"という文字列がない場合は、「ない」とダイアログが出ます。
qiita_patterncount1.png

テキストデータに"PatternCount"という文字列がある場合は、個数をダイアログで表示し、「結果テキスト」フィールドにマッチする単語をマーキングして表示します。
qiita_patterncount2.png

大雑把な実装方法は、
・PatternCount関数を使って検索
・TextStyleAdd関数で、該当のテキストをマーキング
の2つです。

まず、フィールドの構成です。
qiita_patterncount3.png

これまた単純に、
・フィールド:テキストデータ
・グローバルフィールド:検索ワード、結果テキスト
のみです。
グローバルフィールドの「検索ワード」は、検索するために使うので一つでいいかなと思いグローバルフィールドにしていますが、固有の検索ワードの結果を保存しておきたいのでしたら、「検索ワード」「結果テキスト」共に通常のフィールドにしてもいいかと思います。

例えば、検索結果を後で活用するために検索ワードに関したレコードのみを引っ張ってきたい、などですかね。
別言語ですが、以前関わった遺伝子データ活用のシステム開発で、特定の遺伝情報を検索したらヒットしたデータのみをピックアップしてどうのこうの、、、というのがありました。
昔FileMakerを使っていたら是非とも提案したいところでした。

「検索」ボタンのスクリプトを見てみましょう。
qiita_patterncount4.png

大事なところは、最後のTextStyleAddです。
qiita_patterncount5.png

TextStyleAddは、文字の修飾をしてくれる関数なので、例えばアンダーラインを引きたい、太字にしたい、などを施してくれます。
しかも、複数指定できます。

例えば、下線をプラスしたい場合。
qiita_patterncount6.png
「+」で繋ぐだけです。

強調表示+下線で、以下のような結果になります。
qiita_patterncount7.png
アンダーライン、つきましたね。

ちなみに、「全部盛り」というのがあります。
qiita_patterncount8.png

こう出ます。
qiita_patterncount9.png
かっこ悪ぅ。。。

何事もほどほどに、というところでしょうか。
PatternCountとTextStyleAdd、適宜利用してみてくださいね。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3