$str = "中文123美丽abc开心。?我们";
  //结果为:<b>中文</b>123<b>美丽</b>abc<b>开心</b>。?<b>我们</b>
  也就是只取中文文字,不包括中文全角符、英文、数字等各种符号。  下面是我写的,但把符号也匹配到了。编码:gb2312<?php
$str = "中文123美丽abc开心。?我们";
echo preg_replace('|([\xa0-\xff]+)|','<b>\1</b>',$str);
?> 

解决方案 »

  1.   


    $str = "中文123美丽abc开心。?我们";
     echo preg_replace("/([x80-xff].)/","<b>\1</b>",$str);
      

  2.   


    $str = "我国儿童?!药asa品紧缺 制药企业称1212研发实力欠雄厚!1";
     echo preg_replace("/([x80-xff].)/","<b>\1</b>",$str);我试了下,如果字符串是这样。结果会乱码我国儿童?!药<b>as</b><b>a?/b>方羧?制药企业称<b>12</b><b>12</b>研发实力欠雄厚!1
      

  3.   

    编码格式设置成UTF-8$str = "?中文123美丽abc开心。,,我们"; echo preg_replace("/([\x{4e00}-\x{9fa5}]+)/u","<b>\$1</b>",$str);