2013-07-02 63 views
1

從字符串的開頭和結尾刪除所有非字母數字字符的最佳方法是什麼?如何用PHP修剪特殊字符?

~~STRING~~ => STRING 
"STRING" => STRING 
**STRING** => STRING 
**STR**ING** => STR**ING 
+1

'trim()'有第二個參數,允許您指定要刪除的字符 –

+0

是的對不起 - 我沒有仔細閱讀。 – Voitcus

+0

假複製頂部順便說一句。 – pie6k

回答

3

您可以使用:

$repl = preg_replace('#^\W+|\W+$#', '', $str) 
+3

也可以將它們從中間移除。 – Barmar

+0

@Barmar:現在修復它。 – anubhava

+0

'\ w'包含'\ d',所以你不必在類中列出它們。 – Barmar

2

trim($string, $charlist)應該做的伎倆。

+1

這需要在'$ charlist'中列出所有非字母數字字符。 – Barmar

+1

需要準備非字母數字列表的長列表。 – anubhava

1
$str = preg_replace('/^\W*(.*\w)\W*$/', '$1', $str); 
+0

竅門。謝謝 – pie6k