1. 程式人生 > >PHP 清除 Excel 導入的數據空格

PHP 清除 Excel 導入的數據空格

tis 字節 sdn bsp view 則表達式 con 兩種 英文

處理excel中的數據時,遇到了頁面中顯示為空格,審查元素時卻顯示為換行,使用replace函數也不管用,反正就是不知道是什麽東西,看起來像空格

中文空格這裏面有好幾種:沒有簡單的解決問題的方式,比如半角全角空格,比如段落符都會顯示為空白的,然後讓人們誤解它是空格,所以去掉空格之前一定要先確認自己的是不是空格,我下面分析一下這兩種的解決辦法。
(1)/[\s| ]+/這個就可以,註意|後面的跟的是全角空格
(2)mb中的正則替換也可以試試
另外註意使用Unicode的時候,加上正則表達式描述符u
但由於漢語中顯示為空格模樣的有很多個,比如說我下面碰到的這麽一個,它的unicode編碼為C2A0,使用下面的表達式就能解決問題。
$new[‘content‘] = preg_replace(‘/^[(\xc2\xa0)|\s]+/‘, ‘‘, $new[‘content‘]);
這裏有個細節: \xc2a0本來是一個Unicode字符,但是不能匹配多個,只能替換一個,【這裏可能是因為字節的原因】後來突然找到這麽一種寫法,解決了問題,另外為了避免,中文空格和英文空格相混雜的情形,後面又加了個\s來清除。 preg_replace("/(\s|\&nbsp\;| |\xc2\xa0)/","",$content);

PHP 清除 Excel 導入的數據空格