2015-09-04 93 views
0

我有以下URL結構:PHP的preg_replace URL不工作

http://website.com/wordpress/2012/04/permalink-string-string/

我想擺脫/2012/04

我嘗試這樣做:

$cont = preg_replace('http:\\/\\/website\\/.com\\/wordpress\\/[0-9]{4}\\/[0-9]{2}\\/', 'http://website.com/', $cont);

我加倍 - 反斜槓...

我嘗試了其他主題的樣本,沒有得到任何結果。只是空的$cont

謝謝!

回答

0

你有一個額外的/,沒有開始和結束斜槓,你從來沒有逃過這個點,這意味着它可以接受任何點的位置。然而,這裏的工作代碼:

$cont = "http://website.com/wordpress/2012/04/permalink-string-string/"; 
$cont = preg_replace('/http:\/\/website\.com\/wordpress\/[0-9]{4}\/[0-9]{2}\//', 'http://website.com/', $cont); 
print_r($cont); 

這將打印http://website.com/permalink-string-string/

+0

謝謝,但在您的示例代碼中,它的工作原理,但對於我的$ cont,這是一個很長的HTML代碼,它不會取代...實際上,它工作! – tibi

+0

!謝謝! – tibi

0

你的正則表達式也許可以簡化一點用式斷言

​​

這樣保管的一切,直至最後正斜槓的實例。