我有一个包含一些单词的数组,我想删除包含 .(句号)或 ;(分号)或其他一些符号。我已经阅读了有关[如果项目值包含搜索的字符串字符,则从数组中删除项目]的解决方案,但这似乎不能回答我的问题。
我可以在此代码中添加什么以删除包含分号以外的其他符号的单词?
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);