我的头在旋转,我试图自己做,但无法弄明白。所以我再一次转向你们的知识。
这些都是我可能的字符串:
My head is spinning with, pregreplace
My head is spinning, with, pregreplace
My head is, spinning, with, pregreplace
My head, is, spinning, with, pregreplace
(注意上面字符串中的逗号)
我希望所有“preg-replacement”/“string-replacement”最后只有一个逗号。(就像第一个例子中显示的那样)
我的脑袋旋转着,pregreplace
提前致谢;)
答案 0 :(得分:8)
你可以像这样使用“积极向前看”:
,(?=.*,)
前瞻是parens中的一部分。它基本上说“只有在字符串后面有另一个逗号时才替换此逗号。
代码如下所示:
echo preg_replace('/,(?=.*,)/', '', $str);
我用RegexBuddy对此进行了测试,以确认其有效:
答案 1 :(得分:4)
preg_replace( '/,/', '', $my_string, preg_match_all( '/,/', $my_string) - 1);
以上应该做你需要的。