変数の説明

WinGoferでは変数を「文字型」と「数値型」に分類しています。

命名規則

先頭「^」、2文字目:アルファベット、3文字目以降:英数又は「_(アンダーバー)」

  • 先頭は必ず「^(ハットキャレット/サーカムフレックス)」で始まります。
  • 2文字目は「アルファベット(大文字/小文字)」
  • 3文字目以降は「アルファベット(大文字/小文字)」または「数字」または「_(アンダーバー)」です。

変数の宣言

変数は初回使用時に、自動的に宣言されます。
数値型と文字型で同じ名前の変数を宣言することはできません。

NoIOTYPE入力オプション結果
1INNUM:SUBSTITUTE変数名:^a1、代入式:1^a1の宣言
^aに「1」を代入
2INNUM:SUBSTITUTE変数名:^a1、代入式:2^a1に「2」を代入
3INSTR:SUBSTITUTE変数名:^a1、代入式:ABCNG

数値型変数

代入

数値型変数には数値しか代入できません。値をセットするには「SUBSTITUTE」、「LAST-VALUE」を利用します。

NUM:SUBSTITUTE

IOTYPE変数入力オプション結果
INSUBSTITUTE変数名:^num1、代入式:10^num1=10
INSUBSTITUTE変数名:^num2、代入式:3.14^num2=3.14
INSUBSTITUTE[代入式:^num1,^num2]変数名:^num3、
代入式:^num1*^num2
^num3=31.4
  • 【入力オプション欄】に、変数名と代入式を記入します。
  • 代入式には、数値以外にも、計算式や変数を使用できます。
  • 代入式で、自分以外の変数を利用するときは、【変数欄】に使用する変数を入力します。
    2個以上の変数を記述する場合は、「,」で区切ります。
計算式の記号

「代入式」に計算式として利用できる記号は以下の通りです。

記号意味入力例計算結果
+足し算2+46
引き算3-6-3
*掛け算4*2.510
/割り算10/33.3333333333333333333333333333
%割り算の余り10%31
()計算の順番2*(10+(4+5)/3)-(-2)28
計算記号

NUM:LAST-VALUE

ブラウザ操作の結果、画面に表示された値を変数に代入したい場合があります。その場合は「LAST-VALUE」を使用します。

IO要素TYPEXPath入力オプション出力値結果
OUT出力要素要素のTYPE要素のXPath(例:10)
INXXXXX
INXXXXX
INLAST-VALUE変数名:^num1^num1=10

LAST-VALUEは直前の【出力値欄】の内容を変数に代入します。よって、出力値は数値でなければなりません。
また、「直前の出力値欄の内容」ですので、出力値との間に他の行があっても無視されます。

文字列への変換

数値を文字として加工したい場合などは、「CONVERT-STR」で文字型変数に変換します。

IOTYPE入力オプション結果
INSUBSTITUTE変数名:^num1、代入式:3.143.14(数値)
INCONVERT-STR数値(元):^num1、文字(新):^str13.14(文字)

変換不要ケース

例外的に、文字型変数に代入する場合、条件比較に使用する場合は、数値を文字列に変換する必要はありません。

IOTYPE変数入力オプション結果
INNUM:SUBSTITUTE変数名:^num1、代入式:123^num1=123
INSTR:SUBSTITUTE[代入式:^num1]変数名:^str1、代入式:0^num14^str1=01234
文字型変数への代入
CtrlIOTYPE変数入力オプション入力値結果
INNUM:
SUBSTITUTE
変数名:^num1、代入式:123
INTEXT123
IFTEXT[文言:^num1]条件:文言一致、文言:^num1TRUE
文字列との比較

IF文の比較対象となるテキストボックスの値は文字列ですが、数値型変数「^num1」と比較することができます。

出力

変数の値を出力したい場合は「OUTPUT」を使用します。

IOTYPE入力オプション出力値
INSUBSTITUTE変数名:^num1、代入式:25+5
OUTOUTPUT変数名:^num130

文字型変数

代入

値をセットするには「SUBSTITUTE」、「LAST-VALUE」を利用します。数字や計算式を代入した場合でも、あくまでも文字列として扱います。

STR:SUBSTITUTE

IOTYPE変数入力オプション結果
INSUBSTITUTE変数名:^str1、代入式:abcabc
INSUBSTITUTE変数名:^str2、代入式:012.30012.30
INSUBSTITUTE[代入式:^str1,^str2]変数名:^str3、
代入式:^str1+^str2*15
abc+012.30*15
  • 【入力オプション欄】に、変数名と代入式を記入します。
  • 代入式には、変数を使用できます。
  • 代入式で、自分以外の変数を利用するときは、【変数欄】に使用する変数を入力します。
    2個以上の変数を記述する場合は、「,」で区切ります。
  • 「」(空文字)を代入することもできます。

STR:LAST-VALUE

ブラウザ操作の結果、画面に表示された値を変数に代入したい場合があります。その場合は「LAST-VALUE」を使用します。

IO要素TYPEXPath入力オプション出力値結果
OUT出力要素要素のTYPE要素のXPath(例:山田)
INXXXXX
INXXXXX
INLAST-VALUE変数名:^str1^str1=山田

LAST-VALUEは直前の【出力値欄】の内容を変数に代入します。よって、出力値は数値でなければなりません。
また、「直前の出力値欄の内容」ですので、出力値との間に他の行があっても無視されます。

数値への変換

文字列として取得した数字を計算などに使用したい場合は、「CONVERT-NUM」で数値型変数に変換します。

IOTYPE入力オプション結果
INSUBSTITUTE変数名:^str1、代入式:42.195km^str1=42.195km
INLEFT^str1=LEFT(^str1, 6)^str1=42.195
INCONVERT-NUM文字(元):^str1、数値(新):^num1^num1=42.195

変換不要ケース

例外的に、数値型変数に代入する場合、条件比較で数値型変数との比較値に使用する場合は、数値に変換する必要はありません。

IOTYPE変数入力オプション結果
INSTR:SUBSTITUTE変数名:^str1、代入式:50^str1=50
INNUM:SUBSTITUTE[代入式:^str1]変数名:^num1、
代入式:^str1-20
^num1=30
数値型変数への代入
CtrlIOTYPE変数入力オプション結果
INSTR:
SUBSTITUTE
変数名:^str1、代入式:15
INNUM:
SUBSTITUTE
変数名:^num1、代入式:20
IFVAR-NUM[比較値:^str1]変数名:^num1、
条件:>、比較値:^str1
TRUE
数値型変数との比較

出力

変数の値を出力したい場合は「OUTPUT」を使用します。

IOTYPE入力オプション出力値
INSUBSTITUTE変数名:^str1、代入式:ABC
OUTOUTPUT変数名:^str1ABC