Вы не можете сопоставить строку запроса в rewriterule.
Лучше использовать это:
# match 'value' (not sure if this is static, otherwise change it)
RewriteCond %{QUERY_STRING} (^|&)var1=value [NC]
# match all characters from A to Z (case insensitive), including -
RewriteCond %{QUERY_STRING} (^|&)var2=([A-Z-]+) [NC]
# match all numbers, including -
RewriteCond %{QUERY_STRING} (^|&)var3=([0-9-]+)$ [NC]
# if all RewriteCond's are satisfied, this RewriteRule will be executed
RewriteRule ^index\.php$ http://domain.com [R=301,L]
Эти RewriteCond будут иметь AND, я просто разделил их, чтобы выможно видеть, что они делают, но также сопоставлять строку запроса, даже если параметры заданы в другом порядке.