数字を言葉に
数字を英語かスペイン語の言葉に直します。小切手モードでは12.5がtwelve and 50/100になり、小切手や請求書の金額欄にそのまま使えます。通常の読み方では12.50をtwelve point five zeroと表記します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 入力値
- 0
- 言語とロケール
- En
- 表記形式
- Cardinal
- 数値の読み
- zero
正規化された数値文字列を英語またはスペイン語の言葉に変換します。基数モードは自然な読み上げ用、小切手モードは NN/100 のセント付き金額用です。
正規入力のみ — 浮動小数点も桁区切りも不可
有効な形は任意の先頭マイナス、整数桁、任意の小数点と小数桁です。先頭ゼロ(単独の 0 を除く)、カンマ、空白、プラス記号、科学記数法は検証エラーになります。整数部は最大 15 桁(0 から 10^15−1)です。
基数モードは小数最大 6 桁、小切手モードは最大 2 桁で、丸めは行いません。
英語の短尺度とスペイン語の正式尺度
複合の十の位はハイフン付きで、hundred の後に英国式の and は入れません。スペイン語は正式表現で、10^9 は mil millones、10^12 は billón です。グループがちょうど 100 のとき cien、101–199 は ciento。
尺度の直前だけ apócope(veintiún mil)が働きます。
基数モードと小切手モード
基数モードは整数を読み上げ、小数点がある場合は各小数桁を point / punto の後に 1 桁ずつ述べ、末尾のゼロも残します。小切手モードは整数の言葉の後に and NN/100 または con NN/100 を付け、常に 2 桁のセントです。v1 では通貨名は付けません。
負数・ゼロ・既定値
負数は minus または menos の接頭辞を付けます。マイナスゼロは通常のゼロに潰します。locale 省略時は英語、mode 省略時は基数です。
活用例
小切手・請求書の金額表記
NN/100 の固定セント付きで法的な金額行を生成します。
アクセシビリティ
表示合計を自然言語にしてスクリーンリーダー向けにします。
英西バイリンガル文書
同じ正規数値から英語とスペイン語の文言を出します。
決定的な自動テスト
CI で words 文字列を厳密一致させ、浮動小数点に依存しません。
よくある質問
英語の hundred に and は付きますか?
基数モードでは付きません。and は小切手モードの NN/100 前だけです。
スペイン語の mil はどうなりますか?
ちょうど mil で、un mil にはしません。10^9 は mil millones、10^12 は un billón です。
小切手モードで丸めますか?
いいえ。 小数が 3 桁以上ならエラーです。1 桁はゼロ埋めします。
小数点以下はどのように読まれますか?
通常の読み方では、小数点のあとの数字をpointまたはpuntoに続けて1桁ずつ読み、末尾のゼロも残します。たとえば12.50は、英語でtwelve point five zeroになります。
通貨の名前は付きますか?
付きません。必要であれば、ドル、ユーロ、ペソなどの通貨名を結果の横にご自身で書き足してください。そのため、同じ表記をどの通貨の書類にも使えます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/text/number-to-words \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"1234.56"}'const res = await fetch("https://api.kit.forhosting.com/text/number-to-words", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "1234.56"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/number-to-words",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "1234.56"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/number-to-words", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"1234.56"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"1234.56"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/number-to-words", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"value": "1234.56"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.number_to_words",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_int_digits | 15 |
max_frac_digits_cardinal | 6 |
max_frac_digits_check | 2 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
無料ページと API は同じ決定的な規則を共有します。
正規入力のみ — 浮動小数点も桁区切りも不可
大きな整数が IEEE-754 を通らないよう、value は文字列である必要があります。
英語の短尺度とスペイン語の正式尺度
英語は米国の短尺度(thousand / million / billion=10^9 / trillion=10^12)です。
負数・ゼロ・既定値
結果には元の value、有効な locale/mode、正確な words が含まれます。
技術的な質問
なぜ value は文字列ですか?
JSON の数値は IEEE-754 で、15 桁の整数をすべて正確には表せないためです。
範囲は?
整数部の絶対値は 0 以上 10^15−1 以下です。
ブラウザ版は無料ですか?
はい。端末上で無料です。ネイティブアプリは API を使い、同じ要求は前払い KIT 残高から $0.002 です。