大文字小文字と命名規則
テキスト処理処理はすべてブラウザ内で完結します。データは送信されません
入力
出力
識別子をある書き方から別の書き方へ変えるとき、難しいのは接続記号ではなく語の分割です。fooBarBaz、foo_bar_baz、FOO_BAR を受け取ったら、まずどれも foo・bar・baz の3語だと気づく必要があります。連続する大文字はとくに間違えやすく、HTTPServer は HTTP + Server に分けるべきで、4文字に分けても1語にまとめてもいけません。このツールはその規則で語を分割し、8つの規則のいずれかに組み直します。
機能
- 8つの規則を相互変換:camelCase、PascalCase、snake_case、kebab-case、CONSTANT_CASE、タイトル化、すべて大文字、すべて小文字
- 語の分割は fooBarBaz、foo_bar_baz、foo-bar-baz、FOO_BAR と、それらが混ざった入力にも対応
- 連続する大文字は語ごとに分割:HTTPServer は HTTP + Server、XMLHttpRequest は XML + Http + Request
- 英字と数字の境界も切ります:utf8String は utf8 + String、MP3Player は MP3 + Player
- 行ごとに独立して変換するので、識別子の列を貼り付けても行の構造が崩れません
- 入力すればすぐ結果が出ます。ボタンを押す必要はありません
使い方
- 変換先の記法を選びます
- 識別子を入力欄に貼り付けます(1行に1つでも構いません)
- 結果はリアルタイムで表示されます。「コピー」で取り出せます
よくある質問
- 連続する大文字はどう分割されますか?
- 規則は「連続する大文字 + 大文字の後ろに小文字」のとき、最後の大文字の前で切るというものです:HTTPServer は HTTP と Server、XMLHttpRequest は XML・Http・Request に分かれます。この規則がないと、多くの実装が XMLHttpRequest を XMLHttp + Request にしてしまいます。
- 日本語や中国語はどう扱われますか?
- 漢字は語の分割に加わらず、そのまま語の中に残ります。そのため「注文ID」を CONSTANT_CASE に変換すると「注文ID」のままになり、真ん中で切られることはありません。
- __init__ を camelCase にすると init になるのはなぜですか?
- アンダースコアは区切り文字で、その両側の空の語は捨てられるため、init という1語だけが残り、規則どおり先頭が小文字になります。この結果が意図と合わないなら、その識別子はアンダースコアで意味を表しているので、変換前に確認が必要です。
- すべて大文字とすべて小文字は、なぜ余分な空白を消さないのですか?
- この2つは行の文字そのものに作用し、語の分割はしません。語に分けて組み直すと、行頭のインデントや行内の余分な空白まで一緒に詰めてしまい、それはこの2つの役割ではないからです。
関連ツール
テキスト整形
テキスト処理ログや表からコピーした1列を整形します。重複行の削除、並べ替え、空行・前後の空白・行番号の削除、空白のまとめを個別に切り替えできます。
文字数カウント
テキスト処理日本語や中国語は字数、英語は単語数で別々に数え、文字数・行数・バイト数・読了時間も出します。すべてブラウザ内で処理し、送信しません。
テキスト差分
テキスト処理2つのテキストを行ごとに比較し、追加・削除・未変更の行をハイライト表示します。変更は最小差分で整列し、すべてブラウザ内で処理します。
簡体字・繁体字変換
テキスト処理中国語を簡体字と繁体字の間で相互変換します。常用語は語単位で置換し、残りは最も一般的な字形を採るため、一部は人の確認が必要です。
正規表現テスト
テキスト処理ブラウザで正規表現を試せます。一致のリアルタイムハイライト、名前付きキャプチャグループ、置換プレビューに対応し、壊滅的なバックトラックも防ぎます。
Markdown プレビュー
テキスト処理左に Markdown を書くと右にリアルタイムで描画します。貼り付けた HTML は文字として表示し、画像の外部リクエストも起こしません。