文本反转
把文本按字符、按词、按行或每行内反转,正确处理 emoji 代理对与组合字符(é 的 e + 组合符号算一个字符),不会把字符拆成乱码。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
原始文本
反转方式
反转结果
按字符反转时,emoji、组合字符与全角字符都各自算一个字符。
输入文本后立即显示反转结果。
这个工具能做什么
- 写藏头诗、反转文字游戏或验证「反转后是否相等」的回文时,按字符反转中文与英文混排的句子。
- 调试字符串处理逻辑:确认 emoji(👍🏽)和带声调的字母(é)反转后仍然完整,而不是变成两个问号。
- 把列表按行倒序,例如把时间倒序的日志整理成正序,再贴回文件。
- 每一行内部反转,快速造出对照文本,检查编码或字体渲染是否正常。
示例
输入
Hello 世界 👋
输出
👋 界世 olleH
按字符反转:emoji 是代理对,会被当成一个字符整体移动,所以不会出现半个码元导致的乱码。
常见问题
为什么普通 JS 反转 emoji 会乱码?
JavaScript 字符串是 UTF-16 编码,emoji(如 👋)由两个码元组成,按码元反转会把代理对拆开,得到两个无法显示的字符。本工具按 Unicode 字形簇反转,代理对、肤色修饰符和 ZWJ 连字都整体移动。
é 会变成一个 e 加一个撇吗?
不会。é 有两种写法:预组合的单码点 U+00E9,以及 e + U+0301 组合符号。两种写法都会被视为一个字形簇,反转后保持原样。
按词反转时空格会怎么处理?
词的位置互换,空白保持原位。例如 one two three 会得到 three two one——中间的双空格仍然出现在原来的位置,不会跟着词一起搬走。
按行反转会保留 CRLF 吗?
行序会倒过来,换行符统一输出为 LF。如果原文件必须是 CRLF,可以用「文本清理」工具把结果再转回 CRLF。
支持多长的文本?
浏览器本地处理,几十万字符的文本也能即时完成。反转本身不做任何联网或存储,文本不会离开浏览器。
关键词:reverse textreverse stringreverse linesreverse wordsemoji reverse文本反转字符串反转按行倒序倒序排列emoji 反转