我的preg_match 有问题
$versionstring[1] = 'Version: ImageMagick 6.4.6 2010-01-20 Q8 OpenMP http://www.imagemagick.org Copyright: Copyright (C) 1999-2009 ImageMagick Studio LLC';
preg_match('#^Version: [^0-9]*([ 0-9''.'':Q/''-]+) (http|file)':#i', $versionstring[1], $matches))
返回错误
我该怎么解决这个问题?
OpenMP是在正则表达式工作后添加到ImageMagic版本字符串中的,因此作为快速修复,您可以像这样添加OpenMP:
preg_match('#^Version: [^0-9]*([ 0-9''.'':Q/''-]+) OpenMP (http|file)':#i', $versionstring[1], $matches);
但请注意,在未来的升级中,这种情况可能会再次发生,因此,根据您使用它的目的,您可以考虑减少regex的字符串特定性,并提取您需要的信息。