我有一个包含网站地址和单词的数组,例如......
$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');
我知道我可以使用strpos
或in_array
来检查特定字符串是否与数组值匹配,但是有没有办法实际检查例如它是否是网站地址并返回数组匹配并执行相反的操作,检查它是否为单词并返回数组匹配?
答案 0 :(得分:3)
是的,你可以在这里使用preg_grep()
。
$results = preg_grep('/\.[^.]*$/', $data_arr);
您可以使用PREG_GREP_INVERT
反转匹配,只返回未找到的数组条目。