ForHosting KIT · 開発者向けツール

識別子の命名規則を判定

コード中の名前を入力すると、どの命名規則かが分かります。getUserNameはキャメルケースで、get・user・nameの3語に分かれます。単語は常に小文字で返るので、別の書き方で組み直せます。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日
入力した場合
テキスト
getUserName
結果
識別子
getUserName
ケーススタイル
camelCase
単語
get, user, name
単語数
3

名前変更ツール、 スタイル検査、 コード変換パイプラインは、 その記号がすでにどの規約を使っているかを知るまで、 記号を書き換えることができません。getUserName のような識別子は camelCase です。UserProfile は PascalCase です。content-type は kebab-case です。MAX_RETRY_COUNT は SCREAMING_SNAKE_CASE です。それぞれの様式は、 内部の大文字、 アンダースコア、 ハイフンという異なる場所に単語の境界を隠します。この識別子命名規則判定は、 識別子を 1 つ検査し、 規約に名前を付け、 呼び出し側が推測なしに別の様式で同じ名前を組み立てられるよう、 構成語を小文字で返します。アルゴリズムは決定的な文字走査です。モデルも ネットワークも 時計も使いません。同じ 入力 なら 同じ 分類 になります。

識別子の命名規則判定が意味することと、各様式の見分け方

識別子の命名規則とは、プログラミング言語の共同体が複数の英語の語を 1 つの記号に貼り合わせるときの約束です。camelCase は小文字で始まり、あとの各語を大文字で印付けるため、大文字を境界として扱うと getUserName は get、 user、 name と読めます。

PascalCase は UpperCamelCase とも呼ばれ、大文字で始まり、型名、 React コンポーネント、 C# クラスの通例の形です。HttpServer は http と server です。Python 関数、 Ruby メソッド、多くの SQL 列の既定です。

user のような単一の小文字トークンは lower、 OK のような単一の大文字トークンは upper、 アンダースコアとハイフンと内部大文字が 1 つの記号に混ざる get_userName のような場合は mixed です。分類はまず区切り文字を見、次に文字の大小を見ます。アンダースコアとハイフンの両方を含む名前は mixed です。

ハイフンで区切られた小文字部分は kebab-case です。区切りが無いとき、先頭が小文字で後に大文字があれば camelCase、先頭が大文字で後に小文字があれば PascalCase です。返る identifier は元の綴りをそのまま写します。

このページの目的は判定と安定した語リストであり、変換ではありません。句を目的の様式へ直す専用の変換器はすでにあります。

入力契約、語への分割、エラー時の振る舞い

値は前後空白を除いたあと空でない文字列でなければなりません。長さの上限は 4096 文字です。それより長い貼り付けは、黙った切り捨てではなく明示的な上限メッセージで失敗します。

識別子は英字、 アンダースコア、 ドル記号のいずれかで始まり、そのあと ASCII の英字、 数字、 アンダースコア、 ハイフンだけを使わねばなりません。先頭や末尾のハイフン、連続ハイフンは、このツールが対象とする言語では合法な名前ではないため拒否されます。文字が 1 つ以上必要です。

数字や記号だけのトークンには検出すべき命名規則がありません。identifier は切り詰めた入力を写し、何を分類したかを監査できます。words は、アンダースコア、ハイフン、小文字または数字から大文字への縁、頭字語のあとの Titlecase 語、英字と数字の境で分割したあとの小文字トークンの順序付き配列です。

そのため XMLHttpRequest は xml、 http、 request になり、 getUser2FA は get、 user、 2、 fa になります。readable はラベルと記録のために語を単一空白でつなぎます。ロケール固有のタイトル大小変換はなく、黙ってトークンを落とす部分成功もありません。

名前変更ツール、検査器、移行が命名規則判定を使う場面

すべての記号がすでに camelCase だとツールが決めつけると、名前変更の再構成は危険です。フロントエンドのコードベースは PascalCase の React コンポーネント、 camelCase のフック、 kebab-case の CSS モジュール、 SCREAMING_SNAKE_CASE の環境定数を混ぜます。

文書生成器は読みやすい句を見出しとアクセシビリティ用ラベルに変えつつ、相互リンク用に元の規約も知ったままです。検証の失敗は残高を消費しません。要求を識別子 1 つに保ち、 words 配列をテストに固定すれば、独自の構文解析器を立てなくても、名前変更パイプライン、 lint 規則、教室の確認向けに再現可能な分類が得られます。

この判定器はどの識別子の命名規則を認識しますか?

単一トークンの名前は lower または upper を返します。区切りの混在や文字大小の混在は mixed を返します。

識別子から構成語はどのように作られますか?

エンジンはアンダースコアとハイフンで切り、次に camelCase の縁(小文字または数字から大文字、頭字語から Titlecase、英字から数字)で切ります。トークンは words 配列で小文字になります。

キャメルケースとパスカルケースの違いは何ですか?

違いは最初の文字だけです。キャメルケースはgetUserNameのように小文字で始まり、パスカルケースはHttpServerのように大文字で始まります。どちらも区切り記号の代わりに大文字で単語の境目を示します。

このツールで別の命名規則に変換できますか?

変換はしません。今の命名規則を判定し、単語を小文字で返します。その一覧を使えば、単語の境目を推測せずに、別の規則で同じ名前を組み立てられます。

アンダースコアと大文字が混ざった名前はどう判定されますか?

混在として報告されます。アンダースコアと語中の大文字、またはアンダースコアとハイフンが1つの名前に同時にあると、判定器は無理にどちらかに決めず、混在と答えます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/dev/identifier-case-detect

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/dev/identifier-case-detect \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"getUserName"}'
{
  "text": "getUserName"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.identifier_case_detect",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

max_chars4096
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

http_status_code は snake_case です。空、 欠落、 不正な識別子は、 黙った空の分割ではなく invalid_input で失敗します。成功した API 呼び出しは $0.002 で課金され、 検証の失敗は課金されません。

識別子の命名規則判定が意味することと、各様式の見分け方

snake_case はすべての文字を小文字で書き、語を 1 本のアンダースコアでつなぎます。kebab-case は同じ仕事をハイフンで行い、 CSS クラス、 URL スラッグ、 content-type のような HTTP ヘッダー名に現れます。SCREAMING_SNAKE_CASE はすべて大文字の snake_case で、 MAX_RETRY_COUNT のような定数と環境キーに予約されます。この判定器は、名前変更ツールが日常出会う 3 つの正直な追加も報告します。アンダースコアで区切られた小文字部分は snake_case、同じ部分が大文字なら SCREAMING_SNAKE_CASE です。秘匿や Python の dunder に使う先頭アンダースコアは様式を名付ける前に除かれるため、 _foo_bar も __init__ も snake_case のままです。

入力契約、語への分割、エラー時の振る舞い

検査する識別子を入れる必須フィールド text を 1 つ持つ JSON 本体を POST してください。表計算、 クエリ文字列、 型付きフォームが列名を変えずに同じ契約を使えるよう、 alias の identifier、 name、 value、 input も受け付けます。数値、 真偽値、 オブジェクト、 配列は拒否され、誤った JSON 本体が単語 true やオブジェクトのダンプにならないようにします。成功時の本体は 5 つの安定したフィールドを返します。case_style は camelCase、 PascalCase、 snake_case、 kebab-case、 SCREAMING_SNAKE_CASE、 lower、 upper、 mixed のいずれかです。word_count はその配列の長さです。text の欠落、空文字列、不正な文字集合はフィールド名を挙げて invalid_input で失敗し、それらの失敗は課金されません。

名前変更ツール、検査器、移行が命名規則判定を使う場面

様式と語の両方を返す判定器があれば、人が各ファイルを指さなくても、変換器は getUserName を get_user_name や GetUserName に組み直せます。バックエンドの移行でも、 OpenAPI 文書、 ORM モデル、 クライアント SDK を揃えるとき、 Python の snake_case 関数、 HTTP の kebab-case ヘッダー、 Java の PascalCase 型という同じ分裂に直面します。スタイル検査とレビュー用ロボットは、著者が snake_case と PascalCase のどちらを意図したかを当てる代わりに、 Http_Server として届いた関数に印を付けられます。教員やプログラミング面接の基盤は、学生に 10 個の識別子の様式を答えさせ、 UserID と user_id を同じ文字列として扱う表計算マクロではなく、このオラクルで採点できます。実装は純粋な parse の tier A なので、成功した各呼び出しは公表された基本料金 $0.002 で、モデルのトークンも外向き通信もなく、無料のブラウザ経路は同じモジュール上で API とバイト単位で一致します。

安全な名前変更とコード変換のパイプライン

書き換える前に各記号を分類すれば、変換器は元の様式を決めつけずに camelCase を snake_case や PascalCase へ直せます。

混在コードベース向けの lint 規則

case_style をその種の記号の規則と比べ、誤った規約で届いた関数、型、 CSS クラス、定数に印を付けます。

文書と教室のための判定基準

見出し用に識別子を読みやすい語へ分け、 camelCase、 snake_case、 SCREAMING_SNAKE_CASE を答えた学生の解答を採点します。

_foo_bar のような先頭アンダースコアはどうなりますか。

秘匿や Python の dunder に使う先頭アンダースコアは様式を名付けるときに無視されるため、 _foo_bar は snake_case です。 identifier フィールドは元の綴りを写し、空の dunder 穴は語として残しません。

無効として拒否される入力は何ですか。

text の欠落、空文字列、文字列以外、空白や他の不正文字を含む名前、先頭または末尾のハイフン、連続ハイフン、文字の無いトークン、 4096 文字を超える本体は invalid_input で失敗します。

識別子の命名規則判定の料金はいくらですか。

ブラウザの道具は無料です。 API 要求は成功した呼び出しごとに前払いの KIT 残高から $0.002 です。 不正な入力は課金されません。

KITの完全なドキュメントを見る →