高级文本编辑技巧与vi编辑器的定制
在文本编辑过程中,我们常常会遇到各种复杂的任务,需要借助一些高级技巧来高效完成。本文将介绍一些高级的文本处理方法,以及如何对vi编辑器进行定制,以满足不同的编辑需求。
复杂模式匹配任务示例
在处理文本时,模式匹配是一项非常重要的技能。下面通过几个具体的例子,展示如何运用模式匹配来解决实际问题。
删除未知文本块
假设我们有一些以“moving”结尾的行,格式如下:
the best of times; the worst of times: moving
The coolest of times; the worst of times: moving
我们希望将这些行修改为:
The greatest of times; the worst of times: moving
由于这些行的前两个单词是未知的,我们需要使用上下文敏感的全局替换。首先,使用 :g/moving$/ 来匹配以“moving”结尾的行。然后,考虑使用元字符 .* 来匹配任意数量的任意字符,但这样会匹配整行,除非我们对匹配进行限制。
第一次尝试:
:g/moving$/s/.*of/The greatest of/
结果却出现了问题,替换匹配到了第二个“of”而不是第一个,导致结果不符合预期。这是因为 .* 会尽可能多地匹配文
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



