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