判断字符串中是否含有标点符号,在线等

zgycsmb 2010-06-09 02:38:44
php页面中
$str=": , 户型 为 149-152 ㎡ 三房 、 182 ㎡ 四房 。 具体 详情请 咨询 售楼 中心 售楼 电话";
怎么判断$str中是否含有 标点符号(中文英文下的符号都算)
thanks
...全文
1453 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgycsmb 2010-06-18
  • 打赏
  • 举报
回复
恩,中文中的符号与英文下的不一样,
大家再帮我想想,
Dleno 2010-06-09
  • 打赏
  • 举报
回复
匹配出来的结果是乱码的。
不用管,是因为中文标点是多字节的原因
Dleno 2010-06-09
  • 打赏
  • 举报
回复

$str="具,体 详情请 咨;询 售楼 中!心 售~楼 电`话-+\"'/?><,.:;{}[]()*&^%$#@!";
$str="具体 详情请 咨询 售楼 中心 售楼 电话《》?“:{}+——)(*—……%¥#·!,。/;‘[]|、=-";
$str=iconv("GB2312","UTF-8",$str);//gb2312的编码需要转码
$exp="/[\\pP]/u";
echo preg_match_all($exp,$str,$math);
print_r($math);
echo join("",$math[0]);

测试了下,在utf-8编码页面下是完全可以的。
似乎gb2312的编码就不行,貌似是unicode码的问题。
如果页面是gb2312的就将字符串转下码再正则。
Dleno 2010-06-09
  • 打赏
  • 举报
回复
$str="!!!!去符号标号!!当然。!!..**半角";
$exp="/[\\pP]/";
preg_match_all($exp,$str,$math);
print_r($math);


貌似可以
Fusuton 2010-06-09
  • 打赏
  • 举报
回复
学习
正则里的东东挺多
clark21330 2010-06-09
  • 打赏
  • 举报
回复
帮忙封装成函数

function IncludingSpc($String){
return preg_match('/,|@|!|.|。/i',$String)?true:false;
}
kyzy_yy_pm 2010-06-09
  • 打赏
  • 举报
回复

$s = 'asdf撒地方吉林省地方,kdfdf。dfdf.,dsfa;l';

$b = preg_match('/,|@|!|.|。/i', $s, $data);

var_dump($b);
var_dump($data);

kyzy_yy_pm 2010-06-09
  • 打赏
  • 举报
回复

$s = 'asdf撒地方吉林省地方,kdfdf。dfdf.,dsfa;l';

$arr = array(',', ',', '.', '。', ';');

$data = array();

$b = preg_match('/,|@|!|.|。/i', $s, $data);

p($data);


有哪些标点就往里填吧,其他的我就不太熟兮了,正则我不太好
zgycsmb 2010-06-09
  • 打赏
  • 举报
回复
多谢二楼的,能不能用正则的方法呀,
kyzy_yy_pm 2010-06-09
  • 打赏
  • 举报
回复
哪位知道firefox如何动态设置z轴啊
到这来回答
http://topic.csdn.net/u/20100609/14/2b89df3f-51be-4e51-95c1-b7882d2e326f.html
kyzy_yy_pm 2010-06-09
  • 打赏
  • 举报
回复
如果只是判断



$s = 'asdf撒地方吉林省地方,kdfdf。dfdf.,dsfa;l';

$s .= 'a';

$arr = array(',', ',', '.', '。', ';');

$l = count($arr);

for($i = 0; $i < $arr; $i++){
if(strpos($s, $arr[$i])){
echo '出现了符号';exit;
}
}

$s = substr($s, 1);

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧