如果值与模式匹配,则删除密钥?

时间:2010-02-21 01:46:54

标签: php regex

我有一个包含字符串值的数组。

我想搜索带有正则表达式的模式,如果匹配,则删除包含该值的密钥。

我将如何实现这一目标?

2 个答案:

答案 0 :(得分:7)

preg_grep:http://php.net/manual/en/function.preg-grep.php

$a = array('foo' => 'xx', 'bar' => '12');
$b = preg_grep('~[a-z]~', $a, PREG_GREP_INVERT);
print_r($b);

答案 1 :(得分:3)

foreach($array as $key => $value) {
    if(preg_match($pattern, $value)) {
        unset($array[$key]);
    }
}