To do this the VIM way, you intentionally use the yank, delete and other registers.
"0 is the yank register. Anything you yank will be put here, but deletes never touch register
So, in your example, you had just yanked a word. To replace a word with what you just yanked, you take advantage of deletions never touching the yank register. So move to the target word, delete it with
dw, then paste from your yank-register with
"0p, or better yet,
^R0 (which is repeatable).
A close opposite to the yank register is the small deletions register
"-. Any small delete or change removal is put here, but yanks never touch
"-. A deletion counts as small if it is less than a full line.
"9 are the delete history registers. With
"1 containing the latest large deletion or change removal, and
"9 containing the oldest large deletion or change removal. Only deletes that aren't small, i.e. deletes of one line or more, get pushed onto
For any operation that changes a register, a copy is also always placed in the default, a.k.a. unnamed register
"". This is the register used when you don't explicitly name a register.
"_ is the black hole register, and it is always empty. If you delete to it, nothing in any register is changed at all, not even the default
"" register, or the black hole register itself. The removed text is fully gone, apart from your undo history. Yanking to, or pasting from the black hole register does essentially nothing.
The black hole register
"_ lets you do things like first one small deletion, then a number of other deletions into
"_ without changing your small deletions register
"-, then paste your first small deletion.
Other registers are the last inserted register
"., the filename registers
"#, the command register
":, search register
"/ and expression register
You can get a list of all these registers and their contents by the command
:register. That command is very useful to experiment with and learn what ends up where.