.htaccess 301 redirige un subdominio a otro, para múltiples TLDs

Quiero cambiar un subdominio de mi sitio y me gustaría hacer que las RewriteRules que utilizo para 301 usuarios sean más simples, ya que actualmente tengo que tener varias reglas para cubrir varias eventualidades.

¿Hay alguna manera de que con una regla pueda hacer lo siguiente?

subold.domain.com -> subnew.domain.com
subold.domain.co.uk -> subnew.domain.co.uk
subold.domain.local -> subnew.domain.local
subold-staging.domain.com -> subnew-staging.domain.com
subold-staging.domain.co.uk -> subnew-staging.domain.co.uk
subold-staging.domain.local -> subnew-staging.domain.local

Así que básicamente necesito detectar la presencia desubold en el host, cambia esto asubnew y redirigir a este nuevo subdominio, preservando cualquier TLD al que el usuario haya intentado acceder.

En el momento, mis reglas son las siguientes:

RewriteCond %{HTTP_HOST} ^subold.domain.local [NC]
RewriteRule ^(.*)$ http://subnew.domain.local/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^subold-staging.domain.local [NC]
RewriteRule ^(.*)$ http://subnew-staging.domain.local/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^subold.domain.com [NC]
RewriteRule ^(.*)$ http://subnew.domain.com/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^subold-staging.domain.com [NC]
RewriteRule ^(.*)$ http://subnew-staging.domain.com/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^subold.domain.co.uk [NC]
RewriteRule ^(.*)$ http://subnew.domain.co.uk/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^subold-staging.domain.co.uk [NC]
RewriteRule ^(.*)$ http://subnew-staging.domain.co.uk/$1 [L,R=301]

Respuestas a la pregunta(1)

Su respuesta a la pregunta