php 正则匹配中英文标点符号

<?php
header("Content-Type:text/html;charset=utf-8");
//preg_match('/((?=[\x21-\x7e]+)[^A-Za-z0-9])/i','博客园★博客园。博客园.博客园',$matches);


preg_match('/[^\x{4e00}-\x{9fa5}a-zA-Z0-9]/u','博客园★博客园。博客园.博客园',$matches);
echo $matches[0];

 

上面这两句是匹配出符号。下面这句是匹配与替换。全角和半角的特殊字符都可以匹配到。

^表示排除的意思。\x{4e00}-\x{9fa5}意思是汉字为utf8编码的unicode编码范围。


echo preg_replace('/[^\x{4e00}-\x{9fa5}a-zA-Z0-9]/u',"<br />",'博客园★博客园。博客园.博客园');
?>

posted @ 2016-01-03 11:08  stma  阅读(5107)  评论(0)    收藏  举报