2010-04-06 94 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

相关问题