php preg_replace替換失敗的解決辦法:首先打開相應的PHP代碼文件;然后將替換不了的字符,打印出ASCII碼來替換掉即可。
php preg_replace空格無法替換問題
一次坑爹的小bug。讀取一段文字(編碼utf-8),想替換掉空格,str_replace(" "..)、preg_replace("/\s/"..)都不起作用。
<?php$str='<p>你好<p>';$str=preg_replace('/\s/is','',$c);$str=str_replace("","a",$str);var_dump($str);//不起作用
沒辦法,將替換不了的空格ord()下才看到,這個utf-8空格比較特殊。ASCII 194 + 160出來的。
<?php$str='<p>你好<p>';$str=str_replace(chr(194).chr(160),"a",$str);//解決方法1$str=preg_replace('/\xC2\xA0/is',"a",$str);//解決方法2var_dump($str);//ok
問題的根源,在于UTF-8這種編碼里面,存在一個特殊的字符,其編碼是“0xC2 0xA0”(194 160),轉換成字符的時候,表現為一個空格,跟一般的半角空格(ASCII 0x20)一樣,唯一的不同是它的寬度不會被壓縮,因此比較多的被用于網頁排版(如首行縮進之類)。而其他的編碼方式如GB2312、Unicode之類并沒有這樣的字符。
整理遇到的各種無法替換的字符:
chr(194).chr(160)變現為空格chr(227).chr(128)變現為空格chr(226).chr(128).chr(172).chr(226).chr(128).chr(172).chr(30)變現為空
總結:替換不了的字符,打印出ASCII碼來總能替換掉吧。
看完了這篇文章,相信你對“php中preg_replace替換失敗的解決方法”有了一定的了解,如果想了解更多相關知識,歡迎關注本站行業資訊頻道,感謝各位的閱讀!
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
我國的證券交易所分為上海證券交易所與深圳證券交易所,簡稱滬深兩市,那么你知道滬市A股和深市A股有什么區別嗎?一起來看看吧。滬市A股和深市A股有什么區別?滬市A股和深市A股的區別主要有代碼不同、板塊不同、部分股票上市條件不同、部分股票的交易門檻不同等區別?!?】代碼不同:滬市A股以6開頭,深市A股則以000、002或者300開頭?!?】板塊不同:滬市A股包括滬市主板以及科創板兩大板塊,深市A股則包括...
資產托管是什么意思?資產托管是指擁有資產所有權的企業、單位,通過簽訂契約合同的形式將資產有償托管給專業的托管公司,由托管公司進行綜合的資產調劑,并最終實現資產變現的一種經營方式。托管經營模式存在的內在原因有哪些?1、雙方的風險偏好不同。二者考慮未來收益的角度不同,集團公司(或者大股東)沒有向社會公眾公開企業財務信息的要求,自身經營情況復雜,對風險相對不敏感,屬于風險中性群體,在未來經營條件存在不確...
(資料圖)提 到手工怎么制作活動抽獎箱大家在熟悉不過了,那你是否知道手工怎么制作活動抽獎箱嗎?快和小編一起去了解一下吧!手工怎么制作活動抽獎箱,相信很多朋友們對這個問題很感興趣,下面給大家介紹一下,希望可以幫助到大家。準備一個紙箱,對紙箱進行修剪,剪掉開口和三個面,留下一個面作為接口,進行開口。根據手的大小開一個口子,可以用美工刀也可以用剪刀,弄出一個足夠手進出的口子。開口完畢后,將留下的接口折下...