2017-07-14 74 views
1

我知道在PHP中使用explode()函數很容易在兩個斜線之間提取字符串。如果該字符串是這樣的:如何使用preg_match_all()匹配兩個已知點之間的子串?

localhost/used_cars/search/mk_honda/md_city/mk_toyota 

我想mk_後提取串起來,直到像斜線:hondatoyota

這裏是我的代碼:

$input = 'localhost/used_cars/search/mk_honda/md_city/mk_toyota'; 
preg_match('#/mk_([^/]*)/#', $input, $matches); 
echo $matches[1]; 

的代碼只從mk_honda提取honda但爲什麼它沒有得到來自mk_toyotatoyota

回答

1

首先,你不使用preg_match_all,第二是沒有/在第二件事toyota所以它不匹配結束後,將其刪除:

preg_match_all('#/mk_([^/]*)#', $input, $matches); 
print_r($matches[1]); 
相關問題