2011-04-05 105 views
1

我有一個字符串,我想要使用preg_replace刪除某個字符周圍的所有空白字符。在我的情況下,這個字符是/使用preg_replace刪除某個字符周圍的空白字符

例如:

first part/second part將成爲first part/second part

還是讓我們說,性格是:現在:

first part : second part將成爲first part:second part

我無法找到如何例子這樣做...謝謝!

+0

謝謝你們,你快! 所有的解決方案都有效。 – creatoro 2011-04-05 13:53:30

+0

歡迎來到StackOverflow creatoro!我們試着在這裏的大部分問題上都非常快速 - 幾分鐘後刷新頁面以查看所有答案甚至是一個好主意。 – 2011-04-05 13:55:29

回答

5
$string = preg_replace("/\s*([\/:])\s*/", "$1", $string); 

說明:

  • \s*裝置空白的任何量(*)(\s
  • [\/:]要麼是/:。如果你想要另一個角色,只需在這裏添加它。
  • 括號是您參考$1的捕獲組,意思是說,如果它匹配:那麼$ 1將意味着:
1

用你的角色代替:

$string = preg_replace("/\s*:\s*/", ":", $string); 

英文:

替換(包括0),則再次:然後空白的任何量的空白的任何量,通過只是一個:。其次是另一個可選的空間

1

匹配可選的空間,然後你的角色(括號內捕獲),然後通過你的被捕獲的更換

preg_replace('/\s*(:)\s*/',"$1",$str);