php正則,刪除字符串中的中英文標點符號


原理很簡單,正則查找字符串,然后替換

 

英文標點符號,正則中有專用的模式來匹配。中文則需要一一列舉

 

代碼:

<?php   
$str = "!@#$%^&*(中'文:;﹑•中'文中'文().,<>|[]'\"";  

//中文標點 
$char = "。、!?:;﹑•"…‘’“”〝〞∕¦‖— 〈〉﹞﹝「」‹›〖〗】【»«』『〕〔》《﹐¸﹕︰﹔!¡?¿﹖﹌﹏﹋'´ˊˋ―﹫︳︴¯_ ̄﹢﹦﹤‐­˜﹟﹩﹠﹪﹡﹨﹍﹉﹎﹊ˇ︵︶︷︸︹︿﹀︺︽︾ˉ﹁﹂﹃﹄︻︼()";

$pattern = array(
	"/[[:punct:]]/i", //英文標點符號
	'/['.$char.']/u', //中文標點符號
	'/[ ]{2,}/'
);
$str = preg_replace($pattern, ' ', $str);
echo $str;

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM