返回匹配或不匹配的数组值

时间:2013-11-27 17:04:08

标签: php regex arrays

我有一个包含网站地址和单词的数组,例如......

$data_arr = array('www.quotes.com', 'www.google.com', 'www.yahoo.com',
                  'gmail.com', 'example.net', 'example.org', 'mail.com',
                  'quotes', 'google', 'yahoo', 'gmail', 'mail',
                  'example', 'moretext', 'foo', 'bar', 'baz');

我知道我可以使用strposin_array来检查特定字符串是否与数组值匹配,但是有没有办法实际检查例如它是否是网站地址并返回数组匹配并执行相反的操作,检查它是否为单词并返回数组匹配?

1 个答案:

答案 0 :(得分:3)

是的,你可以在这里使用preg_grep()

$results = preg_grep('/\.[^.]*$/', $data_arr);

您可以使用PREG_GREP_INVERT反转匹配,只返回未找到的数组条目。