2016-04-07 6 views
0

Ich verwende "Sicheres Suchen und Ersetzen in Datenbank mit serialisierten Daten v3.1.0", um eine Suche und Ersetzung meiner Datenbank durchzuführen. Ich habe versucht, es selbst zu schreiben, aber ich hatte kein Glück und Google scheint nicht die Antwort zu haben, die ich suche.Regex-Zeichenfolgen für Uploads-Ordner

Grundsätzlich brauche ich eine Zeichenfolge, die Upload-Ordner von 2010-2015 mit jpg | jpeg | png | gif Dateitypen zielt, die ich die Zeichenfolge mit einer einfachen placeholder.png Datei ersetzen kann, die ich erstellte.

Hier ist, was ich habe es geschafft, dass lol leider funktioniert nicht erscheinen zu lassen, wenn es nur schrecklich:

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

oder

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

ich andere Variationen ausprobiert habe ich habe gemacht, aber wenn ein "Trockenlauf" durchgeführt wird, heißt es, dass 0 Zellen geändert worden wären.

Die Bild-URLs sind voll und nicht relativ.

Kann jemand helfen?

+0

Gibt es eine Verzeichnisstruktur wie 'uploads/new.jpg' oder so etwas? –

+1

Es ist Datum basiert so wie http://domain.com/wp-content/uploads/2015/12/image.jpg wäre ein Beispiel. – underthegun

+0

Willst du nur bis August 2015 oder was? Denn das ist es, was deine Regex impliziert. Auch du hast 2010 ausgelassen ... – mpen

Antwort

1

Bitte versuchen:

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

REGEX 101 DEMO

+0

Dies scheint zu funktionieren, aber es steht fest über 12.000 Posts und es heißt, dass 1699 Zellen geändert worden wären Ich werde sehen, ob ich das überprüfen kann, aber ich kann nicht glauben, dass ich nur 1699 Bilder in über 12.000 Posts eingefügt habe Irgendeine Idee, was vielleicht auf ist, vielleicht sind es nur 1699 ? lol – underthegun

+0

Vielleicht gibt es einige Bildlinks, die nicht von diesem Muster abgedeckt sind. Aber das muss es herausfinden. Wenn das der Fall ist, muss das obige Muster verbessert werden. Vielleicht gibt es Bildlinks in mehreren Zeilen? Dann versuchen Sie bitte: Uploa ds \/201 [0-5] \/(?: 0 [1-9] | 1 [0-2]) \/[\ s \ S] *? \. (?: jpg | png | gif | jpeg)) '. – Quinn

+0

Ihr letzter Code, gleiche Menge. Vielleicht habe ich wirklich nur 1699 lol – underthegun

1

Hope this für Sie arbeitet:

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

ich es hier getestet: regexp101. Sie finden dort mehr in der Tiefe-Erklärung.

Beachten Sie, dass das Upload-Ordnerformat im Dashboard geändert werden kann.

+0

Er sagte, er brauche nur 2010-2015. – mpen

+0

Thx, wird bearbeitet. – noreabu

+0

sagt 0 Zellen wären auf meinem Trockenlauf geändert worden. :( – underthegun

Verwandte Themen