Вы также можете найти все необходимые файлы и отменить их связь с помощью RegexIterator:
<?php
$dir = new RecursiveDirectoryIterator('.');
$iterator = new RecursiveIteratorIterator($dir);
$regex = new RegexIterator($iterator, '/(^.*[\s\.\,\(\)\!]+.*)/', RecursiveRegexIterator::GET_MATCH);
foreach ($regex as $file) {
if (is_file($file[0])) {
print "Unlink file {$file[0]}\n";
unlink($file[0]);
}
}
Этот фрагмент кода рекурсивно обходит все каталоги из текущего ('.') И сопоставляет все файлы с помощью регулярного выражения '/(^.[\s\,.()!]+.)/', затем удалите их.