使用可能的重复项:
号
正则表达式以匹配逗号而不是分组符号之间的逗
preg_replace查找和替换两侧未被大括号包围的逗号的正则表达式是什么?
例:
$subject = "blah.blah,{blah.blah},blah.blah";
$result = "{blah.blah},{blah.blah},{blah.blah}";
避免此和其他不需要的变体:
$result = "{blah.blah},{{blah.blah}},{blah.blah}";
preg_replace("/(?<=^|,)([^{},]+)(?=$|,)/", '{$1}', "blah.blah,{blah.blah},blah.blah");
答案有效,但有一个更好的正则表达式,因为后面看和看对机器来说很昂贵:
preg_replace('/(^|,)([^{},]+)($|,)/', '$1{$2}$3', 'blah.blah,{blah.blah},blah.blah');