Вы правы, кроме начальной части. Это будет совпадать с символами в любом месте строки, столько раз, сколько возможно, поэтому вы получите такие замены:
"123ab1" to "123bax"
"1234ab" to "1234ab"
"ab1ba2" to "baxabx"
"bbaabb" to "bbxbax"
То, что вы можете захотеть сделать, это привязать его к началу строки с помощью символа вставки, например:
s/^\([ab]\)\([ab]\)./\2\1x/g
Предоставление:
"abc123" to "bax123"
"123abc" to "123abc"