Вы не можете сопоставить строку запроса с RewriteRule. Для этого используйте директиву RewriteCond:
RewriteCond %{QUERY_STRING} widget_id=(.*)$
RewriteRule search\.php show.php?noddy_id=%1 [L]
(Кстати,% x для групповых совпадений в cond перезаписи и $ 1 в правилах перезаписи)
В конце концов вы можете добавить QSA к флагам, если у вас есть дополнительные переменные в QueryString, которые вы хотите сохранить.