VSCode 是一个很方便的文本编辑器,可以高亮显示代码,可以快速进行文本查找替换等。并且它拥有丰富的插件库,通过插件库,它可以支持代码调试、更丰富的高亮显示(如 csv 的每一列文字颜色都不一样)。
查找替换
查找
按 Ctrl + F 打开查找搜索框,输入内容(如 1000)后,文件中将会高亮符合查找关键字的内容。有一个颜色不太一样的,表示当前聚焦于那。

在输入框中按回车可以聚焦于下一个

替换
按 Ctrl + H 打开替换搜索框,相较于搜索框,会多一个替换输入框,如下所示

在替换输入框中,输入要替换的目标文本,如 1234,按下回车可以将当前聚焦的文本,替换为目标文本,如下所示

按 Ctrl + Alt + Enter 或者点击后面的按钮,可以替换所有

正则表达式
正则表达式可以按照规则匹配文本,匹配的关键是规则而不是具体内容,这样我们可以一次性选中很多我们想要的文本,例如手机号、邮箱。具体内容参照菜鸟教程,此处讲解几个简单的实例。
提取关键词
在做测试时,为了方便观察结果,文件的行中会包含该参数的含义,如下所示。但我们可能需要将数据提取出来,放到 excel 中分析或者画图。

分析这段正则表达式 P1 = (.+?);
-
P1 =很好理解,匹配了具体的内容 -
(.+?)需要拆开理解-
():括号内的内容是我们需要的,后续我们可以通过变量来将内容提取出来。 -
.+:.表示任意字符,+表示,匹配前面的子表达式一次或者多次,它跟在.的后面,意味着匹配一次或者多次任意字符,这样我们可以不关注数值的长度,即便它发生变化,也能匹配上。
-
-
;与之前的P1 =类似,也是匹配具体的内容
整体来看,我们要找的内容为:前面是 P1 = ,后面是 ;,中间可以是一个或者多个任意字符。在 VSCode 中查找,可以看到符合这种规则的文本如下

诶?为什么一整行都被选中了呢?因为它被拆分为这三部分 P1 = , 10000000000;P2 = 136.38;V1 = 4095;V2 = 4095, ;,它完美符合上述的所有规则。但如果我在 ; 的后面再接上 P2 = 呢?结果就会变为这样
P1 = (.+);P2 =

它限定了:
-
前面是
P1 = -
中间是一个或多个任意字符
-
后面是
; P2 =
符合这种规则的只有第一列的内容,同理我们将正则表达式补全为下面这样,他就能选中所有行。
P1 = (.+);P2 = (.+);V1 = (.+);V2 = (.+);

之前说到用 () 表示里面的内容是我们需要的,怎么将结果提取出来呢?使用 $1 提取第一个括号内的内容,$2 提取第二个括号内的内容,往下同理。
假如我们想让数据替换为 10000000000, 136.38, 4095, 4095,可以用如下表达式作为替换目标,将表达式粘贴到替换目标中,按 Ctrl + Alt + Enter 或点击第二个按钮就可以全部替换
$1, $2, $3, $4
替换后结果如下

同样的,如果我们想让 V1, V2 提到前面来,中间的间隔符使用 |,即数据替换为 V1 | V2 | P1 | P2,我们可以将表达式改为下面这样后进行替换
$3 | $4 | $1 | $2
