Regex 关于Vim正则表达式删除每行中的尾随空格
为什么上面的正则表达式将任何一行末尾的>=1个空格压缩为一个空格,而不是0个空格?您的正则表达式可以工作。运行该行后,在该行的末尾没有剩余空间 您可能看到的是,如果使用Regex 关于Vim正则表达式删除每行中的尾随空格,regex,vim,Regex,Vim,为什么上面的正则表达式将任何一行末尾的>=1个空格压缩为一个空格,而不是0个空格?您的正则表达式可以工作。运行该行后,在该行的末尾没有剩余空间 您可能看到的是,如果使用 :%s/[]\+$//g-注意\+而不是*。增量突出显示仍然存在,因为*始终匹配,即使是零空格 要删除突出显示,请键入:noh(简称:nohlsearch) 仅供参考::%s/[]*$//g相当于:%s/*$//g每次在执行上述命令以去除尾随空格后,我都会额外运行:%s/[]//g。当我尝试在我的vim(在Mac Snow Le
:%s/[]\+$//g
-注意\+
而不是*
。增量突出显示仍然存在,因为*
始终匹配,即使是零空格
要删除突出显示,请键入:noh
(简称:nohlsearch
)
仅供参考:
:%s/[]*$//g
相当于:%s/*$//g
每次在执行上述命令以去除尾随空格后,我都会额外运行:%s/[]//g
。当我尝试在我的vim(在Mac Snow Leopard上运行)中提供的正则表达式时,我的尾随空格为零。也就是说,您可以尝试将*更改为a+(因为用“”替换“”没有任何意义),但我怀疑这是否会对您有所帮助。谢谢。这确实是“残留”的突出显示。这些不是真正的空格。另一种指定空格的方法是\s而不是[],它将同时匹配制表符和空格。您也不需要g选项,因为您每行只进行一次更换。你最终会得到:%s/\s\+$//添加g不会有什么坏处,我一直这样做只是出于习惯:)@Neg关于g
的观点很好。我也一直这么做,但严格来说这是多余的。@Neg_EV纯空间(%sm/\+$/
)也可以工作。我从没见过尾随标签。
:%s/[ ]*$//g