写一个正则表达式匹配长字符串总是复杂的过程,我们可以利用查找历史迭代的做
- 错误尝试1:
/\v'.+'
- 错误尝试2:
/\v'[^']+'
- 正确尝试3:
/\v'([^']|'\w)+'
- 可以正确匹配到样例的所有情况
- 执行
/\v'(([^']|'\w)+)'
- 执行
:%s//“\1”/g
\1
在命令1中已经被赋值为第一个匹配到的括号内的内容(单引号之间的内容)
:%s/\v'(([^']|'\w)+)'/“\1”/g
在迭代修改正则表达式匹配的过程中,我们可以通过2种方式利用前一次的结果
/<Up>
来调用上一次的匹配模式- (当正则表达式变得复杂时推荐)普通模式下
q/
调出命令行窗口来显示历史语句, 这样我们可以像修改文件一样来修改上一次的命令
上一篇 | 下一篇 |
---|---|
技巧84: 对完整的查找匹配进行操作 | 技巧86: 查找当前高亮选区中的文本 |