Ctrl + Shift + P 搜trim trailing whitespace 同时给多行行尾添加字符 选中需要编辑的行,shift + alt + i
跳转到行首和行尾: ctrl+home; ctrl+end
shift+alt 鼠标多行选中
字体放大缩小 ctrl+“+/-”
ctrl+g 输入行号跳转
打开终端ctrl + ~
前进后退
git graph打开失败解决:关闭所有的code,然后执行code --no-sandbox就可以
ctrl+k+0折叠当前文件里面的所有内容,ctrl+k+j展开所有的内容,其他的点当前的三角符号就可以了
搜索文件 :Ctrl + P打开搜索框,删 “>”,输入文件名
让文件显示自动换行
ctrl+shift+p,打开命令窗口;输入settings,打开open user settings commly used,直接ctrl+f,搜索wrap,找到editor: word wrap 将word wrap的off改成on,即可换行了- 关闭文件 ctrl+w
- 搜索通配符匹配
VS Code 中存在两套完全独立的匹配规则体系,适用场景不同,很多人容易混淆,下面分别整理规则并附上典型示例。
一、Glob 通配符(文件/路径匹配)
适用场景
- 快速打开文件(
Ctrl+P)的文件名搜索 - 全局搜索(
Ctrl+Shift+F)的「要包含的文件」「要排除的文件」 - 配置文件中的文件排除规则(如
files.exclude、search.exclude)
核心规则与示例
| 符号 | 规则说明 | 示例 | 匹配效果 |
|---|---|---|---|
* | 匹配单个目录层级内的任意字符,不跨目录(不匹配路径分隔符/) | *.js | 匹配当前目录下所有.js文件,如app.js,不匹配src/app.js |
? | 匹配单个任意字符(不匹配/) | test?.txt | 匹配test1.txt、testA.txt,不匹配test12.txt |
** | 匹配任意层级的目录,可跨路径 | **/*.js | 匹配项目所有层级下的.js文件,如src/utils/app.js |
[] | 字符集匹配,匹配括号内任意一个字符,支持范围写法 | [a-z].txt | 匹配a.txt、b.txt…z.txt |
{} | 多模式并列,匹配其中任意一个模式,逗号分隔 | *.{js,ts,vue} | 匹配所有.js、.ts、.vue文件 |
! | 取反,排除匹配的文件(需配合包含规则使用) | !*.test.js | 在匹配结果中排除所有.test.js文件 |
/开头 | 表示相对于项目根目录的路径 | /src/*.js | 只匹配根目录下 src 文件夹里的.js文件 |
常用组合示例
src/**/*.{ts,tsx}:匹配 src 目录下所有层级的 ts/tsx 文件**/node_modules/**:匹配所有层级的 node_modules 目录及其内部所有文件!src/assets/**:排除 src/assets 目录下的所有文件
二、正则表达式(文本内容搜索替换)
适用场景
文件内字符串搜索、批量替换,需要点击搜索框右侧.*按钮(快捷键Alt+R)开启。VS Code 使用 JavaScript 正则引擎,常用元字符规则如下。
1. 基础匹配元字符
| 符号 | 规则说明 | 示例 | 匹配效果 |
|---|---|---|---|
. | 匹配任意单个字符(除换行符) | a.c | 匹配abc、a1c、a@c |
\d | 匹配单个数字(0-9) | id_\d | 匹配id_0、id_9 |
\D | 匹配单个非数字字符 | — | — |
\w | 匹配单个单词字符(字母、数字、下划线) | — | — |
\W | 匹配单个非单词字符 | — | — |
\s | 匹配单个空白符(空格、制表符、换行等) | — | — |
\S | 匹配单个非空白字符 | — | — |
\ | 转义符,让特殊符号变成普通字面量 | \.\[\* | 匹配真实的.[*字符 |
2. 量词(控制重复次数)
| 符号 | 规则说明 | 示例 | 匹配效果 |
|---|---|---|---|
* | 匹配前面的字符 0 次或多次 | ab*c | 匹配ac、abc、abbc |
+ | 匹配前面的字符 1 次或多次 | ab+c | 匹配abc、abbc,不匹配ac |
? | 匹配前面的字符 0 次或 1 次 | colou?r | 匹配color、colour |
{n} | 匹配前面的字符恰好 n 次 | \d{4} | 匹配连续 4 个数字,如2024 |
{n,} | 匹配前面的字符至少 n 次 | \d{2,} | 匹配至少 2 位连续数字 |
{n,m} | 匹配前面的字符 n~m 次 | \d{2,4} | 匹配 2~4 位连续数字 |
3. 位置锚点(匹配位置,不匹配字符)
| 符号 | 规则说明 | 示例 | 匹配效果 |
|---|---|---|---|
^ | 匹配行的开头 | ^import | 匹配行首开头的 import |
$ | 匹配行的结尾 | ;$ | 匹配行尾的分号 |
\b | 匹配单词边界 | \bcat\b | 匹配独立单词 cat,不匹配 category |
4. 字符集与逻辑
| 符号 | 规则说明 | 示例 | 匹配效果 |
|---|---|---|---|
[abc] | 匹配括号内任意一个字符 | [aeiou] | 匹配任意一个元音字母 |
[^abc] | 匹配除括号外的任意一个字符(取反) | [^0-9] | 匹配任意非数字字符 |
[a-z] | 匹配范围内的字符 | [A-Za-z] | 匹配任意大小写字母 |
| ` | ` | 或逻辑,匹配左右任意一个 | `cat |
5. 分组与替换引用
| 符号 | 规则说明 | 示例 | 用法 |
|---|---|---|---|
() | 捕获分组,替换时用$1$2按顺序引用 | (abc)(\d+) | $1对应 abc 部分,$2对应数字部分 |
(?:) | 非捕获分组,只分组不捕获,不占用$序号 | — | 用于不需要引用的逻辑分组 |
典型实战示例
- 匹配
abc[数字].格式的字符串:abc\[\d+\]\. - 匹配所有 console.log 语句:
console\.log\(.*\) - 批量给行首添加
//注释:- 查找:
^(.) - 替换:
// $1
- 查找:
- 批量去除行尾空格:
- 查找:
\s+$ - 替换:(留空)
- 查找:
三、关键注意事项
- 两套规则不通用:Glob 仅用于文件路径匹配,正则仅用于文本内容匹配,语法不能混用。
- 特殊字符必须转义:正则中
.[]*+?等都是语法符号,要匹配真实字符必须加\转义。 - 正则默认多行模式:VS Code 中
^和$匹配每一行的首尾,不是整个文档的首尾。 - 替换框的反斜杠:替换框中要输出真实的
\,必须写\\(反斜杠自身需要转义)。