使用vim我想用另一个字符替换所有字符到一个特定的字符,比如一个空格 - 不用影响行中的字符布局/数量。这是一个例子:
在:
real(kind=R12), intent(out) :: my_var
用空格替换, intent(out)
后(例如从,
开始,然后上升到)
):
real(kind=R12) :: my_var
我知道r
替换一个字符,而nr
替换n
个字符,但我想知道我是否可以完成任务而无需先计算我要替换的字符。
非常感谢您的回复!
答案 0 :(得分:25)
视觉模式可能是最短的方式:
vt:r
v
进入视觉模式t:
选择:
r
(注意r
之后的空格)用空格替换所选区域。答案 1 :(得分:1)
我知道r要替换一个角色
您知道 R 会让您处于替换模式吗?所以你可以点击 R ,然后按住 Space ,直到你替换了你想要的一切。
然而,我仍然会选择Thor的答案。可视模式允许您在vim中使用高效的文本导航方法,而无需计算字符数。
但如果你不同意,总会有EasyMotion。
答案 2 :(得分:1)
在命令模式下输入' df ?'删除最多(?)字符。然后' 我'回去插入。
例如,如果您的观点中包含以下句子:
The wizard quickly jinxed the gnomes before they vaporized.
然后输入 dfs
您将离开:
before they vaporized.
答案 3 :(得分:0)
您可以在此处使用正则表达式(使用(.*?)
引用所有值到令牌)。
例如:
正则表达式:(.*?)foo
将摆脱foo之外的一切。