0
我需要用bar
替換所有foo
字。Vim在一行中替換不匹配多個匹配項
我試過:%s/foo/bar/g
但問題是foo
在一行中多次出現,只有每行中第一次出現匹配我必須再次運行該命令。
例如 :%s/"/'/g
上 "undefined"
只匹配第一"
我怎麼能匹配所有線路都出現?
我需要用bar
替換所有foo
字。Vim在一行中替換不匹配多個匹配項
我試過:%s/foo/bar/g
但問題是foo
在一行中多次出現,只有每行中第一次出現匹配我必須再次運行該命令。
例如 :%s/"/'/g
上 "undefined"
只匹配第一"
我怎麼能匹配所有線路都出現?
其實,你使用的命令應該可以工作。在這裏,你有代碼來創建一個文件,並在「前」模式下運行,通過你的Vim命令:
$ cat <<EOF> /tmp/sample.txt
> foo baz foo
> foo foo baz baz foo
> baz baz foo baz foo
> EOF
$ ex /tmp/sample.txt << EOFEX
> :%s/foo/bar/g
> :x
> EOFEX
$ cat /tmp/sample.txt
bar baz bar
bar bar baz baz bar
baz baz bar baz bar
「富」的所有事件已經在所有行被取代。
如果我現在在Vim中,我可以按'Q'進入ex模式並輸入replace命令並退出ex模式嗎? – MoreFreeze
你在使用neovim嗎?在其中一個版本中,這實際上已經損壞。 – SkyFold
不是同樣的好老vim –
你是否用'vim -u NONE'試過了這個默認的vim,並試過這個。如果它確實有效,那麼嘗試添加一些東西給你vimrc,直到你咬住它。 – SkyFold