notepad++ 无内置行序反转功能,需借助textfx插件(仅支持x86版)、python脚本(跨平台推荐)或excel等外部工具实现;正则“伪反转”仅适用于小文件且不稳定。

Notepad++ 里没有内置的“反转行序”功能
它不像 Vim 或命令行工具那样原生支持 sort -r 或 :g/^/m0 这类操作。直接按“反转”按钮?不存在。必须借助插件或外部工具链实现,否则只能手动剪切粘贴——那不叫快速。
用 TextFX 插件是最轻量的方案(但已停更,需手动安装)
TextFX 曾是 Notepad++ 经典插件,提供 TextFX Tools → Insert → Reverse lines 功能。现在官方插件管理器里搜不到,得去 GitHub 找旧版 TextFX.v0.27.zip,解压后把 TextFX.dll 放进 Notepad++ 的 plugins/ 目录,重启生效。
- 只适用于 x86 版 Notepad++(64 位版本不兼容)
- 选中要反转的文本再操作,全文件反转就全选
Ctrl+A - 如果菜单没出现,检查插件是否加载成功:
Plugins → Plugin Manager → Show Plugin Manager里看不到 TextFX,说明路径或架构不匹配
用 Python 脚本调用外部命令(推荐给常用户)
更稳定、跨平台、可复用。Notepad++ 支持运行外部脚本,把以下内容存为 reverse_lines.py:
import sys
for line in reversed(sys.stdin.readlines()):
print(line, end='') # 注意 end='',避免重复换行
然后在 Notepad++ 中:Run → Run... (F5),输入:
python "C:\path\to\reverse_lines.py" "$(FULL_CURRENT_PATH).tmp" && move /Y "$(FULL_CURRENT_PATH).tmp" "$(FULL_CURRENT_PATH)"
- Windows 下用
move,macOS/Linux 换成mv -
$(FULL_CURRENT_PATH)是 Notepad++ 内置变量,代表当前文件绝对路径 - 脚本不处理编码,若文件含中文,建议保存为 UTF-8 without BOM,并在 Python 前加
chcp 65001 >nul &&
用正则表达式“伪反转”(仅限小文件,且有局限)
纯靠 Notepad++ 自带功能,本质是多次交换首尾行,不是真反转。适合临时应急、行数少于 20 行的场景。
- 先用
Ctrl+H打开替换,勾选Regular expression - 查找:
^(.*\R)(?=(?:.*\R){1,100}(.*)$),替换为:$2\r\n$1(效果不稳定,依赖行数预估) - 实际更可靠的做法是:复制全部 → 粘贴到 Excel 一列 → 排序(降序)→ 复制回 Notepad++
真正可靠的行反转,绕不开外部程序或插件。别在正则里死磕,那不是它的设计用途。











