「items」という親を持つPHP配列があります。その配列で、文字列を含まないすべての値を削除したいと思います(正規表現を使用して検索します)。どうすればいいですか?
2 に答える
5
foreach($array['items'] as $key=>$value) { // loop through the array
if( !preg_match("/your_regex/", $value) ) {
unset($array['items'][$key]);
}
}
于 2012-04-26T17:19:46.230 に答える
2
を使ってみることができますarray_filter
。
$items = array(
#some values
);
$regex= '/^[some]+(regex)*$/i';
$items = array_filter($items, function($a) use ($regex){
return preg_match($regex, $a) !== 0;
});
注:これはPHP5.3以降でのみ機能します。5.2では、次のように実行できます。
function checkStr($a){
$regex= '/^[some]+(regex)*$/i';
return preg_match($regex, $a) !== 0;
}
$items = array(
#some values
);
$items = array_filter($items, 'checkStr');
于 2012-04-26T17:16:55.467 に答える