文字列テンプレート変数では、変数、ランダムデータ、数学的演算の結果を埋め込むことができる、さまざまな式がサポートされています。このガイドでは、文字列テンプレート変数でサポートされているさまざまなタイプの式の概要について説明します。
有効な式の構文
式は、二重中括弧 {{ }} で囲みます。また、変数の先頭には @ 記号を付けます。有効な式の例を次に示します。
-
{{@username}}:usernameという変数の値を参照します。 -
{{alpha:6}}: アルファベット大文字と小文字が混在する6文字のランダムな文字列を生成します。 -
{{fake.name.firstName}}: ランダムな名前(英文名)を生成します。 -
{{(6 + 10) / 2}}: 6と10の和を2で割ります。 -
{{date}}: タイムスタンプを生成します。特定の書式の日付が必要な場合は、mablでの日付の操作を参照してください。
変数の参照
mabl変数を使用すると、文字列テンプレート変数内に変数を埋め込むことができます。
mabl変数の構文
mablで変数を参照するための構文は、{{@変数名}} です。たとえば、"user_id" という変数を参照する場合は、{{@user_id}} と記述します。
[プロパティ] フィールドで、元の変数を追加する場所に {{@変数名}} と入力します。[現在の値] フィールドに、新しい変数のプレビューが表示されます。

新しい変数に名前を付けて、[OK] をクリックします。
マクロ
マクロは、ランダムな文字列を生成するのに便利です。マクロには、文字タイプ、コロン、数字がこの順序で含まれ、数字は作成するランダムな文字の数を示します。以下は、文字列テンプレートに使用可能なサポート対象のマクロの表です。
| マクロ | 説明 | 例 |
|---|---|---|
alpha |
アルファベットの大文字と小文字 | {{alpha:3}} |
alphaLower |
アルファベットの小文字 (a~z) | abc{{alphaLower:4}} |
alphaUpper |
アルファベットの大文字 (A~Z) | ABC{{alphaUpper:5}} |
digit |
数字 (0~9) | 123-{{digit:4}} |
alnum |
英数字 (アルファベットと数字) | random{{alnum:6}} |

Faker式
mablは、{{fake.type.subtype}}の形式でfaker式を使って、現実的なランダムデータも生成できます。詳しくは、https://v6.fakerjs.devのドキュメントをご覧ください。なお、サポートされているロケールは英語のみです。
次の表は、ランダムなデータで変数を作成する際に使える一般的なfaker式をいくつか紹介しています
| 式 | 想定 | 結果の例 |
|---|---|---|
{{fake.name.firstName}} |
ランダムな英文名前 | "Garfield" |
{{fake.name.lastName}} |
ランダムな英文名字(姓) | "Larson" |
{{fake.address.streetAddress}} |
ランダムな英文住所 | "840 Roberts Burg" |
{{fake.address.city}} |
ランダムな英文都市名 | "Manteton" |
{{fake.address.state}} |
ランダムな米国の州名 | "North Carolina" |
{{fake.address.zipCode}} |
ランダムな米国の郵便番号 | "02160" |
{{fake.address.countryCode}} |
ランダムな2文字の国コード | "TN" |
{{fake.company.companyName}} |
ランダムな英文会社名 | "Sawayn Group" |
{{fake.internet.email}} |
ランダムなメールアドレス | "Rafaela19@gmail.com" |
{{fake.phone.phoneNumber}} |
複数の形式のいずれかのランダムな電話番号 (国番号、内線番号つき) | "1-968-628-9831 x738" |
{{fake.phone.phoneNumberFormat}} |
-###-####形式のランダムな電話番号 | "776-705-5652" |
{{fake.lorem.text}} |
ランダムな文章 | "consequatur omnis neque" |
{{fake.random.uuid}} |
ランダムなUUID | "71bcc5d3-7f24-4b08-bcf8-f9b8e0d6d913" |
{{fake.finance.amount}} |
ランダムな金額 | "17.78" |
APIテストでのランダム値
Faker式はAPIテストではサポートされていません。APIテストでランダムなデータを生成するには、Postmanの動的変数を使ってください。APIテストの変数について詳しくはこちらをご覧ください。
数学的演算
mablは、文字列テンプレート内で基本的な数値計算を実行し、その結果を新しい変数に保存するか、既存の変数を上書きできます。正しい結果を得るには、式の書き方が重要です。数式は評価されるために、二重の中かっこで囲む必要があります。
文字列テンプレートで有効な数式を作成する方法の例をいくつか紹介します。
- 数式はPEMDASの規則に従って評価されます。
{{5 + 3 / 2}}は 6.5 に評価されます- 数学的演算を特定の順序で評価するには、括弧を使用します。
{{(5 + 3) / 2}}は 4 に評価されます- 数式演算は、通貨記号やパーセント記号など、ほかの値と組み合わせることができます。
${{(5 + 3 ) / 2}}は $4 に評価されます- 数値である限り、数式にはマクロや変数を含めることができます
{{digit:1+100}}または{{@sample_var/2}}
高度な数式表現
mablは、丸め、絶対値、乱数の整数など、一部の高度な数学関数にも対応しています。
丸め処理
関数 round(number, numberOfDecimalPlaces) は、数式の結果を numberOfDecimalPlaces 桁に丸めます。たとえば、{{round(1/3,2)}} は値 0.33 を出力します。
JavaScript浮動小数点精度
浮動小数点数の格納方法に起因する丸め誤差のため、0.1 + 0.2 === 0.3 のような算術式はfalseを返します。これを解決するには、結果を丸めて、round(0.1 + 0.2, 1) または (0.1 + 0.2).toFixed(1) のように指定する必要があります。
絶対値
関数 abs(number) は、数値計算の絶対値を返します。たとえば、{{abs(-6)}} は 6 と評価されます。
ランダム値
関数 randomInt(min, max) は、min 以上で max 未満のランダムな整数を返します。たとえば、{{randomInt(0,11)}} は 0 から 10 の間のランダムな整数を返します。
ランダムな整数を出力する式には、変数を含めることもできます。たとえば、1 から変数の値 {{@total_count}} までのランダム値を生成するには、次の式を使用できます: {{randomInt(0, @total_count)+1}}。