2012-10-14 160 views
0

我怎樣才能從這個字符串中提取4?提取部分字符串?

$string = "Rank_1:1:4"; 

我試圖從谷歌服務器獲取的PageRank,以及最後的值(4)是實際的PageRank。

回答

6

嘗試

$string = "Rank_1:1:4"; 
$data = explode(':',$string); 
echo end($data); 

編輯

按@MichaelHampton,如果他們以後添加更多的字段,然後如下

$string = "Rank_1:1:4"; 
$data = explode(':',$string); 
echo $data[2]; 
2

PHP已經可以使用這麼多的字符串函數使用。 ...

變量

$find = ":"; 
$string = "Rank_1:1:4"; 

使用substr

echo substr($string, strrpos($string, $find) + 1); 

使用strrchr

echo ltrim(strrchr($string, $find),$find); 
+1

+1這實際上是答案OP的問題。 – budwiser

+2

當字段長度是兩位數時(這可能是),這會中斷。 –

+0

@邁克爾漢普頓的OP說蘭德..排名是0 - 5星 – Baba

0
$pattern = '/:\d+$/'; 
preg_match($pattern, $string, $matches); 
$rank = substr($matches[0],1); 
+0

誰減去正確答案? –

+0

這太複雜了。它可能在今天工作,但它很難理解,而且如果有一個額外的領域它會打破。 –

+0

邁克爾我恭敬地不同意。他問最後的價值,這將始終提供這一點,並且對於任何知道正則表達式的人都很容易理解。 –