我有一個字符串(不是數組,它是存儲在一個字符串中的單詞的負載),我想在每個單詞之後放一個逗號,儘管不是把最後一個詞放在後面。我有;PHP:在每個單詞後添加逗號(除了最終)
echo str_replace(' ', ', ', $stilltodo);
但由於某些原因,逗號前添加一個空格(後太但這是正確的),並且還一個是在結束了。我怎麼能改變它的工作方式,我想要的。
'基地' 的一個實施例的字符串
French History Maths Physics Spanish Chemistry Biology English DT Maths History DT Spanish English French RS
一個與所述當前代碼輸出上述
French , History , Maths , Physics , Spanish , Chemistry , Biology , English , DT , Maths , History , DT , Spanish , English , French , RS ,
謝謝。我把'echo substr_replace($ stilltodoplain,「」, - 2);'結尾給其他有相同問題的人擺脫最後一個逗號,但我猜你對這個問題有更多的空格因爲這是唯一可行的。再次感謝。 – 2012-03-23 18:06:20
正則表達式在這裏是矯枉過正的。你應該使用'implode(explode())'方法,或者'rtrim()',如我的答案所示。正則表達式並不一定是壞的,但它增加了不必要的開銷,並在一定程度上隱藏了代碼的含義。 – Bojangles 2012-03-24 00:35:04
@JamWaffles:如果它是一個可以每小時運行幾萬次的函數的一部分,那麼你可以認爲它過度殺傷,但是對於看起來像是一次性問題,我認爲它並不重要。 – Crontab 2012-03-26 11:45:34