我有以下正则表达式,我试图使用它从 wget 日志中获取所有图像 URL,这些 URL 指向除 150x150 像素以外的图像。
preg_match_all('/http:\/\/'.$url.'\/wp-content\/uploads\/\S+(?:150x150)\.(?:jpg|jpeg|png|gif)/', $wgetlog, $image_urls);
这个正则表达式有效。它给了我所有包含 150x150 字符串的 URL。如果我这样否定它:(?!150x150)
导致:
preg_match_all('/http:\/\/'.$url.'\/wp-content\/uploads\/\S+(?!150x150)\.(?:jpg|jpeg|png|gif)/', $wgetlog, $image_urls);
它输出一个空数组。(是的,文件中有匹配的 URL)
感谢您的任何提示!
示例 URL 结构是http://url.com/wp-content/uploads/2009/09/name-of-the-file-150x150.png
和http://url.com/wp-content/uploads/2009/09/name-of-the-file-1324x130.png
。