使用正则快速对多行文本添加引号

目录

背景

在线处理

本地处理

正则表达式

添加双引号

查找目标

替换目标

 表达式解析

VSCode

合并为一行

查找目标

替换目标(置空)

效果

整合

查找目标

替换目标

效果

浏览器处理

控制台

效果


背景

在平时开发时难免会碰到这样的场景,想通过已有的多行文本匹配数据库值或者向后端接口发送数据,若当前文本格式如下图所示时,则需要进一步手动处理。

在线处理

当处于网络环境良好环境下,且数据非敏感时,则可考虑通过在线工具一键处理。

文本加引号 - IT在线工具网

本地处理

如果无法连接网络,而又具有文本编辑器或其它编程工具(如VSCode、NotePad++、SublimeText等),可利用正则表达式来实现对文本的快速处理。

正则表达式

添加双引号

查找目标
^(.*)$
替换目标
"$1",
 表达式解析

^:匹配行的开头。

(.*)$:捕获任意数量的字符,尽可能多地匹配(贪婪匹配)。这里的 .* 会匹配每一行的所有内容,$表示匹配行尾。

"$1",:将正则匹配到的值使用 " " ,(双引号及逗号)包裹起来,$1 表示正则匹配的第一个个捕获组

VSCode

此处使用VSCode演示,其它工具操作方式大同小异。在VSCode中使用Ctrl+H快速调出替换工具栏,并填写上述的正则表达式,具体操作如下:

最终效果如下图所示 ,需要注意最后一行也被加上了逗号,使用时按需删除即可。

合并为一行

上一步中已经完成了对多行文本双引号的添加,但是如果想要在此基础上将多行转为一行应该如何处理呢?同样可以使用正则表达式实现。

查找目标

(\r?\n)

替换目标(置空)

这一步中替换目标不用填入任何表达式,置空即可。

效果

最终效果如下图所示 ,需要注意尾部也被加上了逗号,使用时按需删除即可。

整合

上述两步操作可通过修改查找目标的表达式来一并实现,具体如下:

查找目标

^(.*)(\r?\n|$)

替换目标

"$1",

效果

效果与上述两步操作结果一致,需要注意尾部也被加上了逗号,使用时按需删除即可。

浏览器处理

如果当前既没有网络,也没有相关工具,那么还可以通过浏览器控制台使用执行JS代码的方式进行操作,具体操作如下:

控制台

在浏览器页面按下F12快捷键出现控制台页面,并粘贴如下代码,特别注意:文本需按照原有的格式粘贴,即文章开头中图片内的格式,并且内容需要使用 ` ` 引起来(ESC键下的符号)。

// 待处理的多行字符串
let multiLineText = `64CBF7e01BE72761
ee768b0f191Fe753
a710233bE38D09A9d251a70
7D108A48Ff335696
02876545b3Cc37Ad`;

// 将多行字符串拆分成数组
let lines = multiLineText.split('\n');

// 处理每一行,添加双引号和逗号(最后一行除外)
let formattedLines = lines.map((line, index) => {
    if (index === lines.length - 1) {
        return `"${line}"`; // 最后一行不加逗号
    } else {
        return `"${line}",`; // 其他行加逗号
    }
});

// 将处理后的行合并成一个字符串
let formattedText = formattedLines.join('\n');

// 输出结果
console.log(formattedText);

效果

调整好需要处理的文本后,按下回车即可。

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值