回文の判定と生成
テキスト処理はすべてブラウザ内で完結します。データは送信されません
入力
ファイルをここにドロップすると読み込めます
出力
「たけやぶやけた」はそのままでも回文ですが、英文では大文字小文字・句読点・空白を無視して初めて回文になります。3 つの「無視」は決め打ちせずスイッチにしました(既定はすべてオン)。 判定は UTF-16 符号単位ではなくコードポイントで行うため、絵文字や結合文字が壊れることはありません。回文でない場合は両方向に補えます。`abc` は後ろに補うと `abcba`、前に補うと `cbabc` になり、いずれも最短の補い方です。最長の回文部分文字列も表示できます。 計算はすべてブラウザ内で完結し、通信もアップロードも記録もありません。
機能
- 1 行に 1 つの語や文。行ごとに「回文かどうか」を判定
- 大文字小文字・句読点(和文・英文・全角)・空白を個別に無視可能
- 両方向の補完:後ろ(abc → abcba)と前(abc → cbabc)
- 最長の回文接尾辞/接頭辞による最短の補完
- 最長の回文部分文字列とその長さを表示可能
- コードポイント単位の判定で、絵文字や結合文字も壊れない
- 各行が独立したブロック。行ごとのコピーも一括コピーも可能
使い方
- 判定したいテキストを 1 行ずつ貼り付けます
- 必要に応じて「大文字小文字・句読点・空白を無視」を切り替えます
- 補完や最長部分文字列が必要ならオプションをオンにします
- 結果は行ごとに表示され、行末のボタンでコピーできます
よくある質問
- なぜ「無視」が既定でオンなのですか?
- 人は文を読むとき、大文字小文字や句読点を数えないからです。1 文字ずつ厳密に比較したいときは 3 つともオフにしてください。
- 絵文字は壊れませんか?
- 壊れません。判定は Unicode のコードポイント単位なので、絵文字は 1 文字として扱われます。UTF-16 符号単位で比較するとサロゲートペアが分割されてしまいます。
- 補完が 2 方向あるのはなぜですか?
- `abc` は `abcba` にも `cbabc` にも補えます。元の文字列を左に置くか右に置くかで変わるため、両方を提示します。いずれも最短の補完です。
- データは送信されますか?
- いいえ。すべてブラウザのメモリ内で計算し、通信も記録もありません。オフラインでも使えます。
関連ツール
テキスト逆順
テキストテキストを行内・全体・行順・語順で逆順にします。絵文字や結合文字は壊れません。処理はすべてブラウザ内で完結します。
テキスト整形
テキストログや表からコピーした1列を整形します。重複行の削除、並べ替え、空行・前後の空白・行番号の削除、空白のまとめを個別に切り替えできます。
正規表現テスト
テキストブラウザで正規表現をテスト:一致のハイライト、キャプチャグループ、置換プレビュー、バックトラック対策。JavaScript・Python・Java・Go・PHP のコード生成も。
テキスト差分
テキスト2つのテキストを行ごとに比較し、追加・削除・未変更の行をハイライト表示します。変更は最小差分で整列し、すべてブラウザ内で処理します。
文字数カウント
テキスト英語は単語数、日本語や中国語は字数で別々に数えます。文字数・行数・バイト数・読了時間も同時に出し、すべてブラウザ内で処理するので送信しません。
命名規則の変換
テキスト14 の命名規則の間で識別子を変換します。fooBarBaz や FOO_BAR のような混在も語に分解し、連続する大文字も語ごとに切ります。