テキストをリーツピークに変換
テキストを1337風に変換し、変える量を選べます。例文ではミディアムで対象の31文字のうち16文字が数字に変わり、ライトは3文字に1つ、エクストリームはすべてを置き換えます。同じ入力なら結果も同じです。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- Leetspeak replaces letters with look-alike digits.
- 強度
- 中型
- 生産量
- 1e3t5pe4k rep1ac3s 1e7t3rs w1th 1o0k-a1ik3 dig1t5.
- 対象
- 31
- 置換した数
- 16
リーツピーク変換ツールは、文字を古典的な1337の対応文字に置き換えてテキストを書き換えます。aは4に、eは3に、tは7になります。全か無かの翻訳ツールとは異なり、テキストのどの程度を変換するかをお選びいただけます。ライトなら対象文字の約3分の1、ミディアムなら半分、エクストリームならすべてを変換します。置換は完全に決定論的なので、同じ入力と強度からは常に同じ出力が得られ、パイプライン・テスト・生成コンテンツで安心してご利用いただけます。
リーツピークとは何か、なぜ強度が重要なのか
リーツピーク(1337またはleetとも表記)は、初期の電子掲示板文化から生まれた置換アルファベットです。文字は見た目の似た数字や記号に置き換えられ、「elite」は「3l1t3」になります。
多くの変換ツールはこれを二元的に扱い、文字をすべて置き換えるかまったく置き換えないかのどちらかであるため、読めない出力になるか元の文と変わらないかのどちらかになってしまいます。実際の用途がこれらの両極に収まることはめったにありません。
ゲーマータグはスタイルを見せるために完全な変換を望み、パスワードのヒントや装飾的な見出しは、可読性を犠牲にせずスタイルを匂わせる程度のほんの少しの変換を望みます。リーツピーク変換ツールは、1つの強度パラメータでこの中間を提供します。ライトはleetに対応する文字を3つおきに、ミディアムは1つおきに、エクストリームはすべて置き換えます。
判定は対象文字の中での各文字の位置に基づくため、結果は安定しています。同じテキストと強度で2回実行すれば、プロセスのどこにも乱数を使わず、バイト単位でまったく同じ文字列が得られます。
置換エンジンの仕組み
変換ツールは固定の古典的なテーブル(a→4、e→3、iとl→1、o→0、s→5、t→7、b→8)を用いて、入力文字列を1文字ずつ1回だけ走査します。照合は大文字小文字を区別しないため「A」と「a」はどちらも候補となり、テーブルにない文字(数字・句読点・空白・アクセント記号・絵文字)はそのまま通過します。
候補となる文字は出現するたびに数えられ、強度がどれを置き換えるかを決定します。ライトでは0、3、6番目…の候補のみ、ミディアムでは偶数位置の候補、エクストリームではすべてが対象です。この位置ベースの規則により、乱数源なしで出力を再現でき、環境間で結果を比較したり保存したりする際に重要です。
実際に使われる場面
最も一般的な用途は命名です。ゲーマータグ、クラン名、フォーラムのハンドル名、Wi-Fiネットワーク名など、人には普通の単語として読めながら一目で際立つ必要があるもので、ミディアム強度がスタイルと可読性のちょうど良いバランスになることが多いです。
開発者はテスト用のデータ生成(元の文字列として検索可能なまま難読化された見た目の文字列)や、セキュリティ監査用のワードリスト構築に使用します。監査では体系的な文字置換が辞書の語句に適用される標準的な変異手法です。
コミュニティマネージャーやコンテンツ制作者はライト強度を使い、一般の読者に読めなくなることなく、見出しや投稿にレトロなハッカーの雰囲気を添えます。サポートされない強度値は明示的なエラーですぐに失敗するため、設定ミスの統合が開発中に可視化され、本番で予期しない出力を黙って生成することがありません。
活用例
ゲーマータグをスタイリッシュに
ニックネームをミディアム強度で変換すれば、読みやすさを保ちながら紛れもなくleetな装飾バリエーションが得られ、一貫して再利用できます。
パスワード監査用ワードリストの構築
辞書の語句にエクストリーム強度を適用し、セキュリティツールが認証情報監査でテストする体系的なleet変異を生成します。
見出しにレトロな雰囲気を追加
タイトルをライト強度で変換して1337置換を散りばめ、一般読者の可読性を損なわずにスタイルを匂わせます。
よくある質問
強度のレベルは何がありますか?
ライトは対象文字を3つおきに、ミディアムは1つおきに、エクストリームはすべて置き換えます。デフォルトはミディアムです。
どの文字が置き換えられますか?
固定の古典的テーブル:a→4、e→3、i→1、o→0、s→5、t→7、l→1、b→8。大文字小文字は区別せず、それ以外はそのままです。
出力は毎回同じですか?
はい。 置換は位置ベースで乱数を使わないため、同じテキストと強度からは常に同一の出力が得られます。
リーツピークを元のテキストに戻せますか?
いいえ。 この機能は通常テキストからリーツピークへの変換のみです。既存のleet文字列のデコードにはリーツピーク翻訳機能をご利用ください。
大文字やアクセント付きの文字も変換されますか?
大文字も対象です。大文字と小文字を区別しないため、どちらも置き換えの候補になります。一方、アクセント付きの文字や数字、記号、空白、絵文字は対応表にないので、そのまま残ります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/text/leetspeak-convert \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Leetspeak replaces letters with look-alike digits."}'const res = await fetch("https://api.kit.forhosting.com/text/leetspeak-convert", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Leetspeak replaces letters with look-alike digits."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/leetspeak-convert",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Leetspeak replaces letters with look-alike digits."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/leetspeak-convert", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Leetspeak replaces letters with look-alike digits."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Leetspeak replaces letters with look-alike digits."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/leetspeak-convert", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "Leetspeak replaces letters with look-alike digits."
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.leetspeak_convert",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_mb | 1 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
このページのブラウザでは無料で、APIでは1回$0.002でご利用いただけます。
置換エンジンの仕組み
レスポンスには変換後の文字列に加え、使用した強度、見つかった対象文字の数、実際に置き換えられた数が含まれるため、自動化された呼び出し側でも効果を検証できます。テキストは必須で、公開されたサイズ上限までの空でない文字列である必要があり、認識されない強度値は暗黙のフォールバックではなく、明確なinvalid_inputエラーで拒否されます。
実際に使われる場面
アルゴリズムは決定論的で依存関係がないため、このページの無料ブラウザツールと有料APIでまったく同じ変換が実行されます。テキストを貼り付けて試作し、自動フローに組み込む段階になって初めて1回$0.002をお支払いいただけます。
技術的な質問
料金はいくらですか?
API呼び出し1回につき$0.002です。このページのブラウザでは無料で実行でき、同じコードが両方の結果を生成します。
無効な強度を指定するとどうなりますか?
サポートされる値(light、medium、extreme)を示すinvalid_inputエラーで呼び出しは拒否され、課金はされません。