在vim中删除很长一行的单词之间的空格

在vim中删除很长一行的单词之间的空格,vim,ed,Vim,Ed,如何使用vim删除一行中多个单词之间的空格 已尝试: s/ \+/ / 以及这方面的例子 不起作用 我有一句话: """ http:// goo gle. com / ? script & GetReferen ce?login = LOGIN&notLogi n & and a lot if this buggy text witch should build relevant url string 例如,使用第一个解决方案中建议的代码,它只会删除监视(我在Pyt

如何使用
vim
删除一行中多个单词之间的空格

已尝试:

s/ \+/ /
以及这方面的例子

不起作用

我有一句话:

""" http:// goo gle. com / ? script & GetReferen ce?login = LOGIN&notLogi n & and a lot if this buggy text witch should build relevant url string 
例如,使用第一个解决方案中建议的代码,它只会删除监视(我在Python中构建这么长的字符串值时使用的前4个空格),并且单词之间没有空格

视觉选择
——我的意思是点击
shift+v
一次选择整行。与
^v+$
相同


无论是带v-s还是不带v-s,没有空格我都无法完全到达行。

如果不使用
g
标志,它将只替换行中的第一个出现。尝试这样添加它:

:s/ \+/ /g

还是没有,只是取消了监督而已。当然,我需要在视觉选择模式下使用它。我不太清楚选择模式,但似乎你必须在输入命令之前输入Ctrl-O。这应该有效。“监督”是什么意思?为什么需要在“视觉选择模式”下执行此操作?您所说的“视觉选择模式”是什么意思?您只是指在视觉模式下使用
v
突出显示文本,然后移动光标吗?如果你想让它在视觉选择上发挥作用,你特别希望它在选择方面做什么?@Ben说了很多话。无论是否使用visual selectn,甚至
/g
,它都不起作用,你到底想让我告诉你什么?@yolenoyer不,我不想。就像往常一样。你的意思是“缩进”而不是“监督”吗?我还是不知道什么是“监督”。如果它只删除行上的第一组空格,那么这意味着要么在第一个答案中的命令末尾省略了g,要么设置了“gdefault”选项。但是如果设置了“gdefault”,那么您的原始命令应该可以工作。所以我猜你忘了“g”。前4个空格??我在你的字符串中任何地方都看不到4个空格。而且
shift+v
是按行的,这与使用
v
不同。而且
v+$
看起来像是一个错误的组合键,您的意思肯定是
^v$
(它仍然不同于
shift+v
)。“我很想帮你,但你问的真的不清楚。”本·耶普,我是说,对不起。我想我知道现在发生了什么。你想删除单词之间的所有空格,用零替换它们,对吗?您的命令说“尽可能多地占用空间,并用一个空间替换它们”,我想这并不是您真正想要的。把你的替代品换成空的,我想你会得到你想要的。@Ben omg,我真傻!。非常感谢。请写一个答案,我会检查它作为解决方案。