我需要刪除特殊字符和空白格式$ data。 我試圖微調和preg_replace函數沒有成功...刪除特殊字符php
$data = 'ello€ [email protected]"ldČ2';
$remove = ' ~"#$%&()=?[email protected]][€Ł|/');,:/ ';
最終數據需要是這樣的elloWorldC2
我需要刪除特殊字符和空白格式$ data。 我試圖微調和preg_replace函數沒有成功...刪除特殊字符php
$data = 'ello€ [email protected]"ldČ2';
$remove = ' ~"#$%&()=?[email protected]][€Ł|/');,:/ ';
最終數據需要是這樣的elloWorldC2
刪除所有特殊charecters preg_replace('/[^a-zA-Z0-9]/s', '', $data);
好的,謝謝,但我不想刪除點和底線(。_) – Aleksandar
Works '$ c = preg_replace('/ [^ a-zA-Z0-9_。* @]/s','' ,$ data);' **但是如果我有更多的話,如何得到一個@ ** – Aleksandar
一件事,如果你想,你可以做只允許字母,數字和下劃線是這樣的:
$replace = preg_replace("/[^\w]{1,}/", "", $data);
'{1,}'與'+'完全相同。但請不要這樣做;它通常是一種笨拙的方式來解決任何真正的問題,並且會給那些關心的不僅僅是英文字母的人造成錯誤 – Eevee
您可以執行此步驟:
$ c = preg_replace('/ [^ a-zA-Z0-9 _。@]/s','',$ data); //除去字母,數字,點,底線和@以外的所有特殊字符。
$ count = substr_count($ c,「@」); // @ count
$ c = preg_replace('/ @/s','',$ c,$ count-1); //除了一個,刪除所有@。
爲什麼您需要隨機刪除部分數據? – Eevee