from some digging around
https://vim.fandom.com/wiki/Search_and_replace says we can use registers while using subs, but i somehow cant use <c-r> (and <c-v> in behave mswin) as both search and replace parameters. but, with \+@ i can freely use any reg as the replace param.