単語ごとに文字を反転:Hello world が olleH dlrow になる
文章を貼り付けると、Hello world は olleH dlrow になり、Hello は先頭のままです。言葉遊びや鏡文字、逆さ読みのネタを友人に送るときに使えます。
単語ごとの反転が役立つ場面
言葉遊びでは、各単語を逆さにしても語の長さと前後の文脈は残るため、読者は元の文を推測できます。文章全体を逆にするよりずっと読みやすくなります。SNS で見かける「逆から読む」ネタも同じ効果です。
文字列処理の確認にも使えます。検索欄やフィルタ、鏡文字表示が、文字の並びが崩れた入力にどう反応するかを見るときです。単語ごとの反転は語の区切りを保つため、全体反転より元の文と比べやすくなります。
- 言葉遊び・鏡文字・アナグラムの下ごしらえ
- SNS 向けの逆さ読みネタ
- 検索や入力欄の文字列処理の確認
意外な結果を避ける使い方
単語はスペースと改行で区切られ、各単語の中の文字だけが逆順になります。スペースや記号、改行の位置は変わりません。単語の末尾にくっついた記号は先頭に移動するため、Hello! は !olleH になります。これは文字単位の反転として正常です。
英語と日本語が混ざる場合、日本語には空白がないため、連続した日本語は1つの「単語」としてまとめて反転し、末尾の句読点が先頭に来ます。文全体の鏡文字としては狙いどおりですが、日本語の語順を保ちたいなら、先に区切りを入れてください。
- 記号は単語と一緒に反転し先頭へ移動する
- 連続した日本語は1語として扱われる
- 語順を保ちたいときは先に区切りを入れる
使えない場面と代替手段
双方向テキスト(bidi)の処理ではなく、Unicode の結合文字の並べ替えも行いません。アクセント付きの文字や、複数のコードポイントでできた絵文字は、反転すると崩れることがあります。多言語の組版や絵文字のテストでは、期待と違う結果になり得ます。
選択した単語だけの反転、語長での並べ替え、記号の位置を固定したままの反転もできません。細かい制御が必要なら、一括処理のツールではなく、スクリプトか正規表現置換に対応したエディタを使ってください。
- 結合文字や絵文字の並びは保証されない
- 一部だけの反転はできない
- 精密な制御はスクリプトか正規表現で
よくある質問
文章全体を逆にするのと何が違いますか?
全体を逆にすると単語の順番も入れ替わり、最後の行が先頭になります。ここでは各単語の中の文字だけを反転するため、Hello world は olleH dlrow になり、Hello は先頭のまま、改行も動きません。
日本語の文はどうなりますか?
日本語は空白で区切らないため、連続した文字列が1つの単語としてまとめて逆順になり、句読点も先頭側に移動します。逆さ読みのネタとしては狙いどおりですが、英語が混ざる場合はスペースの位置で区切られます。
感嘆符が単語の前に来るのはなぜですか?
反転は1文字単位で行われ、記号は単語にくっついているため同じ語の一部とみなされ、先頭に来ます。記号を元の位置に残したい場合は、反転前に記号をスペースで区切っておき、あとで連結してください。
関連ツール:単語ごとに文字を反転