top of page
ティーマネジメント株式会社 Tmanagement
TM_ロゴ_決定分_ol2.png

FileMakerで正規表現を使う 2/2

  • 田中
  • 2024年7月4日
  • 読了時間: 2分
ree

こんにちは。ティーマネジメントの田中です。


こちらは前回記事の続きとなります。

前回記事でご紹介した、正規表現をFileMakerで扱う方法について紹介します。



FileMakerで正規表現を使用する

FileMaker Pro 2023時点では、正規表現を利用できる関数は実装されていません。

代わりに、WebViewer機能と、JavaScriptを用いて計算を行います。



住所から都道府県を抜き出す 準備

FileMaker Pro側で、抜き出すための準備を行います。

1. レイアウト上にWebビューアを配置する

2. 住所が入っているテキストフィールドを用意する

3. 結果を格納するフィールドを用意する

ree

Webビューアのアドレス部分は空欄にしておきます。

ree

では、スクリプトを記述していきます。

スクリプトでは次のことを行います。

1.       JavaScript関数を作成する

2.       Webビューアで関数を実行させる


ree

JavaScriptで正規表現に一致する結果を受け取るには、matchメソッドを使用します。

ree

「テキストを挿入」スクリプトステップでJavaScript関数を作成します。

下記のテキストを、変数「$function」に代入します。

(function (text){

 const regex = ".{2,3}[都道府県]";
 FileMaker.PerformScript("結果の格納" , text.match(regex) );

})

「text」は、関数の引数です。

「regex」が今回、都道府県名の一致に使用する正規表現になります。

「任意の2~3文字の後に、[都道府県]のいずれか1文字が続く」場合に一致します。

「FileMaker.PerformScript」は、「結果の格納」というFileMakerのスクリプトを、

textからregexにマッチした文字を引数として実行する、ということになります。


「結果の格納」というFileMakerスクリプトは、JavaScriptから呼び出されますので、

次のように設定します。

ree

フィールド設定の1ステップのみで問題ありません。


WebビューアでJavaScriptを実行 ステップでは、次のようにオプションを設定します。

ree

オブジェクト名にはWebビューアのオブジェクト名を指定します。

関数名は先ほど作成した変数$function、

引数には元のテキストを指定します。今回は元のテキストには住所が入っています。



住所から都道府県を抜き出す 実行
ree

元のテキストにはサンプルとして、住所を記載しました。

スクリプトを実行して結果を確認してみます。


実行↓

ree

テキストから都道府県名だけ抜き出されています。


次に、都道府県名を複数入れてテストをしてみます。

ree

実行↓

ree

最初に一致した、「東京都」が抜き出されています。

matchメソッドでは最初に一致したものが返されます。



まとめ

正規表現を知ると、1つの記述で様々な文字列と一致させることができるため、

スクリプトで行えることの幅が広がります。

私もまだまだ学習中ですが、何かやりたい処理のヒントになれば幸いです。 前の記事へ  → FileMakerで正規表現を使う 1/2

CONTACT

お問い合わせ

滋賀県大津市別保三丁目11番32号

077-536-6330

平日10:00~18:00

労働者派遣事業 派 25-300477

有料職業紹介事業  25-ユ-300214 

問い合わせのご用件 必須項目

送信ありがとうございました

Copyright © ティーマネジメント株式会社 All Rights Reserved.

bottom of page