変数の説明
WinGoferでは変数を「文字型」と「数値型」に分類しています。
命名規則
先頭「^」、2文字目:アルファベット、3文字目以降:英数又は「_(アンダーバー)」
- 先頭は必ず「^(ハットキャレット/サーカムフレックス)」で始まります。
- 2文字目は「アルファベット(大文字/小文字)」
- 3文字目以降は「アルファベット(大文字/小文字)」または「数字」または「_(アンダーバー)」です。
変数の宣言
変数は初回使用時に、自動的に宣言されます。
数値型と文字型で同じ名前の変数を宣言することはできません。
No | IO | TYPE | 入力オプション | 結果 |
---|---|---|---|---|
1 | IN | NUM:SUBSTITUTE | 変数名:^a1、代入式:1 | ^a1の宣言 ^aに「1」を代入 |
2 | IN | NUM:SUBSTITUTE | 変数名:^a1、代入式:2 | ^a1に「2」を代入 |
3 | IN | STR:SUBSTITUTE | 変数名:^a1、代入式:ABC | NG |
数値型変数
代入
数値型変数には数値しか代入できません。値をセットするには「SUBSTITUTE」、「LAST-VALUE」を利用します。
NUM:SUBSTITUTE
IO | TYPE | 変数 | 入力オプション | 結果 |
---|---|---|---|---|
IN | SUBSTITUTE | 変数名:^num1、代入式:10 | ^num1=10 | |
IN | SUBSTITUTE | 変数名:^num2、代入式:3.14 | ^num2=3.14 | |
IN | SUBSTITUTE | [代入式:^num1,^num2] | 変数名:^num3、 代入式:^num1*^num2 | ^num3=31.4 |
- 【入力オプション欄】に、変数名と代入式を記入します。
- 代入式には、数値以外にも、計算式や変数を使用できます。
- 代入式で、自分以外の変数を利用するときは、【変数欄】に使用する変数を入力します。
2個以上の変数を記述する場合は、「,」で区切ります。
計算式の記号
「代入式」に計算式として利用できる記号は以下の通りです。
記号 | 意味 | 入力例 | 計算結果 |
---|---|---|---|
+ | 足し算 | 2+4 | 6 |
– | 引き算 | 3-6 | -3 |
* | 掛け算 | 4*2.5 | 10 |
/ | 割り算 | 10/3 | 3.3333333333333333333333333333 |
% | 割り算の余り | 10%3 | 1 |
() | 計算の順番 | 2*(10+(4+5)/3)-(-2) | 28 |
NUM:LAST-VALUE
ブラウザ操作の結果、画面に表示された値を変数に代入したい場合があります。その場合は「LAST-VALUE」を使用します。
IO | 要素 | TYPE | XPath | 入力オプション | 出力値 | 結果 |
---|---|---|---|---|---|---|
OUT | 出力要素 | 要素のTYPE | 要素のXPath | (例:10) | ||
IN | XXXXX | |||||
IN | XXXXX | |||||
IN | LAST-VALUE | 変数名:^num1 | ^num1=10 |
LAST-VALUEは直前の【出力値欄】の内容を変数に代入します。よって、出力値は数値でなければなりません。
また、「直前の出力値欄の内容」ですので、出力値との間に他の行があっても無視されます。
文字列への変換
数値を文字として加工したい場合などは、「CONVERT-STR」で文字型変数に変換します。
IO | TYPE | 入力オプション | 結果 |
---|---|---|---|
IN | SUBSTITUTE | 変数名:^num1、代入式:3.14 | 3.14(数値) |
IN | CONVERT-STR | 数値(元):^num1、文字(新):^str1 | 3.14(文字) |
変換不要ケース
例外的に、文字型変数に代入する場合、条件比較に使用する場合は、数値を文字列に変換する必要はありません。
IO | TYPE | 変数 | 入力オプション | 結果 |
---|---|---|---|---|
IN | NUM:SUBSTITUTE | 変数名:^num1、代入式:123 | ^num1=123 | |
IN | STR:SUBSTITUTE | [代入式:^num1] | 変数名:^str1、代入式:0^num14 | ^str1=01234 |
Ctrl | IO | TYPE | 変数 | 入力オプション | 入力値 | 結果 |
---|---|---|---|---|---|---|
IN | NUM: SUBSTITUTE | 変数名:^num1、代入式:123 | ||||
IN | TEXT | 123 | ||||
IF | TEXT | [文言:^num1] | 条件:文言一致、文言:^num1 | TRUE |
IF文の比較対象となるテキストボックスの値は文字列ですが、数値型変数「^num1」と比較することができます。
出力
変数の値を出力したい場合は「OUTPUT」を使用します。
IO | TYPE | 入力オプション | 出力値 |
---|---|---|---|
IN | SUBSTITUTE | 変数名:^num1、代入式:25+5 | |
OUT | OUTPUT | 変数名:^num1 | 30 |
文字型変数
代入
値をセットするには「SUBSTITUTE」、「LAST-VALUE」を利用します。数字や計算式を代入した場合でも、あくまでも文字列として扱います。
STR:SUBSTITUTE
IO | TYPE | 変数 | 入力オプション | 結果 |
---|---|---|---|---|
IN | SUBSTITUTE | 変数名:^str1、代入式:abc | abc | |
IN | SUBSTITUTE | 変数名:^str2、代入式:012.30 | 012.30 | |
IN | SUBSTITUTE | [代入式:^str1,^str2] | 変数名:^str3、 代入式:^str1+^str2*15 | abc+012.30*15 |
- 【入力オプション欄】に、変数名と代入式を記入します。
- 代入式には、変数を使用できます。
- 代入式で、自分以外の変数を利用するときは、【変数欄】に使用する変数を入力します。
2個以上の変数を記述する場合は、「,」で区切ります。 - 「」(空文字)を代入することもできます。
STR:LAST-VALUE
ブラウザ操作の結果、画面に表示された値を変数に代入したい場合があります。その場合は「LAST-VALUE」を使用します。
IO | 要素 | TYPE | XPath | 入力オプション | 出力値 | 結果 |
---|---|---|---|---|---|---|
OUT | 出力要素 | 要素のTYPE | 要素のXPath | (例:山田) | ||
IN | XXXXX | |||||
IN | XXXXX | |||||
IN | LAST-VALUE | 変数名:^str1 | ^str1=山田 |
LAST-VALUEは直前の【出力値欄】の内容を変数に代入します。よって、出力値は数値でなければなりません。
また、「直前の出力値欄の内容」ですので、出力値との間に他の行があっても無視されます。
数値への変換
文字列として取得した数字を計算などに使用したい場合は、「CONVERT-NUM」で数値型変数に変換します。
IO | TYPE | 入力オプション | 結果 |
---|---|---|---|
IN | SUBSTITUTE | 変数名:^str1、代入式:42.195km | ^str1=42.195km |
IN | LEFT | ^str1=LEFT(^str1, 6) | ^str1=42.195 |
IN | CONVERT-NUM | 文字(元):^str1、数値(新):^num1 | ^num1=42.195 |
変換不要ケース
例外的に、数値型変数に代入する場合、条件比較で数値型変数との比較値に使用する場合は、数値に変換する必要はありません。
IO | TYPE | 変数 | 入力オプション | 結果 |
---|---|---|---|---|
IN | STR:SUBSTITUTE | 変数名:^str1、代入式:50 | ^str1=50 | |
IN | NUM:SUBSTITUTE | [代入式:^str1] | 変数名:^num1、 代入式:^str1-20 | ^num1=30 |
Ctrl | IO | TYPE | 変数 | 入力オプション | 結果 |
---|---|---|---|---|---|
IN | STR: SUBSTITUTE | 変数名:^str1、代入式:15 | |||
IN | NUM: SUBSTITUTE | 変数名:^num1、代入式:20 | |||
IF | VAR-NUM | [比較値:^str1] | 変数名:^num1、 条件:>、比較値:^str1 | TRUE |
出力
変数の値を出力したい場合は「OUTPUT」を使用します。
IO | TYPE | 入力オプション | 出力値 |
---|---|---|---|
IN | SUBSTITUTE | 変数名:^str1、代入式:ABC | |
OUT | OUTPUT | 変数名:^str1 | ABC |