2016-04-07 30 views
0

我正在使用“安全搜索并用数据库替换序列化数据v3.1.0”来执行搜索并替换我的数据库。我一直试图自己写,但没有运气,谷歌似乎没有我正在寻找的答案。用于上传文件夹的正则表达式字符串

基本上我需要一个字符串,它将使用jpg | jpeg | png | gif文件类型定位2010-2015的上传文件夹,我可以用我创建的简单placeholder.png文件替换字符串。

这里是我已经成功地使这似乎并没有工作,大声笑,对不起,如果它只是可怕:

(uploads)(.*?).(jpg|png|gif|jpeg) 

^\/wp-content\/uploads\/((2014|2013|2012|2011)|(2015\/(01|02|03|04|05|06|07|08)))\/(.+)(jpg|png|gif|jpeg) 

我已经试过我有其他的变化但是当进行“空运行”时,它指出0个单元已经被改变。

图片网址已满而不是相对的。

任何人都可以协助吗?

+0

有没有像'上传/ new.jpg'或类似的东西的目录结构? –

+1

这是基于日期,所以像http://domain.com/wp-content/uploads/2015/12/image.jpg将是一个例子。 – underthegun

+0

你只想要到2015年8月还是什么?因为这正是你的正则表达式所暗示的。你也遗漏了2010 ... – mpen

回答

1

请尝试:

(uploads\/201[0-5]\/(?:0[1-9]|1[0-2])\/.*?\.(?:jpg|png|gif|jpeg)) 

REGEX 101 DEMO

+0

这似乎工作,但状态。超过12,000个帖子,并指出1699个单元格会发生变化,我会看看我是否可以检查,但我不能相信我只有1699张图片插入到12,000多个帖子中。 ?lol – underthegun

+0

可能有一些图片链接没有被这个模式覆盖,但是需要找出来,如果是这样的话,上面的模式需要改进,也许有多行图片链接,那么请尝试:( uploa DS \/201 [0-5] \ /(?: 0 [1-9] | 1 [0-2])\/[\ S \ S] * \(?: JPG?|。PNG | GIF | JPEG ))'。 – Quinn

+0

您的最新代码,金额相同。也许我真的只有1699大声笑 – underthegun

1

希望这对你的作品:

^\/wp-content\/uploads\/(201[0-4]\/\d{2}|2015\/0[0-8])\/(.+\.(jpg|png|gif|jpeg))$ 

我这里测试它:regexp101。 你会发现更深入的解释。

请注意,可以在仪表板中更改上传文件夹格式。

+0

他说他只需要2010-2015。 – mpen

+0

Thx,将编辑。 – noreabu

+0

表示在我的空运行中将会更改0个单元格。 :( – underthegun