2016-02-05 96 views
1

我有一個字符串,我想只得到數字女巫之間5和7圖表。 這裏我的問題:PHP preg_replace only numbers

$string = "Test 1 97779 test"; 
if(strlen(preg_replace("/[^0-9]/", "", $string)) >= 5 && strlen(preg_replace("/[^0-9]/", "", $parts[7])) <= 7) { 
    $var = preg_replace("/[^\d-]+/", "", $string); 
} 

結果爲:19779,但我只想要97779. 如果有人有任何建議,我會很高興。提前致謝。

回答

3

你的朋友是preg_match

if(preg_match('/\b\d{5,7}\b/', $str, $out)) 
    $var = $out[0]; 
  • \b匹配5至7位數\d

See demo at eval.in

+0

上帝保佑你們之間的word boundary

  • \d{5,7},我會送你啤酒!謝謝你,你太棒了! :) – diank

  • +0

    @diank乾杯! :D –

    +0

    一個小問題,如果我可以得到$ string =「Tes97779 test」; – diank