文章で最も短い単語と文字数を調べます
「Quiet rivers run beneath old bridges.」では、6語のうち最も短いのは3文字の「run」です。同じ3文字の「old」より先に出てくるため選ばれます。句読点は文字数に含めません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- Quiet rivers run beneath old bridges.
- 最短の単語
- run
- 長さ
- 3
- 単語数
- 6
このツールは入力された文章を調べ、文字数が最小となる最初の単語を見つけ、その単語と文字数を表示します。文のリズムの推敲、語彙の比較、詩の研究、授業用問題の作成、テキスト処理規則の確認などにご利用いただけます。Unicodeの文字と数字で構成された単語を認識し、内部にアポストロフィやハイフンを含む形も一つの単語として扱うため、英語の散文以外にも一貫した方法で適用できます。
文脈を保ったまま最小の単語を見つけます
テキスト欄に文章を貼り付けるか送信すると、単語を左から右へ順番に調べます。最も短い単語、その文字数、調査した単語要素の総数を返します。最小文字数の単語が複数ある場合は、文章中で最初に現れたものを採用します。
この一定の同率処理により、同じ入力からは常に同じ結果が得られるため、編集作業や自動検査にも安心してお使いいただけます。単語の前後にある句読点は文字数に含めません。一方、単語の構成部分をつなぐ内部のアポストロフィやハイフンは保持します。
そのため、don't、mother-in-lawなどの表現は一つの要素として扱われます。文章を書き換えたり意味を解釈したりせず、対象を絞った測定結果をすばやく得られます。非常に短い語の発見、詩行の比較、見出しのリズムの確認、ほかのプログラムで読みやすさの統計と共に保存する再現可能な指標の作成などにご活用ください。
外部の言語サービスへ内容を送信せず、辞書にも依存しません。
単語と文字の数え方をご確認ください
単語の分割はUnicodeに対応しています。単語は一つ以上の文字または数字から始まり、直線型アポストロフィ、曲線型アポストロフィ、ハイフンで結ばれた追加の英数字グループを含められます。空白、読点、引用符、絵文字などの区切り記号は要素を分割または囲むものであり、単語の文字数を増やしません。
長さはUTF-16の格納単位ではなくUnicodeコードポイントで測定するため、基本多言語面の外にある多くの文字を二重に数えることを防げます。この方式は意図的に機械的かつ言語非依存です。辞書の参照、ストップワードの除去、短縮形の展開、語幹化、数字が意味のある語彙かどうかの判断は行いません。
そのため、7のような要素も一文字の単語として扱います。研究上さらに狭い言語学的定義が必要な場合は、先に文章を前処理してから正規化済みの内容を送信してください。空の入力、または句読点や記号のみの文字列は、報告できる単語がないためエラーになります。
文章と言語の作業に結果を活用できます
最小単語長は小さな指標ですが、下書き、詩、文字起こし、データセットに同じ基準で適用すると有用な情報になります。編集担当者は平均単語長や文長と組み合わせ、改稿後にリズムが変わった箇所を見つけられます。詩を分析する際は、数字だけでなく実際に最初に現れた最小の単語を根拠として残し、詩行や連を比較できます。
教育では、学習者が結果を予想した後に、句読点、短縮形、同率について考える問題を作成できます。開発では、決定的な応答を取り込み検査、コーパス要約、テストデータに利用できます。公平に比較するには、すべての標本で同じ前処理方針を維持してください。
数字やハイフン付きの形を除くかどうかによって、測定対象の集合が変わります。返される総単語数は調査量を示し、単語と文字数は中心となる観察結果です。ブラウザー版では、ネットワークに依存せず同じ純粋な分析をローカルで実行できます。
活用例
文のリズムを推敲します
段落内で最も短い単語を確認しながら、文の調子、強調、語彙の多様性を整えられます。
詩を詳しく調べます
一定の同率処理規則により、詩行や連ごとに最初の最小文字数の単語を比較できます。
テキストコーパスを分析します
言語や読みやすさの記録に、再現可能な最小単語の観察値と単語要素数を追加できます。
よくある質問
同じ最小文字数の単語が複数ある場合はどうなりますか?
読む順序で最初に現れる最短の単語を返すため、同率の場合も結果は常に一定です。
句読点は単語の文字数に含まれますか?
含まれません。 外側の句読点は区切りとして働きますが、単語部分をつなぐ内部のアポストロフィやハイフンは要素に残り、文字数に含まれます。
数字も単語として扱われますか?
はい。 Unicodeの文字または数字の連続を要素とするため、単独の数字が最短の結果になる場合があります。
ASCII以外の文字はどのように数えますか?
Unicodeの文字と数字を認識し、UTF-16の格納単位ではなくUnicodeコードポイントで長さを測定します。
スペースのない日本語の文章ではどうなりますか?
文字や数字が続く部分を1語とみなし、空白や句読点で区切ります。そのため日本語では、読点や句点で区切られたひと続きが1語になります。単語ごとに調べたい場合は、先に語の間へスペースを入れてください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/str/shortest-word \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Quiet rivers run beneath old bridges."}'const res = await fetch("https://api.kit.forhosting.com/str/shortest-word", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Quiet rivers run beneath old bridges."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/shortest-word",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Quiet rivers run beneath old bridges."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/shortest-word", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Quiet rivers run beneath old bridges."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Quiet rivers run beneath old bridges."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/shortest-word", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "Quiet rivers run beneath old bridges."
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.shortest_word",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
文章と言語の作業に結果を活用できます
APIリクエストには表示された基本料金$0.002が適用されます。
技術的な質問
どのような入力でエラーになりますか?
テキストがない場合、空白のみの場合、文字または数字からなる単語を一つも含まない場合はinvalid_inputエラーになります。
APIリクエストの料金はいくらですか?
各APIリクエストには、表示された基本料金$0.002が適用されます。