文章目录
- 调出搜索(快捷键)
- 使用正则(快捷键)
- 替换(快捷键)
- 案例
- 假设给定文本如下
- 目标1:查找所有函数名
- 目标2:替换所有函数名为hello
- 目标3:给url增加查询字符串参数
调出搜索(快捷键)
-
单文件
ctrl + f // 搜索
ctrl + h // 搜索替换 -
全局
ctrl + shift + f
ctrl + shift + h
使用正则(快捷键)
alt + r
替换(快捷键)
- 逐个:
enter
- 所有:
ctrl + alt + enter
案例
假设给定文本如下
import axios from 'axios';export function queryInstitutionList(data) {return axios.post<any[]>('/courses/query', data);
}export function updateInstitutionList(data) {return axios.post<any[]>('/courses/update', data);
}export function insertInstitutionList(data) {return axios.post<any[]>('/courses/insert', data);
}export function deleteInstitutionList(data) {return axios.post<any[]>('/courses/delete', data);
}
目标1:查找所有函数名
规则:在export function
和(data)
之间的
export function (.*?)(data)
解释
- 其中
(.*?)
表示模糊匹配.
表示匹配除换行符之外任意字符*?
表示非贪婪匹配,如果要贪婪匹配使用*
表示任意次+
表示至少一次
\(
和\)
表示括号的转义
目标2:替换所有函数名为hello
export function (.*?)(data)
export function hello(data)
解释:
- 其中
$1
表示模糊匹配的占位符,如果有多个则是$1 $2 $3 ....
- 替换的时候括号就不需要转义了
目标3:给url增加查询字符串参数
‘/courses/(.*?)’
‘/courses/$1?username=test’