ホームページ > バックエンド開発 > PHPチュートリアル > php排除字符串里包含某字符,该如何处理

php排除字符串里包含某字符,该如何处理

WBOY
リリース: 2016-06-13 11:48:10
オリジナル
872 人が閲覧しました

php排除字符串里包含某字符

$a = "'你好.你好','你好啊ct','他好','他好啊','我好','我好啊'";
ログイン後にコピー



怎么把$a里包含"."和"ct"的排除掉


就是把'你好.你好''你好啊ct'整个排除掉

得到结果$b = "'他好','他好啊','我好','我好啊'";

麻烦知道的大哥直接给完整代码

最好是要排除的包含关键字自己可以添加
类似$c = array(".", "ct");
我可以在$c里添加要排除的包含字符

------解决方案--------------------
$a = "'你好.你好','你好啊ct','他好','他好啊','我好','我好啊'";
$b=explode(',',$a);
$c = array(".", "ct");
foreach($b as $value){
foreach($c as $v){
if(strpos($value,$v) !==false){
$ar[]=$value;
break;
}
}
}
$result = array_diff($b, $ar);
echo join(',',$result);
ログイン後にコピー

------解决方案--------------------
或者这样
 
$a = "'你好.你好','你好啊ct','他好','他好啊','我好','我好啊'";
$b=explode(',',$a);
$c = array(".", "ct");
foreach($c as $v){
$p="/" .preg_quote($v) ."/";
$ar[]=array_values(preg_grep($p,$b));
}
foreach($ar as $v) $arr[]=$v[0];
$result=array_diff($b,$arr);
echo join(',',$result);
ログイン後にコピー

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート