Vim has a key binding to swap two words while keeping the cursor in the same place as detailed here
:nnoremap gw "_yiw:s/(\%#\w+)(\W+)(\w+)/\3\2\1/
Unfortunately this does not seem to work in VSVim with an error reporting that the pattern could not be found: (\%\w+)(\W+)(\w+). I note that the # is missing from the pattern reported by the error message. I wonder if anyone has an idea of what the problem maybe with regex element of the binding and indeed what role the # has?