在正常模式下的vim中,我可以使用%移动到右括号。是否有与我可以在搜索和替换命令中使用的等价物?假设我有一些我想从中删除斜体的乳胶代码。在一个简单的场景中,像:%s/{\\it \(.*\)}/\1/gc
就可以完成这项工作,但实际上这将停在第一个闭合的大括号上,这很可能会关闭其他东西,因为我可能有{\it some text in italics {\bf and some in bold also} ...possibly so many other commands with curly braces... and finally my closing curly brace:}
。匹配vim搜索中的右括号并替换
3
A
回答
0
这可能是你所说的“写一个小宏和使用搜索”的意思,但你可以使用带有normal
命令正常模式命令,如:
:g|{\\it|normal /{\\it^M%mm%5x`mx
:g
将触发每个匹配线图案{\it
,并且每场比赛,它运行在正常模式命令/{\\it
跳转到正确的地方的路线,%
去右括号,mm
把一个关口关闭一个,%
跳回开场之一,5x
删除打开命令,然后`m跳回标记,然后x
删除关闭的命令。
这将不会处理的是几行{\it
开口在一行上。 (但你可以再运行一次)。比学习Perl快。
相关问题
- 1. vim向后搜索并替换之前匹配的模式
- 2. 搜索并替换多个匹配项
- 3. 在vim中搜索并替换pattern [digits:digits]
- 4. 如何搜索和Vim中与子匹配替换值
- 5. 在Vim中搜索/替换
- 6. 搜索并替换VIM上的字段
- 7. 在Oracle 10G中搜索并替换字符串中的括号
- 8. Haskell括号匹配查找和替换
- 9. Vim - 搜索并替换结果
- 10. Vim搜索并替换可变行数
- 11. Vim - 逐步搜索并替换结果
- 12. VIM:用$ server_name搜索并替换$ _SERVER ['SERVER_NAME']
- 13. 为什么Vim RegEx搜索和替换不匹配?
- 14. Vim的自动右括号
- 15. VIM搜索和替换
- 16. 搜索表中的匹配值并用数组键替换
- 17. 搜索excel 2003中的所有匹配模式,并替换
- 18. Javascript搜索并替换包含方括号的字符序列
- 19. 在第一个匹配项中搜索并替换字符串
- 20. Vim:大括号匹配不可靠
- 21. 仅在键入时匹配vim括号
- 22. 在Vim中搜索和替换后取消选择匹配的字符串
- 23. 如何使用搜索/替换访问vim中的正则表达式匹配?
- 24. 搜索正则表达式匹配的字符串并替换
- 25. 禁用Vim SnipMate括号替换
- 26. 的Vim的EasyMotion搜索匹配
- 27. 匹配左括号为相应的右括号
- 28. Emacs的:括号匹配当光标位于右括号
- 29. 搜索并替换
- 30. 搜索并替换
您是否检查过[此SO回答](http://stackoverflow.com/a/5146698/3832970)? –
@stribizhev不,我没有看到,谢谢。似乎长期的答案是学习perl,短期的解决方案是编写一个小的宏,并使用搜索,实际上它不应该比自动搜索更慢,并用'confirm'开关替换。 –
不完全是你问的,但蒂姆波普的[vim-surround](https://github.com/tpope/vim-surround)可能仍然会让你的生活更轻松。 – lcd047