Find and Replace

Replace with or without Regular Expressions

This substitute command can use Regular Expressions and will match any instance of foo followed by any( one ) character since the period . in Regular Expressions matches any character, hence the following command will match all instances of foo followed by any character in the current line.

  1 fooing fooes fool foobar foosup

will become

  1 barng bars bar barar barup

If you want to match the literal . period you can escape it in the search field with a backslash \.

  1 fooing fooes foo.l foosup

will become

  1 fooing fooes barl barbar foosup

Or disable all pattern matching by following the s command with no.

  1 fooing fooes foo.l foosup

will raise an error

  E486: Pattern not found

Substitute Command

This command:


substitutes each occurrence of foo with bar on the current line.

fool around with a foodie


barl around with a bardie

If you leave off the last /g, it will only replace the first occurence on the line. For example,


On the previous line would become

barl around with a foodie

This command:


performs the same substitution in lines 5 through 10.

This command


performs the same substitution from line 5 to the end of the file.

This command:


performs the same substitution on the whole buffer.

If you are in visual mode and hit the colon, the symbol '<,'> will appear. You can then do this


and have the substitution occur within your visual mode selection.

This command:


is equivalent to the command above but asks for confirmation on each occurence thanks to the /c flag (for "confirmation").

See :help :s and :help :s_flags.

See also this section on command-line ranges.