php只提取文章中文字,不要标点符号,高分急求代码。。。
发布网友
发布时间:2022-04-06 02:17
我来回答
共6个回答
懂视网
时间:2022-04-06 06:38
php去除标点符号的方法:首先创建一个PHP示例文件;然后通过正则表达式“preg_replace($pattern, ' ', $str);”删除字符串中的中英文标点符号即可。
推荐:《PHP视频教程》
php正则,删除字符串中的中英文标点符号
原理很简单,正则查找字符串,然后替换
英文标点符号,正则中有专用的模式来匹配。中文则需要一一列举
代码:
<?php
$str = "!@#$%^&*(中'文:;﹑?中'文中'文().,<>|[]'"";
//中文标点
$char = "。、!?:;﹑?"…‘’“”〝〞∕?‖— 〈〉﹞﹝「」??〖〗】【??』『〕〔》《﹐?﹕︰﹔!???﹖﹌﹏﹋'?ˊˋ―﹫︳︴?_ ̄﹢﹦﹤‐??﹟﹩﹠﹪﹡﹨﹍﹉﹎﹊ˇ︵︶︷︸︹︿﹀︺︽︾ˉ﹁﹂﹃﹄︻︼()";
$pattern = array(
"/[[:punct:]]/i", //英文标点符号
'/['.$char.']/u', //中文标点符号
'/[ ]{2,}/'
);
$str = preg_replace($pattern, ' ', $str);
echo $str;
热心网友
时间:2022-04-06 03:46
http://blog.sina.com.cn/s/blog_62975d330100h765.html
$keyword='广’州;海,鲜。餐,厅 ';
$keyword=urlencode($keyword);//将关键字编码
$keyword=preg_replace("/(%7E|%60|%21|%40|%23|%24|%25|%5E|%26|%27|%2A|%28|%29|%2B|%7C|%5C|%3D|\-|_|%5B|%5D|%7D|%7B|%3B|%22|%3A|%3F|%3E|%3C|%2C|\.|%2F|%A3%BF|%A1%B7|%A1%B6|%A1%A2|%A1%A3|%A3%AC|%7D|%A1%B0|%A3%BA|%A3%BB|%A1%AE|%A1%AF|%A1%B1|%A3%FC|%A3%BD|%A1%AA|%A3%A9|%A3%A8|%A1%AD|%A3%A4|%A1%A4|%A3%A1)+/",'',$keyword);
$keyword=urldecode($keyword);//将过滤后的关键字解码
echo $keyword;
//输出结果:广州海鲜餐厅。追问中英文符号都能过滤吗?
热心网友
时间:2022-04-06 05:04
把$arr里的内容换成你想要替换的符号就可以了
<?php
$str="hello!world@ui*";
$arr=array("%","#","@","!",",",",","。");
echo str_replace($arr," ",$str);
?>
热心网友
时间:2022-04-06 06:39
str_replace(array(',','。'.....),'',$string);
echo $str;
或者
$str = preg_replace('/\xa3([\xa1-\xfe])/e', '', $str);
echo $str;追问第二种方法不错哦,问题是不能过滤 。之类的哦!!
再就是,输出结果可否让以空格分开
热心网友
时间:2022-04-06 08:30
<?php
$str = "sldfs,sdfs:df.sdfsdf'sdf?s!df;sdfsdf。";
$arr = array(",",".","。",":",";","?","!","'");
echo str_replace($arr," ",$str);
?>
热心网友
时间:2022-04-06 10:38
百度吧,我不知道