特定の文字列と一致する・特定の文字列を含む等の条件で処理を分岐させたい

【質問】
特定の文字である/ないことを条件としたい場合の対応について教えてください。
例1: 「オートメイト」に完全一致する文字列
例2: 「トメ」を含む文字列
例3: 「オート」で始まる文字列
等、文字列の完全一致・部分一致で真・偽を判定する方法が知りたいです。

【回答】
文字列の完全一致の場合は「IF - 条件式」、部分一致の場合は「IF - テキスト」で比較が可能です。
・例1:「オートメイト」に完全一致する文字列
「IF - 条件式」アクションを使用します。

サンプルコード

<AMVARIABLE NAME="var_Text1" VALUE="オートメイト" />
<AMVARIABLE NAME="var_Text2" VALUE="オート メイト" />
<!--固定文字列と一致しているかのチェック 一致していればIFブロックを通る-->
<AMIF EXPRESSION="%var_Text1% = &quot;オートメイト&quot;" />
<AMSHOWDIALOG MESSAGE="一致しています" />
<AMIF ACTIVITY="end" />
<!--変数同士の比較 一致していなければIFブロックを通る-->
<AMIF EXPRESSION="%var_Text1% &lt;&gt; %var_Text2%" />
<AMSHOWDIALOG>両変数は一致していません

var_Text1:%var_Text1%
var_Text2:%var_Text2%</AMSHOWDIALOG>
<AMIF ACTIVITY="end" />

・例2: 「オート」を含む文字列
および
・例3: 「オート」で始まる文字列
「IF - テキスト」アクションを使用します。

サンプルコード

<AMVARIABLE NAME="var_Text1" VALUE="オートメイト" />
<AMVARIABLE NAME="var_Text2" VALUE="オウト" />
<!--固定文字列と含むか否かの判定 含んでいればIFブロックを通る-->
<AMIF ACTIVITY="contains_text" TEXT="%var_Text1%" SUBSTRING="トメ" />
<AMSHOWDIALOG MESSAGE="この変数は文字列「トメ」を含んでいます。" />
<AMIF ACTIVITY="end" />
<!--変数1が変数2で始まるか否かの比較-->
<AMIF ACTIVITY="contains_text" TEXT="%var_Text1%" SUBSTRING="%var_Text2%" ACTION="start_with" />
<AMSHOWDIALOG>var_Text1はvar_Text2の内容「%var_Text2%」で始まっています。
var_Text1:%var_Text1%
var_Text2:%var_Text2%</AMSHOWDIALOG>
<AMELSE />
<AMSHOWDIALOG>var_Text1はvar_Text2の内容「%var_Text2%」で始まっていません。
var_Text1:%var_Text1%
var_Text2:%var_Text2%</AMSHOWDIALOG>
<AMIF ACTIVITY="end" />

 

検索用キーワード:IF,文字列比較,分岐,判定,判断

Knowledge記事検索

Knowledge

News・Information