>>443
そーゆー制限事項は省略せんでくれ
正規表現にこだわって問題を難しくしている人がままいるので気になるのだよw
でだ、

<?php
$str0 = "#a,b,c,d";
$str1 = "e,f,g,h";
$pat = "/(?=(?:#|(?<=.)\G))([^,]*),/";
echo preg_replace($pat, "$1&", $str0), "\n";
echo preg_replace($pat, "$1&", $str1), "\n";

結果
#a&b&c&d
e,f,g,h

こんな感じになったがこれでよいかや?