🔧Toolify

反轉文字生成器 — 翻轉字元、單字或行

輸入任意文字即時反轉。提供三種模式:反轉字串中的所有字元、反轉單字順序(保持單字完整),或反轉行的順序。工具能正確處理跨越多個碼點的 Unicode 表情符號和 CJK 字元。

反轉輸出
0 characters

運作原理

反轉文字的實際用途

字元反轉最廣為人知的用途是回文檢測:一個正讀反讀都相同的單字或短語,例如「racecar」(賽車)或「A man a plan a canal Panama」。將字串反轉後與原文比較——忽略空格和標點——是檢驗回文的經典演算法方法,使用本工具可在數秒內手動完成驗證。

漢字是每個字一個獨立的碼點,因此字元反轉在技術上對 CJK 文字是正確的,但反轉後的中文文字往往語義不通——因為漢字的意義依賴於順序組合,而非線性可讀。如果您處理的是日文或直排文字,請注意字元反轉會將橫排文字倒序排列,這在某些創意場景下可能正是所需效果。

在社群媒體、遊戲和創意寫作中,反轉文字可製造刻意的混淆或視覺趣味。謎題設計者將單字反轉作為一種簡單密碼——例如將「stressed」(壓力)反轉得到「desserts」(甜點),這種語義上的巧合頗具趣味。QR 碼、條碼及其他機器可讀格式有時會以反轉順序編碼內容,作為輕量防竄改措施。單字順序反轉在自然語言處理實驗中也很有用,例如測試語言模型是否真正理解句法,還是僅在做模式匹配。

對於資料工程,行順序反轉(第三種模式)在需要從最新到最舊閱讀日誌或追加寫入檔案時很實用。命令列工程師通常在 Unix 上使用 `tac` 或 `tail -r`,但在瀏覽器或無程式碼環境中工作時,本工具無需 shell 存取即可提供相同效果。

字元反轉的工作原理——為何比看起來更複雜

按位元組或 UTF-16 碼元遍歷來樸素地反轉字串,會破壞任何需要多個單元才能表示的字元。在 JavaScript 中,`'😀'.split('').reverse().join('')` 會產生亂碼序列,因為該表情符號以代理對(兩個 UTF-16 碼元)形式儲存。本工具使用 `Array.from()` 正確遍歷 Unicode 純量值(碼點),而非原始碼元,確保表情符號和補充平面中的字元在反轉後保持完整。

即使碼點級別的正確反轉也存在邊緣情況:組合字元(如重音符和變音符)是獨立的碼點,跟隨在基礎字元之後。按碼點反轉「café」時,組合尖音符會被放到「e」前面,技術上附著在空格上——產生「éfac」而非預期效果。對於大多數實際用例這無關緊要,但如果您處理大量使用組合符號的語言文字(越南語等)則值得注意;使用預組合 Unicode(NFC 形式)的中文文字不受此影響。

單字反轉會保留單字間的空白序列,而不是將其折疊為單個空格。這意味著如果輸入中單字間有雙空格或定位字元,反轉後的輸出中這些空白序列也會保留,只是位於反轉後的位置。這是有意為之——避免意外改變表格式或欄式文字的視覺版面。

用於記錄分析和資料處理的行反轉

追加寫入日誌、事件串流和有序匯出檔案的最新條目都在底部。在排查當機或審查最近幾次變更時,您通常希望最新條目排在最前面。行反轉無需任何排序或時間戳記解析,即可將檔案末尾移至頂部。

這一模式在將升序資料轉換為降序資料時同樣有用,尤其當目標系統期望最新優先的排序時。假設從財務系統匯出的 CSV 按時間順序排列交易記錄——反轉行(標題行需單獨處理)即可將最新交易移至頂部,便於匯入到按遇到順序處理記錄的系統。

需要從末位重新排到首位的編號清單也可從行反轉中受益。一個前十名清單反轉後變成末十名清單,第十名排在最前,第一名排在最後——適用於倒序展示、倒數計時,或帶有諷刺意味的內容。

常見問題

工具能正確處理表情符號嗎?

能。工具使用 Array.from() 遍歷 Unicode 碼點,而非原始 UTF-16 碼元,因此表情符號(包括國旗等多碼點序列)在反轉後不會出現亂碼。

反轉字元和反轉單字有什麼區別?

字元反轉會翻轉整個字串,使最後一個字元成為第一個。單字反轉保持每個單字完整,但將最後一個單字放到最前。'hello world' 在字元模式下變為'dlrow olleh',在單字模式下變為'world hello'。

單字反轉會影響附在單字上的標點嗎?

直接附在單字上(沒有空格)的標點會隨該單字移動。'Hello, world!' 在單字反轉模式下變為'world! Hello,'——逗號隨'Hello'移動,驚嘆號隨'world'移動。

可以反轉日文或中文嗎?

可以。字元反轉對 CJK 字元有效,因為每個漢字/表意文字都是單個碼點。結果逐字從右到左排列,是否有意義取決於具體內容。

有長度限制嗎?

沒有強制限制。長文字完全在瀏覽器記憶體中處理。在現代硬體上,處理數百萬個字元幾乎是即時的。

文字會傳送到伺服器嗎?

不會。所有處理在 JavaScript 中本機執行。您的文字永遠不會離開瀏覽器。

「反轉行」如何處理末尾換行符?

每個換行符是行分隔符。輸入末尾的換行符在反轉後會在輸出開頭產生一個空行。如果不需要,直接刪除多餘的空行即可。

可以用這個工具建立回文嗎?

您可以透過貼上一個單字並查看反轉後的輸出是否與輸入相符來檢驗它是否是回文。要建立回文,將原文與其字元反轉版本拼接即可(例如'race' + 'ecar' = 'raceecar')。

相關工具

最後更新:

看看 AI 提示詞 →