ケバブケース変換
Hello World Exampleはhello-world-exampleに、getUserIdはget-user-idになります。空白、アンダースコア、記号はすべて1つのハイフンにまとまるので、ハイフンが二重になることはありません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- Hello World Example
- 結果
- hello-world-example
- 入力値
- Hello World Example
- ケバブ形式
- hello-world-example
- ケバブケース
- hello-world-example
ケバブケース変換ツールは、平文のフレーズを小文字のハイフン区切り識別子に変えます。フロントエンド開発者、デザインシステム保守者、コード生成スクリプト、単体テストは、混在した貼り付けから予測可能なケバブケーストークンへの同じ写像を必要とします。
ケバブケースの意味と単語の分割方法
ケバブケースは、複数語の識別子をすべて小文字で書き、各単語の間に単一のハイフンを置く命名スタイルです:hello-world、user-profile-settings、convert-to-kebab-case。CSSクラス名、多くのHTMLカスタム属性、npm風パッケージ名、アンダースコアよりハイフンを好む読みやすいURLパス断片の慣用形です。
この変換器は自由文からその形を組み立てます。残った入力はトークンに分割されます:空白、アンダースコア、ハイフン、その他の非英数字の連続が区切りとして働き、camelCaseとPascalCaseの境界は追加の切れ目を入れてgetUserIdをget、user、idにします。
各トークンは小文字化され空セグメントは捨てられ、単一ハイフンで結合されるため、繰り返し区切りが二重ハイフンを生みません。文字や数字のない純粋な句読点も検証に失敗します。
実用上のヒント、制限、このツールを使う場面
検索意図がケバブケースへの変換、hyphen-case化、フレーズを小文字ハイフン結合にすることであるときにこの機能を使います。意図的な非ASCII識別子に注意:トークン内に残るのはASCII英数字のみで、それ以外は区切りとして働き音訳されません—ダイアクリティカル除去付きの完全Unicodeスラッグ化が必要なら専用URLスラッグツールを使ってください。
このページは見出し用title-case変換器でもsentence-case整形でも、ロケール別音訳表付きの本格SEOスラッグサービスでもありません。人間が見出しとして読むならtitle-caseツールを、機械がハイフン識別子として扱うならこの機能を選んでください。
活用例
CSSクラスとデザイントークン命名
スタイルシートやデザインシステム文書を生成する前に、コンポーネントやトークンのラベルを安定したケバブケースのクラス名に変換します。
ルートとdata属性の識別子
大小混在の製品名やページタイトルをハイフン区切りのパス断片とdata-testid値に正規化します。
よくある質問
ケバブケースとは何ですか?
ケバブケースは複数語の識別子を小文字で書き、単語の間に単一ハイフンを置きます。例:hello-worldやuser-profile-settings。
単語はどう分割されますか?
空白、アンダースコア、ハイフン、その他の非英数字の連続が単語を分けます。camelCaseとPascalCaseの境界も小文字化と結合の前に切れ目を入れます。
URLスラッグ生成と同じですか?
関連しますが同一ではありません。本ツールはフレーズから小文字ハイフントークンに焦点を当てます。専用スラッグツールはダイアクリティカル除去やロケール音訳も行うことがあります。
アクセント付きの文字はそのまま残りますか?
いいえ、単語の中に残るのは英数字だけで、それ以外の文字は区切りとして扱われ、別の文字に置き換えることもしません。アクセントを外したURL用の文字列が必要なら、専用のスラッグ作成ツールを使ってください。
区切りが続くとハイフンが重なりますか?
いいえ、空白やアンダースコア、記号が続いても空の部分は捨てられ、単語は1つのハイフンだけでつながります。そのため、ハイフンが2つ並ぶことはありません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/str/kebab-case \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello World Example"}'const res = await fetch("https://api.kit.forhosting.com/str/kebab-case", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello World Example"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/kebab-case",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello World Example"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/kebab-case", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello World Example"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello World Example"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/kebab-case", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "Hello World Example"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.kebab_case",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_chars | 100000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
CSSクラス、HTMLのdata属性、パッケージ名、多くのAPIパス断片がこの形式を想定します。空でない任意の文字列—タイトル、camelCase識別子、snake_caseフィールド、複数語ラベル—を入力すると、単語を小文字化し単一ハイフンでつないだ決定的なケバブケース結果を返します。空または空白のみの入力は明確なinvalid_inputエラーで拒否され、パイプラインが空白文字列を成功変換として扱わないようにします。経路は純粋な文字列論理—ネットワークなし、乱数シードなし、壁時計依存なし—なので、無料のブラウザ実行とプリペイドAPIは呼び出すたびに同じJSONを返します。
ケバブケースの意味と単語の分割方法
まず先頭・末尾の空白をトリムし、何も残らなければ空の成功文字列を返す代わりにinvalid_inputで失敗します。
APIの呼び出し方と応答の内容
値は空白トリム後に空でなく、巨大な貼り付けでWorkerやブラウザのメモリを使い果たさないよう十万文字を超えてはなりません。固定ルール集合が欲しいときは手で事前ハイフン化せず生のフレーズを送ってください。必須の文字列フィールドtext(別名input、value、string、s、phrase)を含むJSON本体を送ります。成功時、応答は送った元の文字列をinput、トリム後の作業文字列をtext、ケバブケース出力をresult、同じ文字列の別名キーkebabとkebab_case、分割・フィルタ後のトークン数をword_count、何語変換したかを示す短い要約をmessageとして返します。text欠落、非文字列、過大ペイロード、トリム後空、英数字なしの入力などの検証失敗はinvalid_inputを返し課金されません。料金は成功リクエストごとに定額$0.002、単位item、限界単価ゼロです。
実用上のヒント、制限、このツールを使う場面
コンポーネント名、見出し、レガシーsnake_caseフィールドを貼り付けて一度変換し、CSSモジュールクラス、data-testid属性、ルート断片に入れます。テストの往復確認は容易です:Hello World Exampleを送りword_count三のhello-world-exampleを期待し、getUserIdでget-user-idを期待し、空文字や空白を意図的に送ってinvalid_inputと非空文字列を求めるメッセージを確認します。invalid_inputを返す失敗タスクはプリペイド残高を消費せず、フォーム検証とCI否定テストを安価に保ちます。命名規則を教えるときは同じフレーズをcamelCase、snake_case、kebab-caseで比較し、フロントエンドとCSSの生態系が大文字やアンダースコアよりハイフンを標準化する理由を示します。
連携の活用例
文字列整形の単体テスト
既知の正しいケバブケースfixtureを生成し、空入力がCIでinvalid_inputになることを検証します。
技術的な質問
空入力ではどうなりますか?
空または空白のみのtextはinvalid_inputを返します。分割後に文字や数字がない入力も検証に失敗します。
ケバブケース変換は無料ですか?
ブラウザツールは無料でローカル実行です。API呼び出しは成功リクエストごとに$0.002のプリペイドKIT残高を使い、失敗タスクは課金されません。