

推荐:《PHP视频教程》
php正则,删除字符串中的中英文标点符号
原理很简单,正则查找字符串,然后替换
英文标点符号,正则中有专用的模式来匹配。中文则需要一一列举
代码:
<?php
$str = "!@#$%^&*(中'文:;﹑?中'文中'文().,<>|[]'\\"";
//中文标点
$char = "。、!?:;﹑?"…‘’“”〝〞∕?‖— 〈〉﹞﹝「」??〖〗】【??』『〕〔》《﹐?﹕︰﹔!???﹖﹌﹏﹋'?ˊˋ―﹫︳︴?_ ̄﹢﹦﹤‐??﹟﹩﹠﹪﹡﹨﹍﹉﹎﹊ˇ︵︶︷︸︹︿﹀︺︽︾ˉ﹁﹂﹃﹄︻︼()";
$pattern = array(
"/[[:punct:]]/i", //英文标点符号
'/['.$char.']/u', //中文标点符号
'/[ ]{2,}/'
);
$str = preg_replace($pattern, ' ', $str);
echo $str;