我有一个很好的工作代码来从文本字符串$ meta中删除关键字,但我想知道如何从结果$ keywords中删除短于5个字母的单词。
preg_match_all("/\b((?:[A-ZÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØÙÚÛÜÝÆ]['a-zàèìòùáéíóúýâêîôûãñõäëïöüÿçßøåæœ]*\s*\d*)+)\b|\b((?:[a-zàèìòùáéíóúýâêîôûãñõäëïöüÿçßøåæœ]*[A-ZÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØÙÚÛÜÝÆ]['a-zàèìòùáéíóúýâêîôûãñõäëïöüÿçßøåæœ]*\s*\d*)+)\b/u", $meta, $matches);
$keywords = implode(",",$matches[0]);
答案 0 :(得分:0)
只需使用array_filter函数
$keywords = array_filter($matches[0], function{ return strlen($x) >= 5; });
$keywords = implode(",",$keywords );
答案 1 :(得分:0)
如果loop
匹配,您可以new array
通过您的数组并将数据添加到criteria
。
$result = array();
foreach($keywords as $keyword){
if(strlen($keyword)>5){
$result[] = $keyword;
}
}
print_r($result);