【Power Apps】IsMatch関数によるテキスト形式の確認

SharePointListからフォームでアプリを作る場合は入力確認がされますが、フォームでない場合などきちんとした形式で入力されているか確認したい時があるかと思います。その時に便利な関数IsMatch関数をまとめてみます。

IsMatch関数とは

Microsoftのホームページによりますと、以下のように書かれています。
IsMatch 関数は、通常文字、事前定義済みのパターン、または正規表現 が含まれたパターンにテキスト文字列が一致するかどうかをテストします。 Match および MatchAll 関数は、サブマッチを含め、一致したものを返します。

テキストインプットにはいいてるテキストが要望通り入っているか確認することが可能です。

Apps
IsMatch(Text, Pattern [, Options ] )

Text(必須):検証したいテキスト
Pattern(必須): テキスト文字列としてテストするパターン
Option(任意):一部か全部か選択可能。デフォルトはMatchOptions.Complete(完全一致)

戻り値
true:パターンに一致した場合
false:パターンに一致しない場合

パターンは自分で任意のテキストを設定したり、あらかじめ定義されているパターンを使用したり、また正規表現としてあっているか設定することが可能です。

テキストが一致しているか確認する場合

TextInput1というテキスト入力に入っている文字が”Hello World”と入ってほしい場合、入っているか確認する場合は下記のように書きます。

Apps
IsMatch( TextInput1.Text, "Hello world" )

この場合は完全一致しているため、trueが返ってきます。

テキスト入力に”Hello”が入っているか(部分一致)確認する場合は、オプションにContainsを書きます。

Apps
IsMatch(TextInput1.Text,"hello",MatchOptions.Contains)

この場合、大文字と小文字の区別をしているため、”hello”が小文字のためfalseになります。
このままでもhelloが入っていると判定するためには、下記のように記載します。

Apps
IsMatch(TextInput1.Text,"hello",MatchOptions.Contains & MatchOptions.IgnoreCase )

上記のように記載すると大文字小文字の区別なくhelloが入っていると判断されtrueになります。

入力したテキストがEmailアドレスか確認する場合

あらかじめ定義されたパターンを使用して簡単に確認可能です。

Apps
IsMatch(TextInput1.Text,Match.Email)

こちらの定義されたパターンを選択するとわかるのですが、あらかじめ定義された正規表現が設定されています。わざわざ自分で記入しなくてもあらかじめ設定されているもので、Emailアドレスかどうか判定してもらえます。

正規表現によるテキストの確認

テキスト入力に入っているテキストが指示された日付入力のパターンか調べる方法は下記になります。

\dは1桁の数と一致します。(“0″~”9”) {}で桁数を表しています。

正規表現の詳しい説明は下記のMicrosoftのサイトに詳しく載っていますので、各自でお調べください。

参考 Power Apps での IsMatch、Match、および MatchAll 関数Microsoft Learn

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA