between mark a and mark b: 'a,'b
goto lines containing Abc: g/Abc
recognizable substitute: s/yy/\=i/
= prefixes a variable (escaped with \)
A problem is that it will only replace the first `yy` on the line (if you add g, to make it s/yy/\=i/g, it replaces all of them, but with the same value of i.
How to make it increment multiple yy's on the one line?
One of my favorites that has saved me a ton of time more than once:
" rename a string with an incrementing number
:let i=10 | 'a,'bg/Abc/s/yy/\=i/ |let i=i+1 # convert yy to 10,11,12 etc