我必须用“XX”替换2个或更多空格,我该如何实现?
我不知道空格的通配符。
答案 0 :(得分:3)
与两个或多个空格匹配的正则表达式为' *'
,因此在vi
中,键入
:%s/ */XX/g
解释,那是
: to enter ex command mode
% apply this change to all lines
s replace everything between the first and second slashes with everything between the second and third
<sp><sp><sp>* two spaces, followed by zero or more spaces
g apply the change to every instance on the line
(我最初只在正则表达式中有两个空格,它会用XX替换文件中的每个连续空格,包括单个空格)
答案 1 :(得分:0)
编辑正如rojomoke在评论中所指出的,此解决方案仅适用于Vim,而不适用于旧的Vi编辑器。
您可以使用:
:%s/\s\{2,}/XX/g
\s
匹配空白\{2,}
匹配两个或更多通过这种方式,您将用XX
替换两个或更多个空格的任何连续。