One of the things I miss about VIM in Emacs is :%s command, which allows you input pattern and replace text in one step. The Emacs M-x query-replace-regexp do the same thing but a bit annoying, you need to input regular expression first then press enter, input replace text and press enter again and you need to press ! to execute replace for remaining matches or q to quit or other moves. So many steps and confirmations, even just pasting I need paste two times. If you already accustomed to VIM's way of search and replace, you would not like the Emacs way.

This makes me stay away from it for a long time. Sometimes I will copy the content of Emacs buffer to VIM and do substitution there.

The Evil mode solved this problem and better than both of VIM and Emacs. You can use all Emacs features, but also have the access to most part of VIM.

The Evil mode search and replace is different things mixed together. Like VIM, you can type everything in one step, just input :%s and input the rest. But it also use the Emacs regular expression syntax. The best thing is it highlight matches while you typing and show all kinds of hints message in minibuffer if the syntax is wrong or no matches found(this is the same as isearch-forward-regexp), if you want to highlight all matches, input :%s///g first and then backward a few characters to start write regular expression, you can see what will be replaced before execute substitution.

There is an Emacs plugin anzu can highlight matches on the fly but you can not input pattern and replace text in one step, actually the rest is the same as Emacs except the highlight part.

In VIM you can enable set incsearch, but it only works for / search not for %s. I don't yet know whether there is a VIM plugin can highlight matches on the fly for substitution. Seems there is no built in support for this.