Vim搜索与替换技巧全解析
1. 搜索匹配的文本对象
理想的Dot Formula需要一个按键来移动,一个按键来执行更改。但有时移动可能需要三个按键(如//<CR>),这并不理想。Vim没有更方便的内置动作来操作搜索匹配项,不过我们可以通过Vim脚本添加此功能。
推荐使用Kana Natsuno的textobj-lastpat插件,它添加了一个i/文本对象来操作搜索匹配项。使用它,我们可以通过运行gUi/进行之前的更改。从跳到下一个匹配项需要三个按键(//<CR>)变为只需一个按键n,从而实现理想的Dot Formula。你可以从 这里 获取该插件。
2. 通过迭代搜索历史创建复杂模式
编写正则表达式很困难,我们很难一次就写对。因此,我们可以通过迭代来开发模式,关键在于能够回忆和编辑之前的搜索历史。
以下是一个示例文本,其中撇号被用作引号:
This string contains a 'quoted' word. This string contains 'two' quoted 'words.' This 'string doesn't make things easy.'<