Glob模式匹配文件名的第一部分

时间:2013-05-11 01:05:33

标签: php glob

在目录中我有123X1.jpg,23X1.jpg,23X2.jpg,4123X1.jpg这样的文件名。 我需要glob模式才能获得以所需字符串开头的列出文件。

例如:

'23X' -> 23X1.jpg, 23X2.jpg
'123X' -> 123X1.jpg

模式的最后一部分始终是X.第一部分是数字。

2 个答案:

答案 0 :(得分:3)

glob()

是微不足道的
print_r(glob('/path/to/23X*.jpg'));
print_r(glob('/path/to/123X*.jpg'));

答案 1 :(得分:1)

您可以尝试RegexIterator

$fi = new FilesystemIterator(__DIR__, FilesystemIterator::SKIP_DOTS);
$regex = new RegexIterator($fi, "/\dX[a-z\d]+/i");

foreach($regex as $file) {
    echo (string) $file, PHP_EOL;
}