Sublime怎么把多行文本转成数组?数据构造一看就会

浅浩酱_2465

浅浩酱_2465

2026-06-22

742人浏览

原创

sublime text将多行文本转为["a", "b", "c"]格式需两轮正则替换:先用^(1;须提前清理空行、尾部空格及统一lf换行符。$]+)$→"$1"每行加引号,再用\r?\n→,补逗号,最后手动加[ ↩

sublime怎么把多行文本转成数组?数据构造一看就会

Sublime Text 本身不生成数组,它只负责把文本“变成看起来像数组”的字符串——你真正要的,是用正则把每行包上引号、加逗号、套方括号。关键不是功能强弱,而是别漏掉换行符类型、空行、尾部空格这三处硬伤。

怎么用正则把多行转成 ["a", "b", "c"] 格式

这是最常用也最容易翻车的场景:你有一堆纯文本行,想快速转成 JSON 风格字符串数组。不能靠 join_lines,得用两轮正则替换:

  • 第一轮:选中所有目标行 → 打开替换面板(Ctrl+H)→ 开启 .*(正则模式)→ 查找 ^(.+)$ → 替换为 "$1"。注意:^ 和 $ 默认不跨行,所以每行单独匹配,$1 就是该行内容本身
  • 第二轮:查找 \r?\n → 替换为 , (逗号+空格)。这样每行后都加了分隔符,但最后一行末尾也会多一个 ,
  • 手动在开头加 [,结尾加 ];如果怕手抖,可以先全选 → Ctrl+Shift+P → 输入 insert at beginning of line 插入 [,再用类似方式在末尾补 ]

示例原始文本:

apple
banana
cherry

替换后得到:["apple", "banana", "cherry"]

Sublime Text Build Linux版
Sublime Text Build Linux版

Sublime Text Linux x86-64 deb 安装包。官方也提供 rpm、tar.xz 和软件源安装方式。

下载

为什么 Ctrl+J 不能用来构造数组

join_lines 是拼接行为,不是结构化转换。它默认加空格,且完全无视语法边界:

  • 遇到带注释的代码,比如 // item1 换行 item2,Ctrl+J 会变成 // item1 item2,注释吞掉下一行
  • JSON 数组元素若含引号或嵌套结构,Ctrl+J 直接破坏格式,例如 "name": "foo" 换行 "age": 25 会被压成一行但缺逗号,JSON 解析失败
  • 它不处理空行——如果原始数据里有空行,Ctrl+J 会把它们变成 "", ,导致数组里混入空字符串

Windows 用户特别注意换行符和 jq 路径

从 Excel、微信、日志粘贴进来的文本,换行符大概率是 \r\n;而 Sublime 默认正则 \n 匹配不到它:

  • 查换行必须写 \r?\n,否则第二轮替换会漏掉部分行
  • 如果你后续要用 jq 验证生成的数组是否合法,确保系统 PATH 包含 jq.exe 所在目录;否则 Build System 报错 jq: command not found 不是插件问题,是环境没配好
  • 文件换行符建议统一为 Unix(LF):菜单栏 File → Line Endings → Unix (LF),省得每次正则都得写 \r?\n

空行和尾部空格不清理,数组就废一半

这两类干扰项不会报错,但会让结果不可用:

  • 空行会被 ^(.+)$ 忽略(因 .+ 不匹配空行),但第二轮 \r?\n 替换时,空行仍会产出额外的 , ,最终变成 ["a", , "b"] —— 这不是合法 JSON
  • 行尾空格会导致引号内出现多余空格,比如 apple<space></space> 变成 "apple ",后续解析可能出错
  • 清理方案:先执行 Ctrl+Shift+P → Trim Trailing White Space;再用正则 ^\s*$\n 全局替换为空,干掉所有“伪空行”

真正麻烦的从来不是怎么敲快捷键,而是看到一段换行文本时,下意识先检查它是不是干净的——有没有空行、空格、混合换行符。这些不提前扫清,后面所有正则都白做。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime sublime text

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
FrankenPHP集成Laravel详细教程
FrankenPHP集成Laravel详细教程

本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

2026.10.08

40

20

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

2026.09.30

140

10

LLVM RISC-V参数配置教程
LLVM RISC-V参数配置教程

本专题介绍LLVM对RISC-V基础ISA和扩展的支持方式,涵盖RV32、RV64、标准扩展、实验性扩展、厂商扩展、-menable-experimental-extensions和版本差异。

2026.09.30

140

14

LLVM IR中间表示入门指南
LLVM IR中间表示入门指南

本专题整理LLVM IR的核心概念,包括中间表示作用、模块结构、函数、基本块、SSA形式、类型系统和常见语法,帮助新手理解LLVM编译流程中的关键层。

2026.09.30

100

12

PDF转图片方法
PDF转图片方法

需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

2026.09.30

100

26

PixTV AI视频生成与无限画布创作
PixTV AI视频生成与无限画布创作

PixTV专题整理AI视频与视觉内容创作相关功能使用教程,涵盖AI生图、视频生成、无限画布、多模型创作、素材管理、声音音乐及视频剪辑等功能,帮助用户快速掌握PixTV从创意到成片的完整制作方法。

2026.09.29

120

15

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

2026.09.23

320

15

Buffalo框架路由与请求处理实操指南
Buffalo框架路由与请求处理实操指南

本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

2026.09.23

220

15

Buffalo框架零基础入门教程
Buffalo框架零基础入门教程

本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

2026.09.23

180

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程