括弧の内側ではなく外側にあるテキストを置き換えます。
私はこのように試しました
$pro_name = samsung galaxy s3 (s3);
$new_pro_name = preg_replace("/\b(s3)\b/i",***s5****,$pro_name);
echo $new_pro_name;
期待される結果:
samsung galaxy ***s5**** (s3)
出力:
samsung galaxy ***s5*** (***s5***)