如果包含一些字符串/符号,请从数组中删除元素



我有一个包含一些单词的数组,我想删除包含 .(句号)或 ;(分号)或其他一些符号。我已经阅读了有关[如果项目值包含搜索的字符串字符,则从数组中删除项目]的解决方案,但这似乎不能回答我的问题。

我可以在此代码中添加什么以删除包含分号以外的其他符号的单词?

function myFilter($string) {
  return strpos($string, ';') === false;
}
$newArray = array_filter($array, 'myFilter');

谢谢

使用preg_match函数:

function myFilter($string) {
    return !preg_match("/[,.]/", $string);
}

[,.] - 可以使用任何其他符号扩展的字符类

// $array is your initial array
$newArray = array();
foreach ($array as $item){
    if ((strpos($item, ';') > 0)||(strpos($item, '.') > 0))
        continue;
    $newArray[] = $item;
}
// Words with ; or . should be filtered out in newArray
print_r($newArray);

最新更新