2010-04-06 96 views
2

我有無數的URL的一個WordPress博客我想從這個替代:URL正則表達式搜索和替換的MySQL(在WordPress)

http://www.oldwebsite.co.il/name/ *** ASP

爲此:

http://www.newwebsite.com/?p= ***

例如,從這個:

http://oldwebsite.co.il/name/65971.asp

要這樣:

http://www.newwebsite.com/?p=65971

我相信下面的插件: http://urbangiraffe.com/plugins/search-regex/ 將與正則表達式,但我正在尋找這裏使用正確的正則表達式。

我發現this stackoverflow thread有類似的任務,但由於我對正則表達式不太熟悉,所以我希望得到幫助,所以我不會搞砸任何東西。

感謝,

塔爾

回答

2

搜索正則表達式:

http://oldwebsite\.co\.il/name/(\d+)\.asp 

,並替換:

http://www.newwebsite.com/?p=$1 

在PHP:

$after = preg_replace('%http://oldwebsite\.co\.il/name/(\d+)\.asp%', 'http://www.newwebsite.com/?p=$1', $before); 
+0

您可能需要'http://(?:www \。)?oldwebsite'。 – Kobi 2010-04-06 09:07:25

+0

你必須逃避'反斜槓和正斜槓'或將你的圖案包裹在| pattern-goes-here |使用||你不必轉義角色。 – 2010-04-06 09:39:58

+0

我的PHP代碼使用%符號來劃定正則表達式,所以我不必逃避正斜槓。使用|劃定正則表達式是一個壞主意,因爲|是一個正則表達元字符。 – 2010-04-08 02:36:23

相關問題