2012-12-29 104 views
0

我有以下字符串。使用preg_replace保留一部分字符串與php

http://www.sample.com/profile/272353.html 

我想使用preg_replace來保留這部分字符串。

profile/272353.html 

字符串的第一部分發生變化,所以我只想確保離開strng的那部分。

我是新來的模式,我仍然沒有得到它,所以任何幫助將不勝感激。

+0

哪裏'的preg_replace()'適應這一切?有很多方法可以做到這一點.. –

+0

正如@DavidHarris所說,使用'parse_url'。正則表達式不是一個魔術棒,你應該在每一個與字符串有關的編程問題上揮動。 –

回答

1

使用parse_url(...)

php > var_dump(parse_url('http://www.sample.com/profile/272353.html')); 
array(3) { 
    ["scheme"]=> 
    string(4) "http" 
    ["host"]=> 
    string(14) "www.sample.com" 
    ["path"]=> 
    string(22) "/profile/272353.html" 
} 
php > 
+0

好吧,就像我說的,我是新的,所以我試圖以任何方式來解決這個問題。感謝你分解url的功能,但是如果不是一個格式良好的URL或者只是URL的一部分,我實際上首先嚐試了,而且我得到的字符串有時不是url。我之所以想要使用preg_replace它的唯一原因是因爲我有一個函數用於通過使用preg_replace函數來保留字符串中的數字。我不知道我是否正確地做,但它的工作原理。但任何想法如何完成將非常感激。 – d1a8lo24

0

好,回答了一個問題,問...

$modified = preg_replace("/.*([^\/]+\/[^\/]+$)/", $1, $string); 
相關問題