2015-04-14 39 views
0

我正在進行大量站點遷移,其中有成千上萬的內部鏈接需要更改爲新的URL。我正在尋找的是一個正則表達式,我可以通過URL的最後部分(即index.html),並且它找到了與所有子文件夾等完整的特定鏈接,以便我可以將其替換爲數據庫與我的新的完全不同的URL。在具有正則表達式的URL中匹配特定文件名

所以,例如我有一個看起來像這樣的舊網址:,

http://example.com/old-folder-name/filename.html

在某些情況下,我也可能有一個網址,2 3,4子文件夾:

http://example.com/1/2/3/4/filename.html

我需要只搜索文件名並返回整個網址,以便我可以在數據庫中替換它。

我對正則表達式毫無用處。我可以很容易地匹配文件名,但我無法弄清楚如何搜索文件名並選擇整個URL準備替換。

+1

有這個問題的答案如何使匹配URL的正則表達式很多問題。取其中一個,然後將其更改爲以'/ filename.html'結尾。 – Barmar

回答

1

對於錯綜複雜的URI匹配,有很多正則表達式,但是這會捕獲以「http」開頭並以正在搜索的「filename.html」結尾的URL。

/(http.+filename\.html)/gi 

測試:https://regex101.com/

+0

這在測試工具中完美工作,但由於某種原因,WordPress的正則表達式插件都無法找到匹配項。我會將它標記爲答案,因爲它確實有效。 – Ian

+0

Wordpress,正則表達式插件...這是新的信息。你在使用哪一個? – Drakes

+0

我嘗試了Broken Link Checker插件,它有一個正則表達式選項,還有搜索正則表達式(https://wordpress.org/plugins/search-regex/)。該模式在每個模式中都沒有返回結果。 – Ian