If var [not] in values / If var [not] contains values

提供: AutoHotkey Wiki
移動: 案内検索
コマンド(カテゴリー別) > コマンド(名称順) > If var [not] in values / If var [not] contains values - 公式ドキュメント

実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト

If var [not] in values / If var [not] contains values[編集]

変数の値が列挙したもののうちのどれかと同じである/含むかどうかで分岐。

If Var in MatchList
If Var not in MatchList
If Var contains MatchList
If Var not contains MatchList

Parameters[編集]

引数名 説明
var 変数名
MatchList 候補一覧。
文字列を ,で区切って列挙。
全てが一つの引き数として扱われる。
カンマを表すには、 ,,とカンマを2つ続けて書く。
候補に空文字列を指定したい場合、 ,value1,value2とリストの最初をカンマにする。
カンマの前後の空白は除去されない。

Remarks[編集]

[not] inでは、VarがMatchListのどれかと完全に一致するかどうかで判定する。
[not] containsでは、MatchListの中にVarに完全に含まれる文字列があるかどうかで判定する。

全ての比較は文字列的に一致するかどうかで行われる。
StringCaseSenseで大文字小文字の違いを考慮するかどうかを設定できる。

[重要] 本家の公式版およびAHKLのANSI版では 意図しないマッチング が起きうる可能性があるので注意すること。

Related[編集]

IfEqual/Greater/Less, if var is type, IfInString, StringCaseSense, EnvAdd, Blocks, Else

Example(s)[編集]

If var in exe,bat,com
  MsgBox The file extension is an executable type.
If var in 1,2,3,5,7,11 ; Avoid spaces in list.
  MsgBox, %var% is a small prime number.
If var in %MyItemList%
  MsgBox %var% is in the list.
InputBox, UserInput, Enter YES or NO
If UserInput not in yes,no
  MsgBox Your input is not valid.
WinGetTitle, active_title, A
If active_title not in Microsoft,- Message,Outlook ; Note no spaces between commas.
{
     Send,!{F4}
}