2013-10-16 75 views
0

嘿,我过滤的字符串,并希望它去的:PHP Preg匹配后面跟一个字母组合的数字?

512MBGDDR5videogeheugen 

要:

512MB 

所以,我想PHP预浸料代替,这样做,:

$filterString = preg_replace("/[^0-9]+(KB|MB|GB)/", "", $string); 

不任何人都知道解决这个问题的方法? 感谢回复!

回答

3

而不是取代你可以得到你这样的比赛。

preg_match("/^([0-9]+(KB|MB|GB))/", $string, $results); 
$filterString = $results[0]; 
+0

表达也被简化为'/ ^([0-9] + [ KMG] B)/' – Sammitch

+0

@Sammitch可以,但它给你几乎没有:) –

+0

这太棒了!没想到用preg_match解决它! –

0

实际上,我不在家,所以我尝试了JavaScript的正则表达式,但我认为它应该工作:

$filtered = preg_replace('^([0-9]+(KB|MB|GB))(.+)$','$1',$string) 
相关问题