我有一个数组,只想检索5个字母的单词,不再是,我试图使用
$new = preg_grep("/.{5}/",$array);
但这导致任何至少5个字母的单词.我想要任何最多5个字母的单词.
解决方法
你需要使用start(^)和end($)修饰符,所以
$new = preg_grep("/^.{5}$/",$array);
但是,更有效的方法可能就是使用基于strlen的过滤器:
function len5($v){ return strlen($v) == 5; } $new = array_filter($array,'len5');