小毅
发布于 2024-04-08 / 4 阅读
0
0

VScode 介绍

VSCode 是一个很方便的文本编辑器,可以高亮显示代码,可以快速进行文本查找替换等。并且它拥有丰富的插件库,通过插件库,它可以支持代码调试、更丰富的高亮显示(如 csv 的每一列文字颜色都不一样)。

查找替换

查找

Ctrl + F 打开查找搜索框,输入内容(如 1000)后,文件中将会高亮符合查找关键字的内容。有一个颜色不太一样的,表示当前聚焦于那。

2024-04-08T23:50:58.303452428-aeeileye.png

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

2024-04-08T23:52:30.744824321-izljjtzr.png

替换

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

2024-04-08T23:53:35.707988654-hccdprqf.png

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

2024-04-08T23:54:25.954143578-lzbgqder.png

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

2024-04-08T23:55:27.354885412-pyerdscu.png

正则表达式

正则表达式可以按照规则匹配文本,匹配的关键是规则而不是具体内容,这样我们可以一次性选中很多我们想要的文本,例如手机号、邮箱。具体内容参照菜鸟教程,此处讲解几个简单的实例。

提取关键词

在做测试时,为了方便观察结果,文件的行中会包含该参数的含义,如下所示。但我们可能需要将数据提取出来,放到 excel 中分析或者画图。

2024-04-08T23:21:23.763922110-qnmydktr.png

分析这段正则表达式 P1 = (.+?);

  • P1 = 很好理解,匹配了具体的内容

  • (.+?) 需要拆开理解

    • () :括号内的内容是我们需要的,后续我们可以通过变量来将内容提取出来。

    • .+. 表示任意字符,+ 表示,匹配前面的子表达式一次或者多次,它跟在 . 的后面,意味着 匹配一次或者多次任意字符,这样我们可以不关注数值的长度,即便它发生变化,也能匹配上。

  • ; 与之前的 P1 = 类似,也是匹配具体的内容

整体来看,我们要找的内容为:前面是 P1 = ,后面是 ;,中间可以是一个或者多个任意字符。在 VSCode 中查找,可以看到符合这种规则的文本如下

2024-04-08T23:35:49.265953825-ptlijmwl.png

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

P1 = (.+);P2 =

2024-04-08T23:38:20.803226657-uatioaig.png

它限定了:

  • 前面是 P1 =

  • 中间是一个或多个任意字符

  • 后面是 ; P2 =

符合这种规则的只有第一列的内容,同理我们将正则表达式补全为下面这样,他就能选中所有行。

P1 = (.+);P2 = (.+);V1 = (.+);V2 = (.+);

![image-20240408232711694](file:///C:/Users/XiaoYi/AppData/Roaming/Typora/typora-user-images/image-20240408232711694.png?lastModify=1712591842)

之前说到用 () 表示里面的内容是我们需要的,怎么将结果提取出来呢?使用 $1 提取第一个括号内的内容,$2 提取第二个括号内的内容,往下同理。

假如我们想让数据替换为 10000000000, 136.38, 4095, 4095,可以用如下表达式作为替换目标,将表达式粘贴到替换目标中,按 Ctrl + Alt + Enter 或点击第二个按钮就可以全部替换

$1, $2, $3, $4

替换后结果如下

2024-04-08T23:45:53.191290887-gwcrnadl.png

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

$3 | $4 | $1 | $2

2024-04-08T23:46:52.662927069-jhejgqjd.png


评论